Come i dati fluiscono allinterno di un sistema informatico
Concetto
di Dataflow Computing
Questo articolo riguarda l'ingegneria del software. Per il flusso di dati all'interno di una rete di computer, vedere Flusso di traffico (rete di computer). Per la rappresentazione grafica del flusso di dati all'interno di un sistema informativo, vedere diagramma di flusso dei dati. Per l'architettura hardware, vedere Architettura del flusso di dati. Per l'azienda con sede a Dubai, vedere DataFlow Group.
In informatica, il flusso di dati è un concetto ampio, che ha vari significati a seconda dell'applicazione e del contesto. Nel contesto dell'architettura del software, il flusso di dati si riferisce all'elaborazione del flusso o alla programmazione reattiva.
Il
calcolo del flusso di dati è un paradigma software basato sull'idea di rappresentare i calcoli come un grafo diretto, dove i nodi sono calcoli e i dati fluiscono lungo i bordi. [1] Il flusso di dati può anche essere chiamato elaborazione del flusso o programmazione reattiva. [2]
Sono stati utilizzati più linguaggi di elaborazione del flusso di dati/flussi di varie forme (vedere Elaborazione dei flussi). L'hardware del flusso di dati (vedi Architettura del flusso di dati) è un'alternativa alla classica architettura di von Neumann. L'esempio più ovvio di programmazione del flusso di dati è il sottoinsieme noto come programmazione reattiva con fogli di calcolo. Quando un utente immette nuovi valori, questi vengono immediatamente trasmessi all'"attore" logico o alla formula di calcolo successiva.
I flussi di dati distribuiti sono stati proposti anche come astrazione di programmazione che cattura le dinamiche dei multiprotocolli distribuiti. La prospettiva incentrata sui dati caratteristica della programmazione del flusso di dati promuove specifiche funzionali di alto livello e semplifica il ragionamento formale sui componenti del sistema.
Architettura hardware
Articolo principale: Architettura del flusso di dati
Le architetture hardware per il flusso di dati erano un Argomento principale nella ricerca sull'architettura dei computer negli anni '70 e nei primi anni '80. Jack Dennis del Massachusetts Institute of Technology (MIT) è stato il pioniere nel campo delle architetture statiche del flusso di dati. Le progettazioni che utilizzano indirizzi di memoria convenzionali come tag di dipendenza dai dati sono denominate macchine per flussi di dati statici. Queste macchine non consentivano l'esecuzione simultanea di più istanze delle stesse routine perché i semplici tag non potevano distinguerle. I progetti che utilizzano la memoria indirizzabile al contenuto sono chiamati macchine a flusso di dati dinamico da Arvind. Usano i tag in memoria per facilitare il parallelismo. I dati fluiscono nel computer attraverso i componenti del computer. Viene inserito dai dispositivi di input e può uscire attraverso i dispositivi di output (stampante, ecc.).
Concorrenza
Una rete di flussi di dati è una rete di processi o automi in esecuzione simultanea in grado di comunicare inviando dati su canali (Vedi Passaggio di messaggi.)
Nelle reti di processo di Kahn, che prendono il nome da Gilles Kahn, i processi sono determinati . Ciò implica che ogni processo determinato calcola una funzione continua da flussi di input a flussi di output e che una rete di processi determinati è essa stessa determinata, calcolando quindi una funzione continua. Ciò implica che il comportamento di tali reti può essere descritto da un insieme di equazioni ricorsive, che possono essere risolte utilizzando la teoria del punto fisso. Il movimento e la trasformazione dei dati è rappresentato da una serie di forme e linee.
Altri significati Flusso
didati può anche riferirsi a:
- Flusso di dati di Power BI, un'implementazione di Power Query nel cloud utilizzata per trasformare i dati di origine in set di dati di Power BI puliti che devono essere utilizzati dagli sviluppatori di report di Power BI tramite Microsoft Common Data Service (precedentemente chiamato Microsoft Common Data Service).
- Google Cloud Dataflow, un servizio completamente gestito per l'esecuzione di pipeline Apache Beam all'interno dell'ecosistema Google Cloud Platform.
Vedi anche
La definizione del dizionario di flusso di dati su Wikizionario