apache doris介绍(ApacheDoris高级特性快速入门)
Doris(原百度 Palo)是一款基于大规模并行处理技术的分布式 SQL 数据库,由百度在 2017 年开源,2018 年 8 月进入 Apache 孵化器。Doris是基于MPP架构的OLAP引擎,主要整合了Google Mesa(数据模型)、Apache Impala(MPP Query Engine)和Apache ORCFile (存储格式,编码和压缩)的技术。
Doris可以满足企业级用户的多种分析需求,包括OLAP多维分析,定制报表,实时数据分析,Ad-hoc数据分析等。
下面罗列 Doris 一些常用的高级特性,帮助用户对 Doris 有一个更全面的了解。
一、关系表和分区分桶
在 Doris 中,用户数据是以二维关系表的方式存储的。并且基于 Doris 的 Shard-Nothing 分布式架构,一张表的数据会根据用户指定的分区和分桶方式,水平切分成多个数据分片(Tablet),存储在不同节点上。
二、数据模型Doris 的一大特点之一是同时支持快速的明细数据查询和聚合数据查询。用户可以在建表时指定表的数据模型,以适应不同的应用场景。
Doris 目前支持三种数据模型,分别是:1)Duplicate 明细模型。2)Aggregate 聚合模型。3)Unique 主键唯一模型。
三、物化视图物化视图是一种以空间换时间的数据分析加速技术。Doris 支持在基础表之上建立物化视图。比如可以在明细数据模型的表上建立基于部分列的聚合视图,这样可以同时满足对明细数据和聚合数据的快速查询。
同时,Doris 能够自动保证物化视图和基础表的数据一致性,并且在查询时自动匹配合适的物化视图,极大降低用户的数据维护成本,为用户提供一个一致且透明的查询加速体验。
四、表结构变更Doris 支持在线的表结构变更操作。这些操作包括增加、删除、重排列,修改列类型,添加、删除分区,重命名库、表、分区等。所有这些操作都不会影响当前正在执行的导入或查询操作,保证用户能够在生产环境中平滑地进行表结构的变更。
五、多种导入方式Doris 本身支持多种导入方式,如通过 HTTP 协议进行本地数据的导入,或者通过 Routine Load 功能订阅 Kafka 中的消息。也可以通过 INSERT 语句直接进行近实时的数据导入。
六、数据删除和更新
Doris 支持通过两种方式对已导入的数据进行删除。一种是通过 DELETE FROM 语句,指定 WHERE 条件对数据进行删除。这种方式比较通用,适合频率较低的定时删除任务。
另一种删除方式仅针对 Unique 主键唯一模型,通过导入数据的方式将需要删除的主键行数据进行导入。Doris 内部会通过删除标记位对数据进行最终的物理删除。这种删除方式适合以实时的方式对数据进行删除。
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com