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

quick-start

概述

快速设置 ClickHouse。下载适合您操作系统的二进制文件,学习如何运行 ClickHouse 服务器,创建表,插入数据,并使用 ClickHouse 客户端查询您的表。

先决条件

您需要curl或其他命令行 HTTP 客户端来获取 ClickHouse 二进制文件。

下载二进制文件

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

备注

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

您应该会看到:

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

备注

对于 Mac 用户:如果您收到二进制文件的开发者无法验证的错误,请参阅 "Fix the Developer Verification Error in MacOS"

启动服务器

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

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

启动客户端

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

当其连接到在 localhost 上运行的服务时,您应该会看到一个微笑的表情:

创建表

使用 CREATE TABLE 定义新表。在 ClickHouse 中,典型的 SQL DDL 命令同样适用,唯一的补充是 ClickHouse 中的表需要一个 ENGINE 子句。使用 MergeTree 利用 ClickHouse 的性能优势:

插入数据

您可以在 ClickHouse 中使用熟悉的 INSERT INTO TABLE 命令,但重要的是要理解,每次插入 MergeTree 表时,ClickHouse 会在存储中创建一个我们称之为 part 的部分。这些部分稍后会在后台由 ClickHouse 合并。

在 ClickHouse 中,我们尽量批量插入大量行(一次数以万计或甚至数百万计),以减少后台合并所需的 parts 数量。

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

查询您的新表

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

注意响应以漂亮的表格格式返回:

插入您自己的数据

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

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

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

临时查询看起来像:

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

查看我们关于 AWS S3 文档页面的 集合,以获取更多使用 S3 与 ClickHouse 的详细信息和示例。


下一步

  • 查看我们的 核心概念 部分,了解 ClickHouse 如何在后台工作的基本原理。
  • 查看 高级教程,深入了解 ClickHouse 的关键概念和功能。
  • 通过参加我们在 ClickHouse Academy 提供的免费按需培训课程来继续学习。
  • 我们有一个 示例数据集 列表,提供如何插入它们的说明。
  • 如果您的数据来自外部来源,请查看我们的 集成指南集合 以连接到消息队列、数据库、管道等。
  • 如果您使用 UI/BI 可视化工具,请查看 连接 UI 到 ClickHouse 的用户指南
  • 主键的用户指南 [/guides/best-practices/sparse-primary-indexes.md] 提供有关主键及其定义所需的所有信息。