ClickHouse OSS 快速入门
在本快速入门教程中,我们将通过 8 个简单的步骤帮助您设置 OSS ClickHouse。您将下载适用于您操作系统的二进制文件,学习如何运行 ClickHouse 服务器,并使用 ClickHouse 客户端创建一个表,然后将数据插入到表中并运行查询以选择该数据。
下载 ClickHouse
ClickHouse 原生运行于 Linux、FreeBSD 和 macOS 上,并通过 WSL 在 Windows 上运行。下载 ClickHouse 的最简单方法是运行以下 curl 命令。它将确定您的操作系统是否受支持,然后下载从主分支构建的适当的 ClickHouse 二进制文件。
我们建议您从一个全新且空的子目录运行以下命令,因为 ClickHouse 服务器首次运行时,一些配置文件将被创建在该二进制文件所在的目录中。
以下脚本不是安装 ClickHouse 的推荐方法。如果您正在寻找安装生产实例的 ClickHouse,请参阅 安装页面。
您应该会看到
此时,您可以忽略运行 install 命令的提示。
对于 Mac 用户:如果您收到开发者二进制文件无法验证的错误,请参阅 “修复 macOS 中的开发者验证错误”。
启动客户端
使用 clickhouse-client 连接到您的 ClickHouse 服务。打开一个新的终端,更改目录到保存 clickhouse 二进制文件的位置,并运行以下命令
您应该会看到一个微笑的表情,因为它连接到您在本地主机上运行的服务
插入您自己的数据
下一步是将您自己的数据导入 ClickHouse。我们有很多 表函数 和 集成 用于导入数据。我们在下面的选项卡中提供了一些示例,或者您可以查看我们的 集成 页面,以获取与 ClickHouse 集成的技术列表。
- S3
- GCS
- Web
- 本地
- PostgreSQL
- MySQL
- ODBC/JDBC
- 消息队列
- 数据湖
- 其他
使用 s3 表函数 从 S3 读取文件。它是一个表函数 - 意味着结果是一个表,可以用作
SELECT查询的源(允许您运行临时查询并将数据保留在 S3 中),或者…- 将结果表插入到
MergeTree表中(当您准备将数据移动到 ClickHouse 时)
一个临时查询如下所示
将数据移动到 ClickHouse 表如下所示,其中 nyc_taxi 是一个 MergeTree 表
查看我们的 AWS S3 文档页面集合,以获取更多详细信息和使用 S3 与 ClickHouse 的示例。
使用 file 表引擎 读取本地文件。为了简单起见,将文件复制到 user_files 目录(该目录位于您下载 ClickHouse 二进制文件的目录中)。
请注意,ClickHouse 通过分析大量行来推断您的列名称和数据类型。如果 ClickHouse 无法从文件名确定文件格式,您可以将其作为第二个参数指定
查看 file 表函数 文档页面,以获取更多详细信息。
消息队列可以使用相应的表引擎将数据流式传输到 ClickHouse,包括
- Kafka:使用
Kafka表引擎 与 Kafka 集成 - Amazon MSK:与 Amazon Managed Streaming for Apache Kafka (MSK) 集成
- RabbitMQ:使用
RabbitMQ表引擎 与 RabbitMQ 集成
ClickHouse 具有表函数来从以下来源读取数据
- Hadoop:使用
hdfs表函数 与 Apache Hadoop 集成 - Hudi:使用
hudi表函数 从 S3 中的现有 Apache Hudi 表读取 - Iceberg:使用
iceberg表函数 从 S3 中的现有 Apache Iceberg 表读取 - DeltaLake:使用
deltaLake表函数 从 S3 中的现有 Delta Lake 表读取
查看我们的 ClickHouse 集成列表,以查找如何将您现有的框架和数据源连接到 ClickHouse。
探索
- 查看我们的 核心概念 部分,以了解 ClickHouse 在幕后工作的一些基本原理。
- 查看 高级教程,它深入研究了 ClickHouse 的关键概念和功能。
- 通过在 ClickHouse Academy 参加我们的免费按需培训课程,继续您的学习。
- 我们有一个 示例数据集 列表,其中包含有关如何插入它们的说明。
- 如果您的数据来自外部源,请查看我们的 集成指南集合,以连接到消息队列、数据库、管道等。
- 如果您正在使用 UI/BI 可视化工具,请查看 将 UI 连接到 ClickHouse 的用户指南。
- 关于主键的 用户指南 包含您需要了解的关于主键以及如何定义它们的一切。