• ClickHouse快速上手


    简介

    ClickHouse是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS)

    官网(https://clickhouse.com/docs/zh)给出的定义,其实没看懂

    特性

    1. ClickHouse支持一种基于SQL的声明式查询语言,它在许多情况下与ANSI SQL标准相同。使用时和MySQL有点相似,还是比较友好的。
    2. 真正的列式数据库管理系统
    3. 数据压缩
    4. 多服务器分布式处理
    5. 数据的磁盘存储
    6. 多核心并行处理
    7. 多服务器分布式处理

    使用

    这里通过Linux系统说明

    1. 客户端命令

    ClickHouse安装完成后,直接输入这个命令登录进入客户端

    clickhouse-client
    
    • 1

    在这里插入图片描述

    2.查看有哪些的数据库

    SHOW DATABASES;
    
    • 1

    在这里插入图片描述

    3.创建数据库

    CREATE DATABASE my_test;
    
    • 1

    4.切换数据库

    USE my_test;
    
    • 1

    5.创建表

    CREATE TABLE gps_data_store
    (
      lic_num String,  
      sim_no String,  
      send_time DateTime64(3, 'Asia/Shanghai'),  
      trace_type Int8,  
      altitude Float64,  
      longitude Float64,  
      latitude Float64,  
      alarm_status String,  
      int_alarm_status Int32,  
      speed Float64,  
      direction Int16,  
      dept_id Int32,  
      dept_name String,  
      vehicle_id Int32,  
      driver_name String,  
      status String,  
      mileage Float64,  
      is_drift Bool,  
      valid Bool,  
      vehicle_color Int8,  
      vehicle_type String,  
      vt_code String,  
      video_alarm0x14 String,  
      video_alarm0x15 String,  
      video_alarm0x16 String,  
      video_alarm0x17 String,  
      month_mileage Float64,  
      day_mileage Float64,  
      create_time DateTime64(3, 'Asia/Shanghai'),
      is_alarm Bool,
      location Point
    ) ENGINE = MergeTree()
    order by (lic_num,send_time);
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35

    6.添加字段

    ALTER TABLE gps_data_store ADD COLUMN is_alarm Bool;
    
    • 1

    7.圆形区域查询

    SELECT lic_num,sim_no,send_time,altitude,longitude,latitude,speed FROM gps_data_store  WHERE greatCircleDistance(longitude, latitude,108.87316,34.1)<=60;
    
    • 1

    8.多边形区域查询

    -- 4个顶点顺时针
    SELECT lic_num,sim_no,send_time,altitude,longitude,latitude,speed  FROM gps_data_store  WHERE pointInPolygon((longitude, latitude), [(108.949000, 34.344761), (108.937863, 34.344761), (108.937863, 34.340604), (108.949000, 34.340604)]);
    
    • 1
    • 2
  • 相关阅读:
    基于深度学习的菠萝与果叶视觉识别及切断机构设计
    SSM整合项目—员工信息管理系统
    Linux中通配符的使用
    c和c++的强制类型转换
    设计模式连环问,你能坚持到第几问?
    Opencv中的GrabCut图像分割
    RabbitMQ基础
    设计模式:迭代器模式
    图像语义分割概述
    肖sir__mysql之多表练习题__007
  • 原文地址:https://blog.csdn.net/yuanchengmm/article/details/136192530