一直在慢慢的摸索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. python线程的同步事件Event

    Event对象: 用于线程间的通信,某个线程需要根据其他线程的状态来判断自己的下一步操作. Event内部定义了一个全局变量:_flag,默认为False. 当_flag = False时,会阻塞当前 ...

  2. jsp获取当前项目跟路径

    在jsp中获取当前项目的根路径: <% String basePath = request.getScheme() + "://"+ request.getServerNam ...

  3. linux 硬盘

    df -hT 查看格式 各种文件 mount命令 可以挂载那些块设备:光盘.磁盘分区.U盘 光盘:文件系统:iso9660 iso文件文件系统:iso9660 iso文件可以进行挂载的 mount c ...

  4. Mysql相关存储函数,函数,游标

    https://www.cnblogs.com/zhanglei93/p/6437867.html >>>>请进入

  5. 7 week work

    Dom和Bom的起源.方法.内容.应用. Dom:起源:首先听到Virtual DOM这个概念应该来自于React,并且在不了解时觉得这个概念是一个逼格特别高的词.其实任何技术的诞生都是有相应的历史的 ...

  6. Android中屏幕保持唤醒

    1.锁的类型 PowerManager中各种锁的类型对CPU .屏幕.键盘的影响: PARTIAL_WAKE_LOCK : 保持CPU 运转,屏幕和键盘灯有可能是关闭的. SCREEN_DIM_WAK ...

  7. 【转载】sql monitor

    来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/27067062/viewspace-2129635/ SQL Monitor Report 1. SQL Monit ...

  8. Entity Framework 自动生成代码 如何用继承

    分部类 用接口

  9. MySQL--BNL/ICP/MRR/BKA

    #======================================================##MySQL关联查询算法:BNL(Block Nested-Loop)ICP(Index ...

  10. 如何用kaldi做孤立词识别二

    基本模型没有变化,主要是调参,配置: %WER     65%  下降到了     15% 后面再继续优化... Graph compilation finish!steps/decode.sh -- ...