使用 TPC-DS 示例数据集评估系统性能

Azure Databricks 提供对 TPC-DS 基准数据集的访问权限,这是一个广泛使用的基准,用于测试为数据仓库和分析而构建的系统的性能。 默认情况下,数据集在每个已启用 Unity 目录的工作区中提供两种大小。 这些数据集非常适合在模拟现实零售和电子商务业务方案的标准化基准上测试 Azure Databricks 性能。 若要了解有关此数据集的详细信息,请参阅 TPC-DS 基准 文档。

包含的内容

TPC-DS 数据集在 samples 目录中提供以下架构:

  • tpcds_sf1 — 小型数据集(约 1 GB)
  • tpcds_sf1000 — 大型数据集(约 1 TB)

这两个数据集共享以下品质:

  • 工作区中的所有用户都是只读的且可查询
  • 与 SQL 仓库和全用途群集兼容
  • 遵循标准化基准测试的 TPC-DS 规范

先决条件

必须有权访问 SQL 仓库或通用群集。

预览数据

若要浏览目录资源管理器 UI 中的数据,请执行以下作:

  1. 点击边栏中的“数据”图标目录

  2. 在搜索栏中输入 tpcd。 这两个 samples 架构都在目录中。 单击要查看的架构的名称。

  3. 概述 ”选项卡列出架构中的所有表。 单击表名称可打开该表中的列和数据类型的概述。

  4. 使用顶部导航查看表 的示例数据详细信息

查询数据

以下查询使用较小的缩放数据集 tpcds_sf1。 若要使用更大的缩放数据集,请将架构名称替换为 tpcds_sf1000。 单击边栏中的 SQL 编辑器图标SQL 编辑器 以打开 SQL 编辑器。 然后,使用以下查询开始浏览数据。

预览表

SHOW TABLES IN samples.tpcds_sf1;

浏览表

DESCRIBE TABLE samples.tpcds_sf1.customer;
SELECT * FROM samples.tpcds_sf1.customer LIMIT 10;

示例联接和聚合

SELECT
  i_category,
  d_year,
  SUM(ss_net_paid) AS total_revenue
FROM samples.tpcds_sf1.store_sales ss
JOIN samples.tpcds_sf1.item i ON ss.ss_item_sk = i.i_item_sk
JOIN samples.tpcds_sf1.date_dim d ON ss.ss_sold_date_sk = d.d_date_sk
WHERE d.d_year = 2001
GROUP BY i_category, d_year
ORDER BY total_revenue DESC
LIMIT 10;

最佳做法

  • 使用 查询历史记录查询配置文件 了解性能特征并确定优化机会。
  • 从较小的 tpcds_sf1 数据集开始进行初始测试,然后纵向扩展以 tpcds_sf1000 进行全面的性能评估。
  • 比较不同 SQL 仓库大小的查询性能,以确定工作负荷的最佳配置。
  • 使用这些标准化数据集建立性能基线并跟踪随时间推移的改进。