diff --git a/README.md b/README.md new file mode 100644 index 0000000000..5c919110da --- /dev/null +++ b/README.md @@ -0,0 +1,49 @@ +# DingoDB + +DingoDB is a real-time Hybrid Serving & Analytical Processing (HSAP) Database. It can execute high-frequency query and +upsert, interactive analysis, multi-dimensional analysis in extremely low latency. + +![](docs/architecture/images/dingo_stack.png) + +## Features + +1. Compliant with ANSI SQL + Based on the popular [Apache Calcite](https://calcite.apache.org/) SQL engine, DingoDB can parse, optimize and + execute standard SQL statement, and is capable to run part of TPC-H and TPC-DS (See [TPC](http://www.tpc.org/)) + queries. DingoDB is also compliant with JDBC and can be seamlessly integrated with web services, BI tools, etc. +2. Support high frequency write operation + By using the log structured key-value storage [RocksDB](https://rocksdb.org/), DingoDB support high frequency write + operation like INSERT, UPDATE, DELETE. +3. Support point query and multi-dimensional analysis simultaneously + DingoDB can store table data in both row-oriented and column-oriented format, providing capability of fast point + query and fast multi-dimensional analysis in low latency. +4. Easily integrated with streaming data and other DBMS's + By providing dedicated APIs for popular streaming data processing engine, + e.g. [Apache Flink](https://flink.apache.org/), DingoDB can easily accept data from them, and support more analysis + working or web serving that is not applicable to be done in stream. DingoDB can also access databases of many types, + using pluggable connectors for each of them. +5. Resilience for deployment and maintenance + DingoDB stores and processes data in a distributed manner with strong cluster and resource management functionality, + which make it easy to expand the capacity. + +## Developing DingoDB + +We recommend IntelliJ IDEA to develop the DingoDB codebase. Minimal requirements for an IDE are: + +* Support for Java +* Support for Gradle + +### IntelliJ IDEA + +The IntelliJ IDE supports Java and Gradle out of the box. Download it +at [IntelliJ IDEA website](https://www.jetbrains.com/idea/). + +## Documentation + +The documentation of Apache Flink is located on the +website: [https://dingodb.readthedocs.io](https://dingodb.readthedocs.io) +or in the `docs/` directory of the source code. + +## About + +DingoDB is an open source project licensed in **Apache License Version 2.0**. diff --git a/docs/architecture/images/dingo_stack.png b/docs/architecture/images/dingo_stack.png new file mode 100644 index 0000000000..4fe6e648ee Binary files /dev/null and b/docs/architecture/images/dingo_stack.png differ diff --git a/docs/overview.md b/docs/overview.md index 0e46ed5cd5..ad73b40f65 100644 --- a/docs/overview.md +++ b/docs/overview.md @@ -5,6 +5,8 @@ DingoDB is a real-time Hybrid Serving & Analytical Processing (HSAP) Database. It can execute high-frequency query and upsert, interactive analysis, multi-dimensional analysis in extremely low latency. +![](./architecture/images/dingo_stack.png) + ## Features 1. Compliant with ANSI SQL @@ -15,8 +17,7 @@ upsert, interactive analysis, multi-dimensional analysis in extremely low latenc By using the log structured key-value storage [RocksDB](https://rocksdb.org/), DingoDB support high frequency write operation like INSERT, UPDATE, DELETE. 3. Support point query and multi-dimensional analysis simultaneously - DingoDB can store table data in both row-oriented and column-oriented format, providing capability of fast point - query and fast multi-dimensional analysis in low latency. + DingoDB own capability to execute high concurrent point query, upsert and fast multi-dimensional analysis in low latency. 4. Easily integrated with streaming data and other DBMS's By providing dedicated APIs for popular streaming data processing engine, e.g. [Apache Flink](https://flink.apache.org/), DingoDB can easily accept data from them, and support more analysis