- Power BI Desktop:用于创建仪表盘和可视化内容的 Windows 桌面应用
- Power BI Service:Azure 中提供的 SaaS 服务,用于托管在 Power BI Desktop 中创建的仪表盘
- 安装 ClickHouse ODBC 驱动程序
- 将 ClickHouse Power BI Connector 安装到 Power BI Desktop 中
- 从 ClickHouse 查询数据并在 Power BI Desktop 中进行可视化
- 为 Power BI Service 设置本地数据网关
前置条件
Power BI 安装
2.137.751.0 起,默认提供 ClickHouse 连接器。
收集你的 ClickHouse 连接信息
- Hostname - ClickHouse 主机名
- 用户名 - 用户凭据中的用户名
- 密码 - 该用户的密码
- Database - 你要连接的实例上的数据库名称
Power BI 桌面版
- 安装 ClickHouse ODBC 驱动程序
- 查找 ClickHouse 连接器
- 连接到 ClickHouse
- 查询并可视化数据
安装 ODBC 驱动程序
.msi 安装程序,并按照安装向导完成安装。
Debug symbols 为可选项,并非必需。验证 ODBC 驱动程序
确认列表中包含 ClickHouse Driver。
查找 ClickHouse 连接器
适用于 Power BI Desktop
2.137.751.0 版本搜索“ClickHouse”
连接到 ClickHouse
- Host (必填) - 实例的域名/地址。请确保不要添加任何前缀/后缀。
- Port (必填) - 实例的端口。
- Database - 数据库名称。
- Options - ClickHouse ODBC GitHub 页面中列出的任意 ODBC 选项
- Data Connectivity mode - DirectQuery
建议选择 DirectQuery,以直接查询 ClickHouse。如果数据量较小,也可以选择导入模式,全部数据都会加载到 Power BI 中。
- 指定用户名和密码
查询和可视化数据
导入完成后,你就可以像平常一样在 Power BI 中访问 ClickHouse 数据。
Power BI Service
ODBC 驱动程序 (仅导入)
创建新的用户 DSN
我们需要在这里添加一个新的用户 DSN。点击左侧的“添加”按钮。
选择 ODBC 驱动程序的 Unicode 版本。
填写连接信息。
如果你使用的是已启用 SSL 的部署 (例如 ClickHouse Cloud 或自管理实例) ,则应在
SSLMode 字段中填写 require。Host应始终省略协议 (即不要包含http://或https://) 。Timeout是一个表示秒数的整数。默认值:30 seconds。
将数据导入 Power BI
选择“Other”->“ODBC”。
从列表中选择您之前创建的数据源。
如果您在创建数据源时未指定凭据,系统会提示您输入用户名和密码。
最后,您应会在 Navigator 视图中看到数据库和表。选择所需的表,然后单击“Load”从 ClickHouse 导入数据。
导入完成后,您就可以像平常一样在 Power BI 中访问 ClickHouse 数据。
优化大规模数据集的使用体验
materialized views。这样可以获得:
- 无论数据量大小如何,都能保持稳定且快速的性能
- 降低 ClickHouse 集群负载
- 更可预测的成本
实施最佳实践
预聚合策略
- 对近期的详细仪表盘使用按小时聚合
- 对历史趋势使用按天聚合
- 对长期报表使用按月 rollup
- 保留具有适当生存时间 (TTL) 的原始数据,以便进行临时分析
数据建模优化
- 定义与查询模式相匹配的
ORDER BY键 - 对时间序列数据进行分区
- 将小型维度表转换为字典,以提高查找效率
- 利用投影进一步优化查询
已知限制
UInt64
要正确导入数据,请先在 Navigator 中点击“转换数据”,再点击“加载”按钮。
pageviews 表有一个 UInt64 列,默认会被识别为“二进制”。
点击“转换数据”会打开 Power Query Editor,我们可以在其中重新指定该列的类型,例如将其设置为
文本。
完成后,点击左上角的“关闭并应用”,然后继续加载数据。