首页 > 其他分享 >001.clickhouse-创建库表

001.clickhouse-创建库表

时间:2023-02-06 20:44:13浏览次数:55  
标签:ads cluster -- tr default 001 库表 id clickhouse

clickhouse登录-多行模式 clickhouse-client --host=x.x.x.x --port=9000 --user=xxxx --password=xxxx -mn   clickhouse 分普通表创建  

CREATE TABLE default.tmp_ads_tr_order_info
(
 id                         Int64                         comment '订单id         '
,tenant_id                  Int64                         comment '租户ID         '
,instance_id                Nullable(Int64)               comment '实例id         '
,delivery_fee_amount        Nullable(Decimal(18,2))       COMMENT '配送费'             
,commision_amount           Nullable(Decimal(18,2))       COMMENT '平台佣金'           
,receiver_address           Nullable(String)              COMMENT '配送地址'           
,remark                     Nullable(String)              COMMENT '备注'               
,dt                         Int32
)
ENGINE = MergeTree
PARTITION BY dt
ORDER BY (tenant_id, dt)
SETTINGS index_granularity = 8192

 

 

clickhouse 分布式表操作 https://blog.csdn.net/weixin_32265569/article/details/113796490  
1.
-- 创建新的本地表 _local
-- 注意:
-- ReplicatedMergeTree引擎族接收两个参数:
--     ZooKeeper中该表相关数据的存储路径。
--     该路径必须在/clickhouse目录下,否则后续可能因为ZooKeeper配额不够导致数据插入失败。
--     为了避免不同表在ZooKeeper上数据冲突,目录格式必须按照如下规范填写:
--     /clickhouse/tables/{shard}/default/test,其中/clickhouse/tables/{shard}为固定值,default为数据库名,test为创建的表名。
--     副本名称,一般用{replica}即可。

CREATE TABLE IF NOT EXISTS tmp_ads_tr_order_info_local  ON CLUSTER default_cluster(
 id                         Int64                         comment '订单id         '
,tenant_id                  Int64                         comment '租户ID         '
,instance_id                Nullable(Int64)               comment '实例id         '
,delivery_fee_amount        Nullable(Decimal(18,2))       COMMENT '配送费'             
,commision_amount           Nullable(Decimal(18,2))       COMMENT '平台佣金'           
,receiver_address           Nullable(String)              COMMENT '配送地址'           
,remark                     Nullable(String)              COMMENT '备注'               
,dt                         Int32
)
ENGINE = ReplicatedMergeTree('/clickhouse/tables/{shard}/default/tmp_ads_tr_order_info_local', '{replica}')
PARTITION BY dt
ORDER BY (tenant_id,dt)
SETTINGS index_granularity = 8192;

2.
-- 删除之前的本地表 分布式表
    drop table tmp_ads_tr_order_info_local on cluster default_cluster;
    drop table tmp_ads_tr_order_info on cluster default_cluster;

3.
-- 创建分布式表 
-- 分布式表一般加_all,
--  第一个参数是集群名称
--  第二个参数是数据库名称
--  第三个参数是对应的本地表
--  第四个参数是随机分布数据

-- Distributed引擎需要以下几个参数:
--     default_cluster_1为查看ClickHouse服务cluster等环境参数信息中2查询到的cluster集群标识符。
--     default本地表所在的数据库名称。
--     test为本地表名称,该例中为2中创建的表名。
--     (可选的)分片键(sharding key)
--     该键与config.xml中配置的分片权重(weight)一同决定写入分布式表时的路由,即数据最终落到哪个物理表上。它可以是表中一列的原始数据(如site_id),也可以是函数调用的结果,如上面的SQL语句采用了随机值rand()。注意该键要尽量保证数据均匀分布,另外一个常用的操作是采用区分度较高的列的哈希值,如intHash64(user_id)。

CREATE TABLE IF NOT EXISTS default.tmp_ads_tr_order_info ON CLUSTER default_cluster AS default.tmp_ads_tr_order_info_local
ENGINE = Distributed(default_cluster, default, tmp_ads_tr_order_info_local, rand());

 

 分布式表删除数据 本地表并指定集群名称
    alter table tmp_ads_tr_order_info_local  ON CLUSTER default_cluster delete    where dt >= toYYYYMMDD(addDays(toDate('${entryDate}'), -30)) and dt< ${abortDateValue} 

 删除分布式表 
    drop table tmp_ads_tr_order_info_local on cluster default_cluster;
    drop table tmp_ads_tr_order_info on cluster default_cluster;

 

 

标签:ads,cluster,--,tr,default,001,库表,id,clickhouse
From: https://www.cnblogs.com/star521/p/17096654.html

相关文章

  • ClickHouse(12)ClickHouse合并树MergeTree家族表引擎之AggregatingMergeTree详细解析
    目录建表语法查询和插入数据数据处理逻辑ClickHouse相关资料分享AggregatingMergeTree引擎继承自MergeTree,并改变了数据片段的合并逻辑。ClickHouse会将一个数据片段内所......
  • clickhouse http 导入数据
    curl --data-binary@localpath'http://host:port?database=databasename&date_time_input_format=best_effort&query=INSERT%20INTO%20tablename%20%20FORMAT%20CSV'-......
  • Server-基于Sokcet(C#)长连接架构游戏服务器+数据库表结构设计
    由于项目需要,公司的后端迟迟无法就位,自己便利用C#搭建了一套简单的服务器项目。整个服务器的框架使用到MVC设计思想:涉及到的系统有:登录、注册、房间等废话不多说,上......
  • 001. SQL慢查询排查(字段类型不一致)
    目录​​一:背景​​​​二:排查过程​​​​2.1:SQL慢查询定位​​​​2.2:Python层面分析将String翻译成Int类型的原因​​​​2.3:Python进行SQL执行时间检测出现的问题......
  • ClickHouse SQL调优及执行计划分析
    ClickHouse在做SQL查询时要尽量遵循的原则1.大表在左,小表在右,否则会造成右表加载数据量太大,大量消耗内存资源;2.如果join的右表为大表,则需要将右表写成子查询,在子查询中将......
  • 查看ClickHouse中某个表的详情
    进入终端:sudodockerexec-itmsun-clickhouseclickhouse-client--port10000--user用户--password密码-mselect  database,  table,  formatRead......
  • ClickHouse的语句优化策略
    一使用执行计划​​ClickHouse官网执行计划详解​​平常写sql的时候,有时候因为我们的有限的水平,写出的sql很差,ck为我们提供了执行计划查询的方法,通过此,我们可以优化我们的......
  • Swift开篇001->新建Swift工程
    最近看了点​​Swift的教程​​,在此做个笔记,那就从Xcode新建一个Swift工程开始吧​​File->New->Project​​​​OSX->Application->CommandLineTool​​​​填......
  • 001-单仓和多仓
    参考来源从微信后端仓库发展史谈谈单仓和多仓小仓核心理念:趋势:代码仓库应该被合理化为而非趋于整合;一致性:代码仓库的划分应该是有标准的;松耦合:仓库不应该是和组织......
  • 001.Spring的介绍
    1.Spring的介绍     ......