首页/新闻资讯/正文详情

Apache Doris TPC-DS 基准测试完整指南:99 条复杂查询快速跑通与优化

发布时间:2026/11/4 11:11:46 来源:云帆数科 栏目:资讯中心
Apache Doris TPC-DS 基准测试完整指南:99 条复杂查询快速跑通与优化
Apache Doris TPC-DS 基准测试完整指南99 条复杂查询快速跑通与优化【免费下载链接】dorisApache Doris is an easy-to-use, high performance and unified analytics database.项目地址: https://gitcode.com/gh_mirrors/dori/dorisApache Doris 的 TPC-DS 测试用 99 条复杂决策分析查询压测大数据集上的查询性能从建表、导入到出报告是一条完整可复现的闭环。本文按实操顺序带你走完这套基准测试流程并教你读懂报告、定位慢查询、落地优化。选 TPC-DS 作为量尺标准本身与工具分工TPC-DSTransaction Processing Performance Council - Decision Support是 TPC 委员会发布的决策支持类基准标准模拟报表生成、即席查询、数据挖掘等真实商业分析负载。它由 99 条复杂 SQL 组成多表连接、子查询、窗口聚合交织在一起比单表查询更能拉开不同分析引擎的差距。数据规模用 SFScale Factor表示1 个 SF 约对应 1GB 数据从 SF1 到 SF1000 可平滑放大压力。Doris 把整套测试工具收敛在tools/tpcds-tools/目录下各子目录分工明确conf/集群连接配置与按 SF 区分的查询优化参数queries/按 SF 归档的 99 条测试查询ddl/建表语句tools/tpcds-tools/README.md完整使用说明。从零到跑通一次完整 TPC-DS 测试走查TPC-DS 测试环境怎么配连接参数与工具编译先让工具连上你的 Doris 集群。打开 tools/tpcds-tools/conf/doris-cluster.conf只需改六个参数export FE_HOST127.0.0.1 # FE 节点地址 export FE_HTTP_PORT8030 # 对应 fe.conf 中的 http_port export FE_QUERY_PORT9030 # 对应 fe.conf 中的 query_port export USERroot # 登录用户名 export PASSWORD # 登录密码 export DBtpcds # 测试表所在数据库名⚠️ 两个端口分别对应 FE 的 http_port 与 query_port改错任何一项都会连接失败。接下来编译官方工具链。脚本会自动下载 TPC-DS 数据生成器 dsdgen 与查询生成器 dsqgen 的源码并完成编译./bin/build-tpcds-tools.sh⚠️ 若编译失败通常是 GCC 版本过低或工具包下载异常。可按 tools/tpcds-tools/README.md 的提示把build-tpcds-dbgen.sh中的下载包名TPC-DS_Tools_v3.2.0new.zip改为TPC-DS_Tools_v3.2.0.zip后重试。按 SF 生成 TPC-DS 测试数据与查询-s参数指定数据规模因子SF 即 Scale Factor1 个 SF 约对应 1GB 数据。./bin/gen-tpcds-data.sh -s 1SF1 生成约 1GB 数据集适合快速冒烟验证要上正式压测把-s换成 100约 100GB./bin/gen-tpcds-data.sh -s 100数据文件默认落在data/tpcds/sf${SCALE}/目录。查询侧同理一条命令即可产出与 SF 匹配的语句./bin/gen-tpcds-queries.sh -s 1产物存放在queries/sf1/下换 SF 时工具会自动按数据规模调整查询内容不需要手工改写。建表、导入、执行三条命令串成测试闭环闭环第一步建表。脚本会读取ddl/下与当前 SF 匹配的 DDL在tpcds库中创建全部测试表表结构已按 Doris 特性做过分布、分区与索引层面的考量./bin/create-tpcds-tables.sh -s 1第二步导入数据./bin/load-tpcds-data.sh工具会启用批量加载与分区并行加载来提升导入效率。加载完成后可用 MySQL 客户端连入集群核对各表行数是否齐整。第三步执行全部查询./bin/run-tpcds-queries.sh -s 199 条查询依次执行工具逐条记录耗时最终汇总成测试报告。读懂测试报告四个关键指标与瓶颈判断报告核心是四个指标各自回答一个不同的问题单条查询耗时反映 Doris 处理某类具体查询的能力是定位慢 SQL 的起点平均查询耗时整体性能的水位线适合跨版本、跨配置横向对比最长查询耗时暴露 worst-case通常对应最重的多表聚合或嵌套子查询查询吞吐量单位时间完成的查询数衡量系统并发承载能力。瓶颈判断看增长趋势对比 SF 从小到大如 SF1 → SF100同一查询的耗时变化。若增长接近线性说明引擎随数据规模扩展正常若某条查询显著超线性膨胀大概率是数据量敏感的环节出了问题——全表扫描、低效连接、分区裁剪未生效等这条查询就值得优先解剖。性能优化四抓手配置、表结构、执行计划与 SF 参数调集群参数结合报告定位资源瓶颈后调整 conf/fe.conf 与 conf/be.conf 中的内存分配、线程数等参数让资源匹配负载画像。调表结构按查询特征细化分区粒度、调整分桶方式对高频过滤字段补 Bloom Filter 索引让点查与过滤更快命中。用 EXPLAIN 解剖慢查询对耗时靠前的查询执行EXPLAIN从执行计划中找出全表扫描、低效连接方式等瓶颈针对性改写。按 SF 套用查询优化参数conf/opt/下提供了按数据规模区分的优化参数文件opt_sf1.sql至opt_sf10000.sql例如 tools/tpcds-tools/conf/opt/opt_sf1000.sql 对应 SF1000可结合实测情况裁剪后套用。工具脚本、目录结构、各 SF 档位的操作细节都有完整说明深入阅读可参考 tools/tpcds-tools/README.md按自己集群的规模跑一轮完整测试即可上手。【免费下载链接】dorisApache Doris is an easy-to-use, high performance and unified analytics database.项目地址: https://gitcode.com/gh_mirrors/dori/doris创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关推荐

