QuickSight
QuickSight 可以通过官方 MySQL 数据源,并使用 Direct Query 模式,经由 MySQL 接口连接到本地部署的 ClickHouse 集群(23.11+)。
本地部署 ClickHouse 服务器的设置
请参阅官方文档,了解如何设置启用了 MySQL 接口的 ClickHouse 服务器。
除了在服务器的 config.xml 中添加一条配置项之外
对于将要使用 MySQL 接口的用户,还必须使用 Double SHA1 密码加密。
在 shell 中生成一个使用 Double SHA1 加密的随机密码:
输出结果应类似如下所示:
第一行是生成的密码,第二行是我们可用于配置 ClickHouse 的哈希。
下面是一个使用该生成哈希的 mysql_user 配置示例:
/etc/clickhouse-server/users.d/mysql_user.xml
将 password_double_sha1_hex 条目替换为你自己生成的 Double SHA1 哈希值。
QuickSight 需要在该 MySQL 用户的配置中添加若干额外设置。
/etc/clickhouse-server/users.d/mysql_user.xml
不过,建议将其分配给一个不同的 profile,这样你的 MySQL 用户可以使用该 profile,而不是使用默认的那个。
最后,配置 ClickHouse Server 监听所需的 IP 地址。
在 config.xml 中,取消注释下面的配置以监听所有地址:
如果本机已安装 mysql 可执行文件,可以在命令行中测试连接。
使用上文示例中的用户名(mysql_user)和密码(LZOQYnqQN4L/T6L0),命令行命令如下:
将 QuickSight 连接到 ClickHouse
首先,访问 https://quicksight.aws.amazon.com,进入 Datasets,然后单击 "New dataset"(新建数据集):

搜索 QuickSight 自带的官方 MySQL 连接器(名称为 MySQL):

填写连接参数。请注意,MySQL 接口端口默认为 9004, 具体端口可能会因服务器配置不同而有所差异。

现在,您有两种方式可以从 ClickHouse 获取数据。第一种方式是从列表中选择一张表:

或者,您也可以编写自定义 SQL 来获取数据:

单击 "Edit/Preview data"(编辑/预览数据)后,您应该能够看到解析出的表结构,或者根据需要调整自定义 SQL(如果您选择通过这种方式访问数据):

请确保在 UI 左下角选中了 "Direct Query"(直接查询)模式:

现在,您可以继续发布数据集并创建新的可视化了!
已知限制
- SPICE 导入功能不能正常工作;请改用 Direct Query 模式。请参见 #58553。