• 一百八十九、ClickHouse——在海豚调度器中执行ClickHouse建库建表语句


    一、目的

    由于Hive处理好的结果数据要同步到ClickHouse中,因此需要在在海豚调度器中执行ClickHouse的ADS层的建库建表语句

    二、执行步骤

    (一)情形一:ClickHouse和海豚在同一服务器上

    1、直接在海豚中创建执行SQL文件脚本的工作流

    (1)第一步,在资源中心上传ADS层的建库建表SQL文件

    (2)第二步,在项目里建工作流,添加运行SQL文件的脚本

    #! /bin/bash
    source /etc/profile

    clickhouse-client --user default --password hurys@123 -d default --multiquery

    (3)第三步,保存并执行工作流

    (二)情形二:ClickHouse和海豚不在同一服务器上

    1、在ClickHouse数据源里执行建库建表SQL语句(一个任务一条SQL

    (1)第一步,在海豚中创建ClickHouse的数据源

    (2)第二步,创建海豚工作流,执行建库建表SQL

    注意:建库和建表分开,然后一个任务一条建表SQL

    A、建库案例

    create database if not exists hurys_dc_ads;

    B、建表案例

    --1.2 统计数据流量表——动态分区——1小时周期
    create  table  if not exists  hurys_dc_ads.ads_statistics_volume_1hour(
        device_no       String                   comment '设备编号',
        name            Nullable(String)         comment '场景',
        lane_no         Nullable(int)            comment '车道编号',
        lane_direction  Nullable(String)         comment '车道流向',
        section_no      Nullable(Float32)        comment '断面编号',
        coil_no         Nullable(Float32)        comment '线圈编号',
        direction       Nullable(String)         comment '雷达朝向',
        sum_volume_hour Nullable(int)            comment '每小时总流量',
        start_time      DateTime                 comment '开始时间',
        end_time        DateTime                 comment '结束时间',
        day             Date                     comment '日期'
    )ENGINE = MergeTree
    PARTITION BY (day)
    PRIMARY KEY day
    order by day
    TTL day + toIntervalMonth(12)
    SETTINGS index_granularity = 8192;

    (3)第三步,保存并执行工作流

    对于海豚调度器和ClickHouse在不在同一服务器上,ADS层建库建表语句会有不同的工作流配置方式。

    注意,由于海豚调度器中的ClickHouse数据源,一个任务只能一条SQL语句,即一个;  因此不能把多个建表SQL放在一个任务中,否则会运行报错,因此海豚中的ClickHouse没有区分分段执行

  • 相关阅读:
    ubuntu莫名的 系统出现文件系统只读
    【计算机网络】——数据链路层(应用:局域网、广域网、设备 )
    DS18B20 数字温度传感器实验
    进化策略算法
    D. Non-zero Segments(前缀和)
    考研大作文模板与实战(图表为主+部分图画)
    开源浪潮下的共创与挑战:开发者视角的深度剖析
    pytorch loss及其梯度
    nnunetv2训练报错 ValueError: mmap length is greater than file size
    【LeetCode每日一题:808.分汤~~~边界条件的特判+记忆化搜索】
  • 原文地址:https://blog.csdn.net/tiantang2renjian/article/details/133853878