跳转到主内容
跳转到主内容

在 NixOS 上安装 ClickHouse

ClickHouse 可在 Nixpkgs 仓库中获取,并可在 LinuxmacOS 上通过 Nix 安装。

查看建议

在安装 ClickHouse 之前,请先查看以下建议:

  • 交换空间: 在生产环境中禁用操作系统的交换文件。
  • 磁盘空间: 安装 ClickHouse 二进制文件至少需要 2.5 GB 的磁盘空间。
  • 网络: 对于分布式部署 (集群) ,请使用至少 10 Gbit 的网络连接。对于处理包含大量中间数据的分布式查询以及进行数据复制,网络带宽至关重要。

估算存储需求

要估算数据所需的磁盘空间,请执行以下操作:

  1. 估算数据量: 取一份数据样本,计算平均每行大小,再乘以计划存储的行数。
  2. 应用压缩系数: 将一份样本加载到 ClickHouse 中,比较原始数据大小与表的存储大小。例如,Clickstream 数据通常可压缩 6-10 倍。
  3. 将副本计算在内: 如果计划将数据存储在多个副本中,请将估算出的数据量乘以副本数量。

有关更详细的硬件要求,请参阅"容量规划与硬件建议"

使用 Nix 安装 ClickHouse

可以使用 Nix 安装 ClickHouse,而无需将其永久添加到系统中:

# 安装最新稳定版本
nix shell nixpkgs#clickhouse

# 或安装 LTS 版本
nix shell nixpkgs#clickhouse-lts

这会在当前 shell 会话中提供 clickhouse 可执行文件。

  • nixpkgs#clickhouse 软件包提供最新稳定版本。
  • nixpkgs#clickhouse-lts 软件包提供长期支持 (LTS) 版本。
  • 这两个软件包均可在 Linux 和 macOS 上使用。

永久安装

要在系统上永久安装 ClickHouse:

对于 NixOS 用户,在 configuration.nix 中添加:

environment.systemPackages = with pkgs; [
  clickhouse
];

然后重建系统:

sudo nixos-rebuild switch

对于非 NixOS 用户,使用 Nix profile 安装:

# 安装最新稳定版本
nix profile install nixpkgs#clickhouse

# 或安装 LTS 版本
nix profile install nixpkgs#clickhouse-lts

启动 ClickHouse 服务器

安装完成后,可以启动 ClickHouse 服务器:

clickhouse-server

默认情况下,服务器将使用基础配置启动,并监听 localhost:9000

在 NixOS 上用于生产环境时,建议将 ClickHouse 配置为系统服务。可参考 NixOS 手册 了解可用的配置选项。

启动 ClickHouse 客户端

要连接到 ClickHouse 服务器,在新终端中运行:

clickhouse-client

关于 Nix 软件包

Nixpkgs 中的 ClickHouse 软件包包括:

  • clickhouse-server - ClickHouse 数据库服务器
  • clickhouse-client - 用于连接 ClickHouse 的命令行客户端
  • clickhouse-local - 在本地文件上运行 SQL 查询的工具
  • 其他 ClickHouse 实用工具

有关 Nixpkgs 中 ClickHouse 软件包的更多信息,请参阅: