一直在慢慢的摸索clickhouse,之前是用rpm包安装的,没有发现clickhouse-local,最近在centos上面编译成功以后发现多了clickhouse-local,那么这个玩意是什么鬼呢?官方的说法:

Application clickhouse-local can fast processing of local files that store tables without resorting to deployment and configuration clickhouse-server

原来就是可以直接读取本地的文件进行查询,不用部署clickhouse-server。那么下面进行测试。准备一个测试文本:

[root@db_server_yayun_01 ~]# cat a.txt
"yy",""
"bb",""
[root@db_server_yayun_01 ~]#

直接看命令,后面解释

[root@db_server_yayun_01 ~]# clickhouse-local -N test_table  --file='a.txt' --input-format=CSV -S "user String, age Int32" -q "SELECT * from test_table FORMAT Pretty"
Read rows, 30.00 B in 0.001 sec., rows/sec., 28.03 KiB/sec.
┏━━━━━━┳━━━━━┓
┃ user ┃ age ┃
┡━━━━━━╇━━━━━┩
│ yy │ │
├──────┼─────┤
│ bb │ │
└──────┴─────┘
[root@db_server_yayun_01 ~]#

可以看见查询出来了。

-N 指定表名,如果不指定默认是table

--file 指定读取的文件

--input-format=CSV,指定读取文件的格式。这里是CSV格式

-S 定义表的字段以及类型

-q 指定查询语句。

更多的参数可以运行clickhouse-local --help

上面是简单的测试,下面来试试官方文档提到的美国民用航空数据

[root test_clickhouse_data]$ /root/clickhouse-local -N ontime --file='On_Time_On_Time_Performance_2017_1.csv' --input-format=CSV -S "Year String,  Quarter String,  Month String,  DayofMonth String,  DayOfWeek String,  FlightDate Date,  UniqueCarrier FixedString(7),  AirlineID String,  Carrier FixedString(2),  TailNum String,  FlightNum String,  OriginAirportID String,  OriginAirportSeqID String,  OriginCityMarketID String,  Origin FixedString(5),  OriginCityName String,  OriginState FixedString(2),  OriginStateFips String,  OriginStateName String,  OriginWac String,  DestAirportID String,  DestAirportSeqID String,  DestCityMarketID String,  Dest FixedString(5),  DestCityName String,  DestState FixedString(2),  DestStateFips String,  DestStateName String,  DestWac String,  CRSDepTime String,  DepTime String,  DepDelay String,  DepDelayMinutes String,  DepDel15 String,  DepartureDelayGroups String,  DepTimeBlk String,  TaxiOut String,  WheelsOff String,  WheelsOn String,  TaxiIn String,  CRSArrTime String,  ArrTime String,  ArrDelay String,  ArrDelayMinutes String,  ArrDel15 String,  ArrivalDelayGroups String,  ArrTimeBlk String,  Cancelled String,  CancellationCode FixedString(1),  Diverted String,  CRSElapsedTime String,  ActualElapsedTime String,  AirTime String,  Flights String,  Distance String,  DistanceGroup String,  CarrierDelay String,  WeatherDelay String,  NASDelay String,  SecurityDelay String,  LateAircraftDelay String,  FirstDepTime String,  TotalAddGTime String,  LongestAddGTime String,  DivAirportLandings String,  DivReachedDest String,  DivActualElapsedTime String,  DivArrDelay String,  DivDistance String,  Div1Airport String,  Div1AirportID String,  Div1AirportSeqID String,  Div1WheelsOn String,  Div1TotalGTime String,  Div1LongestGTime String,  Div1WheelsOff String,  Div1TailNum String,  Div2Airport String,  Div2AirportID String,  Div2AirportSeqID String,  Div2WheelsOn String,  Div2TotalGTime String,  Div2LongestGTime String,  Div2WheelsOff String,  Div2TailNum String,  Div3Airport String,  Div3AirportID String,  Div3AirportSeqID String,  Div3WheelsOn String,  Div3TotalGTime String,  Div3LongestGTime String,  Div3WheelsOff String,  Div3TailNum String,  Div4Airport String,  Div4AirportID String,  Div4AirportSeqID String,  Div4WheelsOn String,  Div4TotalGTime String,  Div4LongestGTime String,  Div4WheelsOff String,  Div4TailNum String,  Div5Airport String,  Div5AirportID String,  Div5AirportSeqID String,  Div5WheelsOn String,  Div5TotalGTime String,  Div5LongestGTime String,  Div5WheelsOff String,  Div5TailNum String" -q "SELECT DestCityName, uniqExact(OriginCityName) AS u FROM ontime GROUP BY DestCityName ORDER BY u DESC LIMIT 10 FORMAT Pretty"
Read rows, 499.62 MiB in 3.423 sec., rows/sec., 145.97 MiB/sec.
┏━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━┓
┃ DestCityName ┃ u ┃
┡━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━┩
│ Atlanta, GA │ │
├───────────────────────┼─────┤
│ Chicago, IL │ │
├───────────────────────┼─────┤
│ Denver, CO │ │
├───────────────────────┼─────┤
│ Dallas/Fort Worth, TX │ │
├───────────────────────┼─────┤
│ Minneapolis, MN │ │
├───────────────────────┼─────┤
│ Houston, TX │ │
├───────────────────────┼─────┤
│ Detroit, MI │ │
├───────────────────────┼─────┤
│ Phoenix, AZ │ │
├───────────────────────┼─────┤
│ Salt Lake City, UT │ │
├───────────────────────┼─────┤
│ Newark, NJ │ │
└───────────────────────┴─────┘

