• 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
  • 相关阅读:
    分布式系统常见理论讲解
    作为新人,如何快速融入新团队?用好这8个点
    【毕业设计】机器学习的溢油特征提取与识别
    binutils 2.40 Linker (ld) 官方文档下载
    基于STM32的蓝牙低功耗(BLE)通信方案设计与实现
    ssm+java+vue基于微信小程序的游泳馆管理系统#毕业设计
    websocketpp的回调函数解析
    APP自动化测试-11.webview技术原理
    达梦DEM监控配置
    树莓派66/100 - 用Pico W访问互联网
  • 原文地址:https://blog.csdn.net/yuanchengmm/article/details/136192530