当前位置: 首页 > news >正文

Apache Doris

Apache Doris介绍

Apache Doris 是一个基于 MPP 架构的高性能、实时的分析型数据库,以极速易用的特点被人们所熟知,仅需亚秒级响应时间即可返回海量数据下的查询结果,不仅可以支持高并发的点查询场景,也能支持高吞吐的复杂分析场景。基于此,Apache Doris 能够较好的满足报表分析、即席查询、统一数仓构建、数据湖联邦查询加速等使用场景,用户可以在此之上构建用户行为分析、AB 实验平台、日志检索分析、用户画像分析、订单分析等应用。

特点: 列示存储、mmp(大规模并行处理)、支持实时数据分析、高度兼容mysql协议、高并发和高通图的Ad-hoc查询、支出聚合+明细数据查询、无外部系统依赖。

底层架构:

Doris =

Google mesa(满足一系列复杂且具有挑战性的用户和系统需求,本身不提供SQL查询引擎)

+

Apache Lmpala(MPP SQL查询引擎,做更多的查询优化,但缺少较完美的分布式存储引擎)

+

Apache ORCFile(只访问查询涉及的列,大量降低系统I/O,有利于查询的并发处理)

软硬件需求

Linux操作系统版本需求

CentOS

7.1及以上

Ubuntu

16.04及以上

软件需求

Java

1.8

GCC

4.8.2及以上

开发测试环境

模版

CPU

内存

磁盘

网络

实例数量

Frontend

8核+

8GB+

SSD或SATA,10GB+

千兆网卡

1

Backend

8核+

16GB+

SSD或SATA,50GB+

千兆网卡

1-3*

生产环境

模版

CPU

内存

磁盘

网络

实例数量

Frontend

16核+

64GB+

SSD或RAID卡,100GB+

万兆网卡

1-3*

Backend

16核+

64GB+

SSD或SATA,100GB+

万兆网卡

3*

适用场景

  • 报表分析

实时看板;面相企业内部分析师和管理者的报表;面向用户或者客户的高并发报表分析。

  • 即席查询

面向分析师的自助分析,查询模式不固定,要求较高的吞吐。

  • 统一数仓构建

一个平台满足统一的数据仓库建设需求,简化繁琐的大数据软件栈。

  • 数据湖联邦查询

通过外表的方式联邦分析位于 Hive、Iceberg、Hudi 中的数据,在避免数据拷贝的前提下,查询性能大幅提升。

部署

用初始化脚本安装mysql数据库

curl-o online_index.sh https://sc-tools.uniscity.com/linux/script/online_index.sh

bash online_index.sh

安装包下载

#初始化目录
cd /opt 
mkdir doris1.2.4

#查看系统CPU型号
uname -a

#下载与系统cpu型号一致的包
wget https://apache-doris-releases.oss-accelerate.aliyuncs.com/apache-doris-2.0.0-bin-x64.tar.gz

#解压
xz -d apache-doris-2.0.0-bin-x64.tar.gz
tar -xvf apache-doris-2.0.0-bin-x64.tar.gz

时钟设置

#同步时间,需要使⽤ ntpdate 命令,如果没有可以使⽤yum安装
yum install ntpdate

#使⽤ntpdate同步⽹络上的时间服务器的时间,例如 : time.windows.com、 ntp.aliyun.com
ntpdate -u ntp.aliyun.com

#可以将时间同步做成⼀个定时任务,每隔⼀段时间就同步⼀下⽹络的时间
crontab -e
* * * * * /usr/sbin/ntpdate -u ntp.aliyun.com   #输入然后wq保存退出

#查看crontab运行情况
crontab -l
tail -n 5 /var/log/cron

打开文件limits.conf

sudo vim /etc/security/limits.conf

在文件的末尾处添加或者修改

* soft nofile 65536
* hard nofile 65536
* soft nproc 65536
* hard nproc 65536

打开文件sysctl.conf

sudo vim /etc/sysctl.conf
# 添加
fs.file-max = 6553560
vm.max_map_count=2000000

FE配置

vim fe/conf/fe.conf

#只需要修改priority_networks
priority_networks = 10.0.53.161/24

