Server
Server offre una soluzione di analisi scalabile basata su server che consente di creare, pubblicare e condividere applicazioni analitiche, programmare e automatizzare i lavori del flusso di lavoro, creare, gestire e condividere le connessioni dati, nonché controllare l'accesso ai dati.
Componenti di Server
Server include questi componenti principali.
Designer è un'applicazione software di Windows che offre un'intuitiva interfaccia utente a trascinamento per creare processi ripetibili di flussi di lavoro. Puoi trascinare gli strumenti da una casella a un'area di disegno, collegarli e modificarne le proprietà per sviluppare flussi di lavoro, app e macro. Puoi utilizzare questi flussi di lavoro per combinare e arricchire i dati provenienti da origini diverse, eseguire analisi avanzate e generare velocemente risultati condivisibili.
In una distribuzione Server, gli utenti di Designer possono pubblicare i flussi di lavoro, le app e le macro nell'interfaccia utente di Server, dove altri utenti potranno accedervi, eseguirli e scaricarli.
Nell'ambito della distribuzione Server, Designer include anche un'interfaccia di pianificazione, che consente agli utenti di programmare l'esecuzione dei flussi di lavoro a un'ora specifica o a intervalli ricorrenti.
Alteryx Server è un'applicazione cloud o self-hosted per la pubblicazione, condivisione ed esecuzione dei flussi di lavoro. In una distribuzione Server, gli utenti possono pubblicare flussi di lavoro, macro e app di Designer in una versione privata di Server ospitata sull'infrastruttura server dell'azienda. Dopo la pubblicazione, gli altri utenti Server potranno eseguire i flussi di lavoro e visualizzare i risultati. Alteryx ha anche offerto una Gallery pubblica che è stata deprecata a dicembre 2021. Ora puoi utilizzare la community di Alteryx per condividere strumenti e flussi di lavoro.
Il controller gestisce le impostazioni di Server e delega i flussi di lavoro da eseguire ai worker.
Il controller include il servizio Alteryx come frammento di codice principale. Il servizio ti consente di implementare l'engine, che elabora i flussi di lavoro su più server fornendo un'architettura scalabile per la pianificazione, la gestione e l'esecuzione dei flussi di lavoro analitici. Il servizio utilizza un'architettura controller-worker in cui un server funge da controller e gestisce la coda dei lavori, mentre gli altri fungono da worker che eseguono le attività. Se distribuisci Server su più server, puoi abilitare solo un computer come controller. Il servizio si basa sul livello di persistenza per archiviare le informazioni critiche per il suo funzionamento. Il servizio, inoltre, invia il contenuto a Server quando richiesto.
I worker sono responsabili dell'esecuzione dei flussi di lavoro. Quando il controller delega un'attività a un worker, quest'ultimo la esegue e produce l'output. In una distribuzione Server deve essere presente almeno un computer che funge da worker.
I worker contengono un'istanza di Alteryx Engine. L'engine supporta collegamenti diretti a varie origini di dati. L'engine accede ai dati di input e li elabora in memoria durante l'esecuzione del flusso di lavoro. Quando l'elaborazione supera i limiti di memoria, l'engine utilizza i file temporanei sul disco e li elimina al termine dell'elaborazione.
Engine può essere completamente autonomo in una distribuzione di Designer, ridimensionato in un'organizzazione tramite Server o distribuito nel cloud in Server.
Engine si integra con R. Il programma R viene utilizzato sia dal gruppo di strumenti basati su R sia dalle macro utilizzate per l'analisi predittiva.
Gli sviluppatori possono scrivere applicazioni che chiamano l'engine direttamente utilizzando l'interfaccia di programmazione dell'applicazione (API). Il software development kit (SDK) permette agli sviluppatori di aggiungere i programmi alla barra degli strumenti di Alteryx.
Il livello di persistenza, noto anche come database, memorizza i dati delle applicazioni e unisce tutti i componenti. Si tratta del record di gestione di Server. Il servizio si basa sul livello di persistenza per memorizzare le informazioni critiche per il suo funzionamento, come file di applicazione, coda dei processi e dati dei risultati.
Sono supportati due meccanismi di persistenza: SQLite e MongoDB. Per le distribuzioni locali e con utilizzo limitato, SQLite è adatto alla maggior parte delle esigenze di pianificazione. Per un utilizzo più intensivo o in caso di implementazione di Server, è necessario utilizzare MongoDB. Per MongoDB, puoi utilizzare la versione integrata o connetterti alla tua implementazione.