Architecture
Board’s Client-Master-Server (CMS) is a three-tier architecture:
- BoardClient is the front-end user program
- BoardServer is the multi-dimensional database engine
- BoardMaster is a middle layer between BoardClient and BoardServer.
BoardClient or Internet Browser is the
front-end application development environment
and data-presentation layer.
BoardServer is the multi-dimensional database
engine:
- Carries out all processing on the Board databases.
- Executes all aggregations, calculations,
selections, procedures.
- Connects to the source systems: RDBMS,
ERPs and any other data source, performs
data imports and transformation (ETL)
- Applies security rules: restrictions
which filter data depending on the user
role
BoardMaster is a middle layer between
BoardClient and BoardServer.
- Handles incoming user requests from BoardClient
users and from Internet browser users
- Provides dynamic load-balancing across multiple BoardServers.
- Performs user authentication
- Applies a functional security layer: privilege settings defined
on user accounts.
The ROAR protocol
Communications between the three components uses a proprietary protocol
named ROAR (Remote Object Access & Replication) that provides extremely
high communications performance. ROAR is a data convention format that
uses the TCP/IP network protocol in communications between any two Board
programs. However, it is not a network protocol and does not require additional
installation.
The ROAR protocol transfers data from the client’s memory (BoardClient)
to the server’s memory (BoardServer) through a highly compressed
binary stream. This technology is fundamentally more efficient compared
to the verbose syntax of XML or HTML and their need for interpretation.
The data traffic generated in the dialog between BoardClient and BoardMaster
is extremely low thanks to the specialized ROAR protocol, which was designed
with performance as the primary objective.
The BoardClient computers may therefore be remote
to the BoardMaster, connected through a low bandwidth
network such as a WAN or the Internet. Due to the
low network traffic, the response times are low.
This setup not only allows remote access to large
volumes of data, which is not feasible with HTML
or other non-optimized protocols, but also enables
large numbers of simultaneous users since each
user requires very little bandwidth.
|