1-数据表设计
数据模型
在 Doris 中,数据以表(Table)的形式进行逻辑上的描述。 一张表包括行(Row)和列(Column)。Row 即用户的一行数据。Column 用于描述一行数据中不同的字段。
Column 可以分为两大类:Key 和 Value。从业务角度看,Key 和 Value 可以分别对应维度列和指标列。Doris的key列是建表语句中指定的列,建表语句中的关键字'unique key'或'aggregate key'或'duplicate key'后面的列就是 Key 列,除了 Key 列剩下的就是 Value 列。
Doris 的数据模型主要分为3类:
Aggregate
Unique
Duplicate
数据划分
使用指南
Rollup 与查询
最佳实践
索引
2-数据操作
数据导入
导出
数据更新及删除
3-进阶使用
表结构变更
Doris 表分区
数据缓存
自动分桶
Broker
最佳实践
资源管理
BITMAP 精准去重
使用 HLL 近似去重
变量
时区
文件管理器
冷热分层
计算节点
行转列
IS_BEING_SYNCED 属性
SQL MODE
4-查询加速
4.1-Pipeline 执行引擎
充分释放多核 CPU 的计算能力,并对 Doris 的查询线程的数目进行限制,解决 Doris 的执行线程膨胀的问题
- BE 在进行查询执行时就会默认将 SQL 的执行模型转变 Pipeline 的执行方式
set enable_pipeline_engine = true;
- SQL 查询进行查询并发的 Pipeline Task 数目。Doris默认的配置为0,即CPU核数的一半。用户也可以实际根据自己的实际情况进行调整
set parallel_pipeline_task_num = 0;
4.2-Nereids 全新优化器
-开启新优化器
SET enable_nereids_planner=true;
-开启自动回退到旧优化器
SET enable_fallback_to_original_planner=true;
4.3-高并发点查
PROPERTIES (
"replication_allocation" = "tag.location.default: 1",
"enable_unique_key_merge_on_write" = "true", # 存储引擎需要根据主键来快速点查
"light_schema_change" = "true",
"store_row_column" = "true" # 行存
);
4.4-物化视图
物化视图是将预先计算(根据定义好的 SELECT 语句)好的数据集,存储在 Doris 中的一个特殊的表。
物化视图的出现主要是为了满足用户,既能对原始明细数据的任意维度分析,也能快速的对固定维度进行分析查询。
4.5-统计信息
通过收集统计信息有助于优化器了解数据分布特性,在进行CBO(基于成本优化)时优化器会利用这些统计信息来计算谓词的选择性,并估算每个执行计划的成本。从而选择更优的计划以大幅提升查询效率。
4.6-Join 优化
5-数据湖分析
Multi-catalog
文件分析
文件缓存
外表统计信息
文件系统性能测试工具
常见问题
6-生态扩展
Spark Doris Connector
Flink Doris Connector
Doris Streamloader
DataX Doriswriter
Seatunnel Doris Sink
Kyuubi
Logstash Doris Output Plugin
Beats Doris Output Plugin
插件开发手册
审计日志插件
CloudCanal 数据导入
Hive Bitmap UDF
DBT Doris Adapter
自定义函数
UDAF
7-SQL 手册
SQL 函数
SQL 手册
评论区