跳到主要内容
跳到主要内容

快速入门

欢迎使用 ClickHouse!

在这个快速入门教程中,我们将通过 8 个简单的步骤来帮助您设置环境。您将下载适用于您操作系统的二进制文件,学习如何运行 ClickHouse 服务器,并使用 ClickHouse 客户端创建表,然后向其中插入数据并运行查询以选择这些数据。

让我们开始吧?

下载 ClickHouse

ClickHouse 原生支持 Linux、FreeBSD 和 macOS,并可以通过 WSL 在 Windows 上运行。下载 ClickHouse 本地版本的最简单方法是运行以下 curl 命令。它会检测您的操作系统是否受支持,然后下载适合的 ClickHouse 二进制文件。

备注

我们建议您在一个新的空子目录中运行下面的命令,因为一些配置文件将在初次运行 ClickHouse 服务器时在二进制文件所在的目录中创建。

您应该会看到:

在这一阶段,您可以忽略提示运行 install 命令。

备注

对于 Mac 用户:如果您遇到无法验证二进制文件开发者的错误,请参考 "修复 MacOS 中的开发者验证错误"

启动服务器

运行以下命令以启动 ClickHouse 服务器:

您应该会看到终端日志不断输出。这是预期的。在 ClickHouse 中,默认日志级别 设置为 trace 而非 warning

启动客户端

使用 clickhouse-client 连接到您的 ClickHouse 服务。打开一个新终端,切换到您的 clickhouse 二进制文件保存的目录,并运行以下命令:

您应该看到一个微笑的图标,表示您已连接到运行在 localhost 上的服务:

创建表

使用 CREATE TABLE 定义一个新表。典型的 SQL DDL 命令在 ClickHouse 中有效,但有一个额外要求——ClickHouse 中的表需要一个 ENGINE 子句。使用 MergeTree 来利用 ClickHouse 的性能优势:

插入数据

您可以使用熟悉的 INSERT INTO TABLE 命令与 ClickHouse 交互,但重要的是要理解,每次向 MergeTree 表插入数据都会在存储中创建一个我们称之为 part 的部分。这些部分随后会在后台通过 ClickHouse 合并。

在 ClickHouse 中,我们尝试一次批量插入大量行(数量可达到数万甚至数百万),以尽量减少需要在后台处理的 parts 的数量。

在本指南中,暂时不必担心这个问题。运行以下命令以向您的表中插入几行数据:

查询您的新表

您可以像与任何 SQL 数据库一样编写 SELECT 查询:

注意,响应以良好的表格格式返回:

插入您自己的数据

下一步是将您自己的数据导入 ClickHouse。我们有很多 表函数集成方案 用于数据摄取。下面的选项卡中提供了一些示例,或者您可以查看我们的 Integrations 页面,以获取与 ClickHouse 集成的技术的详细列表。

使用 s3 表函数 从 S3 读取文件。这是一个表函数——意味着结果是一个可以:

  1. 作为 SELECT 查询的源(允许您运行临时查询并将数据保留在 S3 中),或者...
  2. 将结果表插入到 MergeTree 表中(当您准备将数据移动到 ClickHouse 时)

一个临时查询的示例:

移动数据到 ClickHouse 表的示例如下,其中 nyc_taxi 是一个 MergeTree 表:

查看我们的 AWS S3 文档页面 以获取有关如何使用 S3 的更多详细信息和示例。


探索

  • 查看我们的 核心概念 部分,了解 ClickHouse 的一些基本原理。
  • 查看 高级教程,该教程对 ClickHouse 的关键概念和功能进行了更深入的探讨。
  • 通过我们在 ClickHouse Academy 的免费的按需培训课程继续您的学习。
  • 我们有一个 示例数据集 的列表,附有插入它们的说明。
  • 如果您的数据来自外部源,请查看我们的 集成指南集合,以了解如何连接消息队列、数据库、管道等。
  • 如果您使用的是 UI/BI 可视化工具,请查看 连接 UI 到 ClickHouse 的用户指南
  • 关于 主键 的用户指南包含了您需要了解的所有内容,以及如何定义主键。