官术网_书友最值得收藏!

Redash architecture

Redash is a single-page web app, with JS frontend and backend.

Originally having the frontend written in AngularJS, since V5, it's in transition to React:

 

Redash itself is written in Python.

The UI (frontend) is AngularJS, which is responsible for all the visualizations, dashboards, and the query editor. The regular user interacts with this the most.

The server (backend) is a Flask App, which uses the Celery Distributed Task Queue as its task worker engine (Celery workers are responsible for query execution).

The server handles the actual query execution requests on various Data Sources, such as dashboard refresh requests, both from the frontend and from API calls (for example, slack bots, advanced user's webhooks, and so on).

The PostgreSQL database is used to store all the necessary application metadata and configurations (users/groups/datasource definitions/queries/dashboards).

Redis in the memory datastore serves as both the Celery Message Broker (Celery requires a message broker service to send and receive messages).

主站蜘蛛池模板: 巫溪县| 孟连| 贞丰县| 吉木乃县| 松原市| 依兰县| 章丘市| 即墨市| 舟山市| 来安县| 沙河市| 皋兰县| 衡山县| 永新县| 内江市| 顺昌县| 文水县| 太康县| 朔州市| 九寨沟县| 鹤山市| 大田县| 华池县| 泰和县| 潼南县| 明星| 商河县| 安岳县| 林芝县| 达尔| 射洪县| 枣强县| 渝中区| 伽师县| 巴里| 德昌县| 临西县| 洮南市| 娄烦县| 万全县| 镶黄旗|