全部产品
Search
文档中心

云数据库 ClickHouse:导入数据

更新时间:Feb 23, 2024

本文以导入On Time数据集至clickhouse_demo数据库的分布式表ontime_local_distributed为例,介绍如何使用客户端clickhouse-client工具导入数据到云数据库ClickHouse

前提条件

  1. 已完成快速入门系列的如下步骤。

    1. 新建集群

    2. 创建账号

    3. 设置白名单

      说明

      您需要将clickhouse-client所在服务器的IP地址添加到云数据库ClickHouse集群的白名单中。

    4. 连接集群

    5. 创建数据库

    6. 创建表

  2. 已安装与云数据库ClickHouse集群版本对应的clickhouse-client工具。下载链接,请参见clickhouse-client

操作步骤

  1. 单击On Time Data下载On Time数据集。

  2. 解压下载的On Time数据集。

    unzip ontime-data(1).zip
  3. 连接云数据库ClickHouse集群并导入数据到云数据库ClickHouse

    在clickhouse-client客户端的安装目录下执行如下命令。

    ./clickhouse-client --host=<host> --port=<port> --user=<user> --password=<password> --query="INSERT INTO <ClickHouse_table> FORMAT CSVWithNames" < ontime-data.csv

    参数说明如下。

    参数

    说明

    host

    外网地址或VPC地址,您可以在集群信息页面查看。

    如果clickhouse-client所在服务器与云数据库ClickHouse集群在同一VPC内,您可以使用VPC地址。否则,请使用外网地址。

    port

    TCP端口号,您可以在集群信息页面查看。

    user

    您通过云数据库ClickHouse控制台创建的数据库账号。

    password

    数据库账号对应的密码。

    ClickHouse_table

    要导入数据的云数据库ClickHouse表。

    示例语句如下。

    ./clickhouse-client --host=cc-bp16qwvp7hy8i****.public.clickhouse.ads.aliyuncs.com --port=3306 --user=test --password=123456Aa --query="INSERT INTO clickhouse_demo.ontime_local_distributed FORMAT CSVWithNames" < ontime-data.csv
  4. 查询数据,验证数据是否导入成功。

    SELECT OriginCityName, count(*) AS flights
    FROM ontime_local_distributed
    GROUP BY OriginCityName
    ORDER BY flights DESC
    LIMIT 10; 

    查询结果如下。

       OriginCityName      │ flights  
     ──────────────────────│────────
       Chicago, IL         │  24114    
       Atlanta, GA         │  22001  
     Dallas/Fort Worth, TX │  17340   
       Los Angeles, CA     │  14494  
       Denver, CO          │  14170  
       New York, NY        │  14075   
       Washington, DC      │  11985  
       Houston, TX         │  11483    
       San Francisco, CA   │  11259  
       St. Louis, MO       │  10721