- Cluster
- Distributed computing. Cluster nodes are classified into coordinator role and executor role.
- Distributed meta data storage. Support creating and dropping meta data of tables.
- Coordinators support SQL parsing and optimizing, job creating and distributing, result collecting.
- Executors support task executing.
- Data store
- Using RocksDB storage.
- Encoding and decoding in Apache Avro format.
- Table partitioning by hash of primary columns.
- SQL parsing and executing
- Create (
CREATE TABLE
) and drop table (DROP TABLE
). - Supporting common SQL data types: TINYINT, INT, BIGINT, CHAR, VARCHAR, FLOAT, DOUBLE, BOOLEAN
- Insert into (
INSERT INTO TABLE
) and delete from (DELETE FROM TABLE
) table. - Query table (
SELECT
). - Support filtering and projecting in query.
- Support expressions in filter conditions and projecting columns.
- Support point query.
- Create (
- User interface
- Command line interface (CLI)
- Support SQL input and executing in CLI.
- Output query results in table format in CLI.
- Output time consumed by query in CLI.