当然速度肯定比不上导入以后查询的速度。不过还是非常方便。

ClickHouse之clickhouse-local的更多相关文章

  1. ClickHouse(02)ClickHouse架构设计介绍概述与ClickHouse数据分片设计

    ClickHouse核心架构设计是怎么样的?ClickHouse核心架构模块分为两个部分:ClickHouse执行过程架构和ClickHouse数据存储架构,下面分别详细介绍. ClickHouse执 ...

  2. ClickHouse(03)ClickHouse怎么安装和部署

    本文会介绍如何安装和部署ClickHouse,官方推荐的几种安装模式,以及安装之后如何启动,ClickHouse集群如何配置等. 简单来说,ClickHouse的搭建流程如下: 环境检查,环境依赖安装 ...

  3. ClickHouse(05)ClickHouse数据类型详解

    ClickHouse属于分析型数据库,ClickHouse提供了许多数据类型,它们可以划分为基础类型.复合类型和特殊类型.其中基础类型使ClickHouse具备了描述数据的基本能力,而另外两种类型则使 ...

  4. ClickHouse(07)ClickHouse数据库引擎解析

    目录 Atomic 建表语句 特性 Table UUID RENAME TABLES DROP/DETACH TABLES EXCHANGE TABLES ReplicatedMergeTree in ...

  5. ClickHouse(10)ClickHouse合并树MergeTree家族表引擎之ReplacingMergeTree详细解析

    目录 建表语法 数据处理策略 资料分享 参考文章 MergeTree拥有主键,但是它的主键却没有唯一键的约束.这意味着即便多行数据的主键相同,它们还是能够被正常写入.在某些使用场合,用户并不希望数据表 ...

  6. ClickHouse 分布式高可用集群搭建(转载)

    一.ClickHouse安装方式: 源码编译安装 Docker安装 RPM包安装 为了方便使用,一般采用RPM包方式安装,其他两种方式这里不做说明. 二.下载安装包 官方没有提供rpm包,但是Alti ...

  7. QQ音乐PB级ClickHouse实时数据平台架构演进之路

    导语 | OLAP(On-Line Analytical Processing),是数据仓库系统的主要应用形式,帮助分析人员多角度分析数据,挖掘数据价值.本文基于QQ音乐海量大数据实时分析场景,通过Q ...

  8. 基于腾讯云存储COS的ClickHouse数据冷热分层方案

    一.ClickHouse简介 ClickHouse是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS),支持PB级数据量的交互式分析,ClickHouse最初是为YandexMetrica ...

  9. 海量数据存储ClickHouse

    ClickHouse介绍 ClickHouse的由来和应用场景 俄罗斯Yandex在2016年开源,使用C++编写的列式存储数据库,近几年在OLAP领域大范围应用 官网:https://clickho ...

  10. 记一次 ClickHouse 性能测试

    前言 在工作场景中,我们会采集工厂设备数据用于智能控制,数据的存储用了 InfluxDB,随着数据规模越来越大,InfluxDB 的性能越来越差,故考虑引入 ClickHouse 分担 InfluxD ...

随机推荐

  1. VMware Workstation:安装windows xp系统

    https://blog.csdn.net/nicergj/article/details/83651603

  2. 虚拟机运行docker后映射端口到windows开发机

    1.运行容器(以Oracle-xe-11g为例) 运行容器时先在虚拟机内映射端口 docker run -d -p 9090:8080 -p 1521:1521 wnameless/oracle-xe ...

  3. LOJ-10091(强连通分量)

    题目链接:传送门 思路: 多少头牛收到所有牛头牛的喜欢,喜欢具有传递性,所以将互相喜欢的牛视为一个点,就是有向图的 缩点,收到所有牛的喜欢要求这个“点”没有出度,所以缩点之后统计所有没有出度的点就是结 ...

  4. Blueking bk 蓝鲸开发环境搭建

    首先根据文档安装各种东西 http://docs.bk.tencent.com/develop_center/ops/unified.html#installation 完后在在vagrantfile ...

  5. SFTP文件服务器的搭建

    由于公司项目的需要,需要自己搭建一个SFTP文件服务器,来实现不同IP服务器之间文件的传输: 应用的场景:由于需要缓解服务器的压力,需要对服务进分离,分别放置在不同IP服务器上: 首先提供一个SFTP ...

  6. PostGIS集群

    postgresql集群:https://bbs.csdn.net/topics/390896906?page=1  https://blog.csdn.net/s465689853/article/ ...

  7. 打开xmind 8 输入序列号

    XAka34A2rVRYJ4XBIU35UZMUEEF64CMMIYZCK2FZZUQNODEKUHGJLFMSLIQMQUCUBXRENLK6NZL37JXP4PZXQFILMQ2RG5R7G4QN ...

  8. Python 每日随笔

    使用python已经有3个月了,带总体来说,还是python菜鸟,今天发现了一个好玩的东西,记录下来,有时间深入研究一下. 关于Metaclass 不得不说python 的元类很有意思,可以做很多有趣 ...

  9. springboot动态修改日志级别+权限认证

    1. springboot动态修改日志级别+权限认证 1.1. 需求 网上找到的动态修改日志级别的方式,基本都是没有权限验证的,或者特地关闭权限验证,但也没给出加上验证的解决方式 修改日志等级也是一个 ...

  10. rabbitmq在ios中实战采坑

    1. rabbitmq在ios中实战采坑 1.1. 问题 ios使用rabbitmq连接,没过多久就断开,并报错.且用android做相同的步骤并不会报错,错误如下 Received connecti ...