BE配置

vim be/conf/be.conf 

#需要修改JAVA_HOME和priority_networks即可
JAVA_HOME=/usr/local/java/jdk1.8.0_361/
priority_networks = 10.0.53.161/24

初始化

#启动fe
sh fe/bin/start_fe.sh --daemon

#启动be
sh be/bin/start_be.sh --daemon

#添加be到集群
alter system add backend "192.168.31.81:9050";

#查看be状态
show PROC '/backends';
#查看fe状态
show frontends\G;

FE Web 登录页面

访问地址: http://localhost:8030/login
初始用户: root
密码:无

Doris的数据模型

Doris的数据模型主要分为3类:

  • Aggregate
  • Unique
  • Duplicate
Aggregate模型

适用于有固定模式的报表类查询场景。

表中的列按照是否设置AggregationType分为key(维度列)和Value(指标列)。没有设置AggregationType的称为Key,设置了AggregationType的称为Value。

导入数据时,Key列完全相同的行会聚合成一行,其Value列按照设置的AggregationType进行聚合。

AggregationType目前有以下方式:

  1. SUM:求和,多行的Value累加。
  2. REPLACE:替代,下一批数据的Value会替换之前导入的行中的Value。
  3. MAx:保留最大值。
  4. MIN:保留最小值。

在建表语句后添加以下语句声明Key列:

AGGREGATE KEY();
Unique模型

适用于需要保证主键唯一性的多维分析场景。

读时合并

Unique的读时合并可以用聚合模型中的REPLACE方式替代。

写时合并

Unique的写时合并不同于聚合模式的读时合并,其通过在写入时做额外的工作,实现了最优的查询性能。

在建表语句后添加以下语句声明唯一主键和写时合并:

UNIQUE KEY()
PROPERTIES (
"replication_allocation" = "tag.location.default: 1",
"enable_unique_key_merge_on_write" = "true"
);
Duplicate模型

适用于任意维度的Ad-hoc查询,不受聚合模型的约束。

区别于上述2种模型,Duplicate模型的数据完全按照导入文件中的数据进行存储,不进行任何聚合。

在建表语句后添加以下语句声明排序依赖的键值:

DUPLICATE KEY();

当创建表的时候没有指定Unique、Aggregate或Duplicate时,会默认创建一个Duplicate模型的表,并自动指定排序列。

如果不需要排序时可以在表属性配置中添加如下语句:

PROPERTIES (
"enable_duplicate_without_keys_by_default" = "true"
);

相关文章:

  • gitee第三方登录获取openid | python+Django |已跑通
  • 为扣子智能体接入 DeepSeek
  • Linux系统之美:环境变量的概念以及基本操作
  • 1996-2023年各省公路里程数据(无缺失)
  • 简介PyCDE:Python CIRCT Design Entry
  • vue的响应式原理
  • 尝试使用Tauri2+Django+React项目(2)
  • 精度与效率双突破!CASAIM 智能检测系统为制造装上“智慧之眼”
  • C语言入门教程100讲(4)输入输出
  • 【003安卓开发方案调研】之ReactNative技术开发安卓
  • 群晖导入磁盘大法 - 安装img
  • OAK相机入门(四):近距离深度图
  • 基于Windows11的Xinference安装方法简介
  • V2使用中遇到的问题
  • qemu ept设置过程
  • 三分钟掌握音频提取 | 在 Rust 中优雅地处理视频音频
  • 记录修复一个推拉门滑轮
  • 金仓KESV8R6任务调度
  • 使用 DeepSeek 训练定制化小说创作模型,所需本地数据量与模型规模、训练目标
  • 神经网络基础之正则化
  • 创同期历史新高!1至4月全国铁路发送旅客14.6亿人次
  • 在古老的意大利科莫歌剧院,廖昌永唱响16首中国艺术歌曲
  • 女外交官郑璇已任中国驻莫桑比克大使
  • “异常”只停留在医院里,用艺术为“泡泡宝贝”加油
  • 远如《月球背面》,近似你我内心
  • 国务院关税税则委员会公布公告调整对原产于美国的进口商品加征关税措施