
Apache Doris
文章平均质量分 82
Apache Doris使用和原理解析
Bulut0907
大数据、机器学习、编程语言、IT相关技术分享, 喜欢请关注、点赞、收藏哦!
展开
-
使用Prometheus和Grafana监控Apache Doris
Doris的FE和BE通过http端口metrics路径,将监控数据暴露出来,以key-value的文本形式对外展现,每个key还可能有不同的Label加以区分。Prometheus再从Doris拉取监控数据。原创 2022-12-26 08:35:57 · 2520 阅读 · 0 评论 -
Apache Doris的Bitmap索引和BloomFilter索引使用
bitmap index是一种位图索引,是一种快速数据结构,能够加快查询速度是一种多哈希函数映射的快速查找算法,本质上是一种位图结构。通常应用在一些需要快速判断某个元素是否属于集合,但是并不严格要求100%正确的场合,因为BloomFilter会告诉调用者一个元素存在或不存在一个集合。但存在不一定准确。原创 2022-09-23 08:55:27 · 999 阅读 · 0 评论 -
Apache Doris性能优化之Join Reorder和Doris Join调优原则
Join Reorder功能可以通过代价模型自动帮助调整SQL中Join的顺序,先让大表和小表进行过滤,这样能过滤掉大表中大部分的数据。以便获得最优的Join效率。可通过会话变量开启,默认是关闭的mysql>mysql>可以通过查看join的先后关系。原创 2022-09-19 09:25:24 · 1260 阅读 · 0 评论 -
Apache Doris的性能优化之Runtime Filter
当进行时,tb2的数据非常小,将tb2数据经过计算得到一个过滤条件,发送到tb1所在的节点,利用索引的功能,直接对tb1的数据进行过滤。来减少扫描的数据量,避免不必要的I/O 和网络传输,从而加速查询。原创 2022-09-16 09:32:10 · 1733 阅读 · 0 评论 -
Apache Doris的Bucket Shuffle Join实现
两个表进行join时,让右表根据左边的数据分布,进行数据的shuffle,再进行join。减少跨节点的数据传输。加速查询。原创 2022-08-29 09:24:37 · 780 阅读 · 0 评论 -
Apache Doris的Colocation join本地join实现
让两个表的join,能够分布式的在本地完成,而不用跨节点数据传输。加速查询。原创 2022-08-17 09:31:06 · 1004 阅读 · 2 评论 -
Apache Doris物化视图使用详解
通过定义一段select查询语句,从base表进行数据查询,形成一张物化视图表。物化视图表的数据独立于base表储存。对base表进行数据的插入,更新、删除也会原子性的同步到物化视图表。进行数据查询时,Doris引擎会自动以最优方式进行查询,可能查询base表,可能查询物化视图表。...原创 2022-08-16 09:41:27 · 2859 阅读 · 0 评论 -
Apache Doris以Routine Load方式流式的导入Kafka数据
如果schema change完成后,列映射关系无法匹配,则会导致作业的错误数据激增,最终导致作业暂停。如果routine load正在向一个partition导入数据,则不能进行该partition的删除,需等向该partition导入数据的任务完成活暂停routine load,才能删除该partition。:FE配置项,默认为5,可以运行时修改。Doris重新调度时,只会在5分钟这个周期内,最多尝试3次. 如果3次都失败则锁定当前任务,后续不再进行调度。:FE配置项,默认为5,可以运行时修改。...原创 2022-08-16 09:39:39 · 3305 阅读 · 3 评论 -
Apache Doris的数据导入insert、数据删除delete
delete是一个同步的操作。需要指定表、分区、删除的条件来筛选要删除的数据,并将会同时删除base表和rollup表的数据。Insert Into命令包含以下两种。其中with label是可选的,默认会自动生成。原创 2022-08-15 09:10:37 · 4560 阅读 · 0 评论 -
Apache Doris 1.1.1版本 MPP数据库安装
前面的步骤可以参考【安装第一个BE】,但注意be/conf/be.conf中的priority_networks参数,如在doris2上安装该参数就是。访问http://doris1:7030,输入用户名:root,密码为空(如果修改了doris的root用户密码,则为修改后的密码)。访问http://doris2:7030,输入用户名:root,密码为空(如果修改了doris的root用户密码,则为修改后的密码)。添加如下到/etc/profile,然后进行source使其生效。安装Java8,参考。..原创 2022-08-15 09:09:46 · 1057 阅读 · 0 评论 -
Apache Doris的架构讲解
用来扩展查询节点,同时起到元数据备份的作用。如果在发现集群压力非常大的情况下,需要去扩展整个查询的能力,那么可以加observer节点。封装了文件系统接口,提供Doris读取远端存储系统中文件的能力,包括HDFS、S3、BOS等。主要是用来达到元数据的高可用,保证单节点宕机的情况下,元数据能够实时地在线恢复,而不影响整个服务。Doris借助MySQL协议,用户使用任意MySQL的ODBC/JDBC以及MySQL的客户。数据的可靠性由BE保证,BE会对整个数据存储多副本或者是三副本。...原创 2022-08-11 09:24:07 · 828 阅读 · 0 评论 -
Apache Doris支持的数据类型详解
16字节高精度定点数,M 代表一共有多少个有效数字(precision,范围1 ~ 27),D 代表小数位有多少个数字(scale,范围0 ~ 9)。3字节,日期时间类型,取值范围是:[‘0000-01-01 00:00:00’, ‘9999-12-31 23:59:59’],打印的形式是’YYYY-MM-DD HH:MM:SS’:3字节,取值范围是:[‘0000-01-01’, ‘9999-12-31’], 默认的打印形式是’YYYY-MM-DD’变长字符串,M代表的是变长字符串的字节长度。...原创 2022-08-10 09:55:19 · 16076 阅读 · 0 评论 -
Apache Doris的Broker load数据导入使用
目录1. 使用场景2. 导入基本原理3. 导入基本语法4. 导入操作5. 导入结果6. 取消导入7. fe.conf参数配置1. 使用场景Broker load是一种异步导入方式,目前能从HDFS导入数据。导入数据量级别为百GB2. 导入基本原理用户在提交导入任务后,FE 会生成对应的Plan并根据目前BE的个数和文件的大小,将Plan分给多个BE执行,每个BE执行一部分导入数据。BE在执行的过程中会从Broker拉取数据,在对数据transform之后将数据导入系统。所有BE均完成导入,由FE最原创 2022-05-24 10:38:44 · 1660 阅读 · 0 评论 -
Apache Doris 0.14.0部署HDFS Broker服务
目录1. 编译2. HDFS Broker的部署1. 编译官方提供Docker环境编译、Centos\Ubuntu环境编译、ARM64平台编译,我们这里采样Docker环境编译下载Docker镜像[root@bigdata001 ~]#[root@bigdata001 ~]# docker pull apache/incubator-doris:build-env-1.2build-env-1.2: Pulling from apache/incubator-doris7a376117f479原创 2022-05-23 09:21:18 · 920 阅读 · 0 评论 -
Apache Doris使用Stream Load方式insert数据
目录1. python版本的demo1. python版本的demo import requests from requests.auth import HTTPBasicAuth url = 'http://192.168.8.112:7020/api/dataQualitySystem/test/_stream_load' doris_headers = { 'label': 'test_20211102_175301', 'forma原创 2022-05-16 09:14:31 · 2559 阅读 · 0 评论 -
Apache Doris的动态分区dynamic_partition
目录1. 背景2. 创建动态分区表3. 动态分区表属性说明4. 动态分区表属性的修改1. 背景表按date或datetime类型字段进行分区,对于新的数据,需要我们手动添加分区,和删除旧的分区,维护工作量太大。所以Apache Doris启动了一个后台进程,默认每隔1小时(由fe.conf的dynamic_partition_check_interval_seconds参数设置)根据当前的日期时间来添加分区和删除分区2. 创建动态分区表表创建于2021-11-05 22:30:00,星期五mysq原创 2022-01-10 15:20:44 · 6242 阅读 · 1 评论 -
Apache Doris数据分区Partition、数据分桶(distributed by)
目录1. 数据分区和分桶的关系2. 数据分区2.1 range分区1. 数据分区和分桶的关系先分区,再分桶。一个表不指定分区,默认只有一个分区一个Partition有多个数据分片Tablet。Tablet数据移动、复制操作的最小物理存储单元。Partition是数据的导入与删除的最小管理单位分区支持Range和List分区;分桶只支持Hash分桶2. 数据分区分区列必须为key列不论什么字段数据类型,建表时写分区值,都必须加引号2.1 range分区mysql> mysql原创 2021-12-13 14:27:29 · 12824 阅读 · 3 评论 -
Apache Doris的Rollup和前缀索引
目录1. Aggregate表(Uniq表同理)添加rollup2. Duplicate表添加rollup3. key和前缀索引的关系、查询命中前缀索引的规则3.1 key和前缀索引的关系3.2 查询命中前缀索引的规则1. Aggregate表(Uniq表同理)添加rollup添加rollupmysql> mysql> alter table table1 add rollup rollup_city(name, city_code, pv);Query OK, 0 rows af原创 2021-10-26 07:09:17 · 2184 阅读 · 0 评论 -
Apache Doris三种数据模型(Aggregate、Uniq、Duplicate)的使用及其注意点
目录1. key和value2. 数据模型2.1 Aggregate数据模型1. key和value这里的key并不是索引的意思,下面根据情况具体说明:Aggregate数据模型:key为聚合的键,value为聚合的值Uniq数据模型:key为聚合的键,value为聚合的值Duplicate数据模型:key为建表时指定的duplicate key(sorted column,只是用来排序),其余字段为valuerollup作用于Aggregate和Uniq数据模型:key为聚合的键,val原创 2021-10-26 07:07:22 · 13447 阅读 · 2 评论 -
Apache Doris创建用户、数据库和表创建、数据查询、表结构变更、join操作、高可用、查询参数设置
目录1. 基本使用1.1 修改密码1.2 创建用户并授权1.3 语法帮助命令1.4 创建数据库1.5 表的创建1.6 insert数据1.7 查询数据因为Doris使用mysql协议,所以可以像连接mysql一样连接Doris1. 基本使用1.1 修改密码doris默认是没有密码连接端口是fe.conf中的query_port参数值[root@bigdata005 opt]# [root@bigdata005 opt]# mysql -h bigdata001 -P 9030 -u roo原创 2021-10-25 23:46:40 · 10622 阅读 · 0 评论 -
Apache Doris 0.14.0版本 MPP数据库编译和安装
目录1. 编译2. 安装1. 编译官方提供Docker环境编译、Centos\Ubuntu环境编译、ARM64平台编译,我们这里采样Docker环境编译下载Docker镜像[root@bigdata001 ~]#[root@bigdata001 ~]# docker pull apache/incubator-doris:build-env-1.2build-env-1.2: Pulling from apache/incubator-doris7a376117f479: Pull compl原创 2021-10-25 23:44:34 · 1570 阅读 · 0 评论