Bilibili-Evolved 哔哩哔哩增强脚本完整指南:从 10 分钟装好到自定义组件开发
Bilibili-Evolved 哔哩哔哩增强脚本完整指南:从 10 分钟装好到自定义组件开发

Bilibili-Evolved 哔哩哔哩增强脚本完整指南:从 10 分钟装好到自定义组件开发 【免费下载链接】Bilibili-Evolved 强大的哔哩哔哩增强脚本 项目地址: https://gitcode.com/gh_mirrors/bi/Bilibili-Evolved 项目定位:这款哔哩哔哩增强脚本解决什么… · 2026/11/4 11:11:46

PS4 模拟器 shadPS4 完全指南:从零在 PC 上跑起《血源诅咒》
PS4 模拟器 shadPS4 完全指南:从零在 PC 上跑起《血源诅咒》

PS4 模拟器 shadPS4 完全指南:从零在 PC 上跑起《血源诅咒》 【免费下载链接】shadPS4 PlayStation 4 emulator for Windows, Linux, macOS and FreeBSD written in C 项目地址: https://gitcode.com/GitHub_Trending/sh/shadPS4 深夜,一台 Windo… · 2026/11/4 11:11:46

163MusicLyrics 从 0 到 1 上手指南:把带时间轴的歌词批量导出成 LRC/SRT
163MusicLyrics 从 0 到 1 上手指南:把带时间轴的歌词批量导出成 LRC/SRT

163MusicLyrics 从 0 到 1 上手指南:把带时间轴的歌词批量导出成 LRC/SRT 【免费下载链接】folia-major 专注于绚丽的歌词动画效果的本地音乐/navidrome/第三方多平台在线音乐播放器 项目地址: https://gitcode.com/GitHub_Trending/fo/folia-major 163Music… · 2026/11/4 11:11:46

