wycharry / incubator-doris

Apache Doris (Incubating)

Home Page:http://doris.incubator.apache.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Apache Doris (incubating)

Doris is an MPP-based interactive SQL data warehousing for reporting and analysis. It open-sourced by Baidu.

1. License

Apache License, Version 2.0

2. Technology

Doris mainly integrates the technology of Google Mesa and Apache Impala, and it based on a column-oriented storage engine and can communicate by MySQL client.

3. User cases

Doris not only provides high concurrent low latency point query performance, but also provides high throughput queries of ad-hoc analysis.

Doris not only provides batch data loading, but also provides near real-time mini-batch data loading.

Doris also provides high availability, reliability, fault tolerance, and scalability.

The simplicity (of developing, deploying and using) and meeting many data serving requirements in single system are the main features of Doris (refer to Overview).

4. Compile and install

Currently support Docker environment and Linux OS: Docker (Linux / Windows / Mac), Ubuntu and CentOS.

4.1 For Docker

Step 1: Install Docker

Take CentOS as an example:

yum -y install docker-io
service docker start

Step 2: Create Docker image for complilation

Given your work space is /my/workspace, and you can download Doris docker file as following:

wget https://github.com/apache/incubator-doris/blob/master/docker/Dockerfile -O /my/workspace/Dockerfile

Now build your image, and it may take a long time (40min to 1 hour)

cd /my/workspace && docker build -t doris-dev:v1.0 .

Step 3: Compile and install Doris

Clone Doris source:

git clone https://github.com/apache/incubator-doris.git /path/to/incubator-doris/

Start a container named doris-dev-test, and map /path/to/incubator-doris/ to /var/local/incubator-doris/ in container.

docker run -it --name doris-dev-test -v /path/to/incubator-doris/:/var/local/incubator-doris/ doris-dev:v1.0

Compile Doris source:

sh build.sh 

After successfully building, it will install binary files in the directory output/.

4.2 For Linux

Prerequisites

GCC 5.3.1+, Oracle JDK 1.8+, Python 2.7+, Apache Maven 3.5+, CMake 3.4.3+

  • For Ubuntu:
sudo apt-get install g++ ant cmake zip byacc flex automake libtool binutils-dev libiberty-dev bison python2.7 libncurses5-dev
sudo updatedb
  • For CentOS:
sudo yum install gcc-c++ libstdc++-static ant cmake byacc flex automake libtool binutils-devel bison ncurses-devel
sudo updatedb

If your GCC version is less than 5.3.1, you can run:

sudo yum install devtoolset-4-toolchain -y

and then, set the path of gcc (e.g /opt/rh/devtoolset-4/root/usr/bin) to the environment variabl PATH.

Compile and install

Run following script, it will compile thirdparty libraries and build whole Doris.

sh build.sh

After successfully building, it will install binary files in the directory output/.

5. Reporting Issues

If you find any bugs, please file a GitHub issue.

6. Links

About

Apache Doris (Incubating)

http://doris.incubator.apache.org

License:Apache License 2.0


Languages

Language:C++ 54.2%Language:Java 40.9%Language:C 2.3%Language:Thrift 1.0%Language:Python 0.7%Language:CMake 0.4%Language:Shell 0.2%Language:Lex 0.2%Language:Makefile 0.0%Language:CSS 0.0%Language:Dockerfile 0.0%Language:JavaScript 0.0%