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: