跳转到主要内容
你可以使用 clickhouse-client 将本地文件流式导入到你的 ClickHouse 服务中。这样你就能借助 ClickHouse 众多强大且便捷的函数 对数据进行预处理。下面来看一个示例……
  1. 假设我们有一个名为 comments.tsv 的 TSV 文件,其中包含一些 Hacker News 评论,且表头行包含列名。插入数据时,你需要指定一种输入格式,在本例中是 TabSeparatedWithNames
  1. 让我们为 Hacker News 数据创建表:
  1. 我们想将 author 列转换为小写,这可以通过 lower 函数 轻松实现。我们还希望将 comment 字符串拆分为多个标记,并将结果存储到 tokens 列中,这可以使用 extractAll 函数 完成。你可以在一条 clickhouse-client 命令中完成所有这些操作——注意 comments.tsv 文件是如何通过 < 运算符重定向到 clickhouse-client 的:
这里的 input 函数很有用,因为它让我们能够在将数据 insert 到 hackernews 表的同时对其进行转换。input 的 argument 是传入原始数据的 format,你会在许多其他 table function 中看到类似的用法 (即需要为传入数据指定 schema) 。
  1. 就这样!数据已写入 ClickHouse:
结果如下:
  1. 另一种方法是使用 cat 之类的工具将文件内容传给 clickhouse-client。例如,以下命令与使用 < 运算符的效果相同:
如需了解如何在本地操作系统上安装 clickhouse-client 的详细信息,请访问 clickhouse-client 文档页面
最后修改于 2026年6月10日