Power BI 能连接 DynamoDB 吗?

不能直连。Power BI 没有原生的 DynamoDB 连接器,因为 AWS 本身就没有为 DynamoDB 提供 ODBC 或 JDBC 驱动。你得间接连接:通过 Amazon Athena 查询这张表——走联邦查询,或者把数据导出到 S3——并使用 Athena 的 ODBC 连接器;或者用 CData 之类的第三方 ODBC 驱动。

为什么没有直连的连接器

DynamoDB 是一个 NoSQL 的、由 API 驱动的服务,不是一个 SQL 端点,而且 AWS 没有为它提供 ODBC/JDBC 驱动。Power BI 的数据源期待的是 SQL 风格的连接方式,所以需要一座桥。

方案一:经由 Amazon Athena

Athena 可以用它的联邦查询连接器来查询 DynamoDB,也可以查询你从 DynamoDB 导出到 Amazon S3 的数据。然后 Power BI 用 Athena ODBC 连接器以 Import 或 DirectQuery 模式连上 Athena。

方案二:第三方 ODBC 驱动

CData 之类的厂商出售能直接与 DynamoDB 对话的 ODBC 驱动和 Power BI 连接器,把它暴露成一个类 SQL 的数据源。

方案三:把数据导出去

把 DynamoDB 导出到 S3(或 CSV),再把文件加载进 Power BI——做时点报表时最简单。

一次 DirectQuery 刷新实际要花多少钱

Athena 连接器不是一个焊在 DynamoDB 上的 SQL 引擎。它调用的就是你自己会调的那些 API,而 AWS 的连接器参考对这什么时候会变成扫描说得很具体:

Athena DynamoDB 连接器支持并行扫描,并会尝试把谓词作为其 DynamoDB 查询的一部分下推。一个带 X 个不同取值的哈希键谓词,会产生对 DynamoDB 的 X 次 query 调用。其他所有谓词场景都会产生 Y 次 scan 调用,其中 Y 是根据你的表大小及其预置吞吐量启发式地确定的。

所以一个按分区键过滤的报表视觉对象会变成一次 Query。其余的都会变成扫描。那八个确实会下推的运算符(ANDEQUALNOT_EQUALLESS_THANLESS_THAN_OR_EQUALGREATER_THANGREATER_THAN_OR_EQUALIS_NULL)下推成的是一个过滤表达式,而 DynamoDB 是在读完项目之后才应用它的。下推削减的是过线的数据量,不是你付的钱。

给它标个价。DynamoDB 会按它评估过的项目的累计大小,把一次 QueryScan 向上取整到 4 KB,于是扫描一个 GiB 就是 262,144 个强一致性读取单元,或者 131,072 个最终一致性读取单元。按我们定价计算器背后的 us-east-1 按需费率、每个读取请求单元 $0.000000125 计算:

表大小一次全量扫描每小时刷新,持续 30 天每 15 分钟刷新
5 GB$0.08$58.98$235.93
20 GB$0.33$235.93$943.72
50 GB$0.82$589.82$2,359.30

这只是读取单元。Athena、连接器的 Lambda 函数和它的 S3 溢出桶还要另外计费,而且这个下限可能高于数据量本身:"Empty tables and very large tables which have a sparse amount of partition keys might see some additional RCUs charged beyond the amount of data scanned."

以上说的是按计划执行的 Import 模式。一个被十个人一直开着的 DirectQuery 报表,每点一下都会把那些扫描重跑一遍。

深入了解

参见把 DynamoDB 导出为 CSV。至于那些 SQL 形状的问题本身——JOINGROUP BY、聚合——DynoTable 的 SQL Workbench能直接针对你的表运行它们,不需要任何 ODBC 桥。下载 DynoTable 来查询和导出你的表数据。

参考资料

最后核实于 2026-07-13,依据上方链接的 AWS 官方文档。

连接器行为与扫描成本表核实于 2026-07-28:引用的句子来自当天取回的 Athena 连接器参考与 DynamoDB Scan 页面,金额则使用我们同步的定价表中的 us-east-1 按需读取费率(AWS 定价 API 于 2026-07-22 发布)。

无需控制台即可使用 DynamoDB

一款快速的 DynamoDB 桌面客户端,可运行 DynamoDB 无法执行的真正 SQL——JOINs、GROUP BY、聚合——并支持可视化编辑和运行在你自己的 Bedrock 密钥上的 AI agent。

30 天免费试用,无需信用卡 — 之后为无时间限制的免费版。