阅读APP书源完整配置指南:22个书源快速导入与常见问题排查
阅读APP书源完整配置指南:22个书源快速导入与常见问题排查

阅读APP书源完整配置指南:22个书源快速导入与常见问题排查 【免费下载链接】Yuedu 📚「阅读」自用书源分享 项目地址: https://gitcode.com/gh_mirrors/yu/Yuedu 刚把「阅读」APP 装进手机,打开搜索页却发现什么都搜不到、书架空空如也… · 2026/11/4 11:52:38

让AI Agent自愈:axuse的6种类型化错误如何把失败从报错字符串变成可执行事实
让AI Agent自愈:axuse的6种类型化错误如何把失败从报错字符串变成可执行事实

【免费下载链接】axuse Accessibility-first browser & computer use for AI agents — one MCP server for every harness (Codex, Claude Code, OpenCode, Antigravity). Instruments the DOM/accessibility tree via CDP instead of screenshot loops: diffed snapshots… · 2026/11/4 11:52:38

WeChatMsg:免费把微信聊天记录导出成 3 种格式,一次搞定年度聊天报告
WeChatMsg:免费把微信聊天记录导出成 3 种格式,一次搞定年度聊天报告

WeChatMsg:免费把微信聊天记录导出成 3 种格式,一次搞定年度聊天报告 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com… · 2026/11/4 11:52:38

OpenClaw 轻量化整合包部署,本地智能工具搭建
OpenClaw 轻量化整合包部署,本地智能工具搭建

📖 前言 本文面向 Windows 系统用户,系统梳理 OpenClaw 的标准化部署流程。全程无需输入任何命令行,所有操作均依托可视化向导完成,即便是零基础用户也能独立走完整套部署流程。文中同时汇总了高频报错的对应解决方案&#xff0c… · 2026/11/4 11:52:38

关于 Redis 锁与 MySQL 锁的苏格拉底式对话
关于 Redis 锁与 MySQL 锁的苏格拉底式对话

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 11:52:38

AutoHotkey 输入法切换实战:5 个热键参数,中英文切换一次配好
AutoHotkey 输入法切换实战:5 个热键参数,中英文切换一次配好

AutoHotkey 输入法切换实战:5 个热键参数,中英文切换一次配好 【免费下载链接】AutoHotkey AutoHotkey - macro-creation and automation-oriented scripting utility for Windows. 项目地址: https://gitcode.com/gh_mirrors/au/AutoHotkey 写技… · 2026/11/4 11:51:37

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 3:16:49

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 6:59:29

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 7:02:38

AI辅助技术栈评估:提升研发决策效率60%
AI辅助技术栈评估:提升研发决策效率60%

1. 项目背景与核心价值技术决策一直是研发团队面临的重大挑战。随着技术生态的快速演进,技术栈的选择、维护和迭代变得愈发复杂。我们团队在过去两年里,先后经历了三次重大技术栈迁移,每次都需要投入大量人力进行技术评估和风险分析。直到去年… · 2026/11/4 0:00:17

从生成Token到直接决策:Jev如何重塑AI Agent工程实践
从生成Token到直接决策:Jev如何重塑AI Agent工程实践

1. 从"生成文字"到"拍板决策":Jev 到底在解决什么问题大多数人第一次接触大模型,脑子里建立的模型是"输入问题、输出文字"。你问它今天天气怎么样,它给你一段描述;你让它写个周报,它给你… · 2026/11/4 0:00:17

32G统一内存跑大模型:内存账、TPS实测与端云分流
32G统一内存跑大模型:内存账、TPS实测与端云分流

想在一台 32G 统一内存的小主机上把大模型跑成"日常可用",这件事我前后折腾了小半年。标题里说的这台 Mac mini M6,是我们这次讨论的目标平台,具体到手规格以实物为准;但下面这套推算方法和实测思路,对任何统… · 2026/11/4 0:00:17

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 3:16:49

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 6:59:29

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 7:02:38

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码