High-level Architecture
RATH is constructed up of three connected technical components, namely Data Service, RATH Client and RATH Service.
-
Data Service is defined as the part that handles the data processing task for the whole RATH system. Practically speaking, data services process your local file such as a CSV or JSON file or connect to an established database via the connector.
-
RATH Client coordinates the Data Services and RATH services. RATH Client deals with multiple elements that matter to the end user. In concrete terms, RATH Client will: interact with users via React.js frameworks
- deals with data visualization frameworks i.e. Vega.
- delivers features to users. For example, Auto Exploration, Semi-auto Exploration and Data Painter.
- connects different modules. A module is defined as features that could either be plugged in as a part of RATH, or working independently. For example, Graphic Walker.
- For the heavy-lifting tasks such as data cleaning, sampling and data visualization, RATH typically forwards the workload to webworker.
-
RATH Service is the powerhouse behind RATH. The Cloud-based RATH algorithm processes the data and does the magic.
The high-level architecture of RATH could be illustrated as follows: