Apache Doris (incubating) 基于 MPP 的交互式 SQL 数据仓库 项目简介
代码:https://github.com/apache/incubator-doris官网:http://doris.apache.orgApache Doris (incubating)(原Palo)是一款百度大数据团队自主研发的MPP数据库,其功能和性能已达到或超过国内外同类产品。自2017年在GitHub上开源以来,先后被小米、美团、链家、品友互动、瓜子、搜狐等十多家互联网公司使用。同时,Doris 在公司内部署超过1000台机器,服务超200业务,单业务最大容量500TB;在百度云上,Doris作为大数据分析工具中的数据仓库有着广泛的用户。2018年7月,Doris获得了全球著名开源社区Apache基金会的认可,通过投票成功进入Apache孵化器。之后将通过社区的力量,提供更加稳定、高效、易用的数据仓库服务。平台架构Doris 的定位是面向在线报表和分析的数据仓库系统,可以对标于商业的MPP 数据仓库系统,比如Greenplum、Vertica、Teradata 等。Doris架构如下:Doris 主要基于C++ 和Java 开发,集成了Google Mesa 和Apache Impala 的技术。将Mesa 与Impala 进行组合的基础上,Doris 被设计为一个不依赖于其他系统的简单且单一紧密耦合的系统,并实现了MySQL协议,使得用户可以像使用MySQL 一样无门槛的过渡到Doris,包括各种报表应用都可以通过MySQL协议连接Doris,同时获得高并发低延迟点查询性能,而且还能进行高吞吐量的即席分析查询。Doris 不仅提供大批量数据加载,而且还提供近乎实时的小批量,甚至流数据加载。此外Doris还具备高可用性,可靠性,容错性和可扩展性。特点优势Doris博采众长,形成了自己独特的优势:1)完全兼容MySQL协议;2)采用列式存储、对数据以高压缩比进行压缩存储、向量化执行等先进技术,因此获得了极高的查询效率;3)支持多种存储模型:同时支持类似于Mesa将列分为Key和Value的存储模型,同时支持Unique Key和Dup Key的存储模型。用户可以根据自己的业务场景,选用不同的存储模型;4)支持两层分区;5)支持多种数据导入方式;6)安全资源隔离扩容缩容;7)备份和恢复;8)支持web监控和管理;适用场景Doris适用场景主要包括:1)高并发的点查询场景;2)高吞吐的即席查询3)BI报表分析4)实时查询更广泛地,Doris 支持本地文件、实时数据和HDFS文件的导入,通过兼容MySQL协议,用户可以将原来通过各种主流BI工具和可视化平台业务切换到Doris,改为直接连接Doris集群。