Architettura
BOARD è basato su un'architettura a tre livelli: Client, Master, Server (CMS)
- BoardClient è l'interfaccia utente
- BoardServer è il database multidimensionale
- BoardMaster è una strato intermedio, tra il Client ed il Server
BoardClient o un Internet Browser
sono i due ambienti di front-end utilizzati per presentare i dati agli utenti e per costruire le applicazioni
BoardServer è il motore del database multidimensionale, che:
- Esegue tutti i processi sui database BOARD
- Porta a termine tutte le operazioni di aggregazione, calcolo, selezione
- Permette la connessione alle diverse fonti dati: RDBMS, ERP o qualsiasi altra, svolgendo le funzioni di estrazione, trasformazione e importazione dei dati (ETL)
- Applica le regole di sicurezza, regolando l'accesso ai dati a seconda del ruolo dei diversi utenti
BoardMaster è uno strato intermedio tra BoardClient e BoardServer, che:
- Gestisce le richieste utente provenienti dai BoardClient o dagli Internet browser
- Amministra il load-balancing tra diversi BoardServers
- Effettua l'autenticazione degli utenti
- Applica le regole di sicurezza funzionale, attribuendo i privilegi definiti ai diversi utenti.
Il protocollo ROAR
La comunicazione tra i tre componenti avviene tramite un
protocollo denominato ROAR (Remote Object Access & Replication)
che garantisce un elevato livello di performance.
Il ROAR è una convenzione che permette un'efficiente
trasferimento dei diversi formati di dati, poggiandosi
interamente sul protocollo di rete TCP/IP. Non essendo un
protocollo di rete, il ROAR non richiede alcuna installazione,
ma è nativamente integrato in BOARD.
Il protocollo ROAR permette di trasferire dinamicamente
oggetti tra la memoria del client (BoardClient) e la memoria
del server (BoardServer) mediante stream binari compressi.
Tale tecnologia risulta estremamente efficiente se comparata
con le verbose sintassi HTML o XML e con la loro conseguente
necessità di interpretazione. Il traffico derivante dal dialogo
tra BoardClient e BoardMaster risulta invece estremamente
basso (centinaia di volte più compresso), grazie all'assoluta
specializzazione del protocollo ROAR che è stato ideato avendo
le performance come obiettivo finale.
I computer sui quali si trovano i BoardClient e i BoardMaster
possono quindi essere geograficamente distanti tra loro,
connessi tramite collegamenti a bassa banda passante come reti
WAN o reti Intranet e Internet.
Riducendo al minimo il traffico di rete il protocollo ROAR, non
solo abbassa i tempi di risposta complessivi, inclusivi del
tempo di trasferimento del flusso di dati, ma consente anche ad
elevati numeri di utenti di accedere contemporaneamente a grandi
volumi di dati da postazioni remote; azione di difficile
attuazione con un protocollo HTML o un altro protocollo non
ottimizzato, per la grande quantità di banda necessaria.
|