博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
列式数据库~clickhouse日常管理
阅读量:6875 次
发布时间:2019-06-26

本文共 1394 字,大约阅读时间需要 4 分钟。

clickhouse日常管理

一 变量相关
  1 查看变量
     system.setting相关表
  2 设置变量
     set variables= 请注意这里是session级别,如果想永久生效,必须修改配置文件
  3 变量文件分类
     config.xml
     说明 config.xml针对的是server级别的限制,包括不仅限于内存,复制集,分布式,数据目录等设置
     user.xml
     说明 user.xml针对的是用户级别的限制,主要包括用户增删查改的内存控制参数
 4 配置文件操作便利
   clickhouse会自动扫描,可以在配置文件中操作完进行查询.不用重启服务
5 配置变量优化
  user变量优化
  1 内存相关
  max_memory_usage ck整体会话限制,包括全部链接的全部会话内存使用量上限 默认10G
  max_bytes_before_external_group_by group by占用内存->针对查询 (如果需要使用max_bytes_before_external_group_by,建议将max_memory_usage设置为max_bytes_before_external_group_by大小的两倍)
  min_insert_block_size_rows, min_insert_block_size_bytes 当插入导致内存溢出时,可尝试调小
  config相关
  1 bind本地IP,调整datadir

  2 allow_experimental_multiple_joins_emulation  最新版本支持多表join参数

二 系列问题

     数据同步分为两种场景

    1 实时同步mysql数据

       方案 : canal+kafka 实时消费binlog进行插入,在kafka进行批量操作封装

   2 异步同步mysql数据

        方案1 利用ck官方mysql driver进行同步

        方案2  直接读取hdfs文件进行同步

    总结:尽量避免单条插入而选择批量操作,提高ck整体效率

   3 关于 update/delete操作

   clickhouse关于update/delete操作是异步后台进行,而且成本很高,所以尽量减少和避免进行update/delete操作

   通过 select * from system.mutations    可以判断后台操作进行是否完成 

   语法eg alter table update table column='' where 条件

  4  ck关于DDL操作的一些限制     

  尽量不要进行 modify column,更改列的操作代价是非常高昂的

  5  程序如何调用clickhouse

      使用jdbc调用 ClickHouse驱动包,最后编写测试类,可参考

      https://blog.csdn.net/zwq_zwq_zwq/article/details/80871518 样例

 三 code相关错误

       1  Code: 32, e.displayText() = DB::Exception: Attempt to read after eof: while receiving packet from 127.0.0.1:9000, Stack trace:

转载于:https://www.cnblogs.com/danhuangpai/p/10532860.html

你可能感兴趣的文章
前端UI框架总结
查看>>
Atom 初识
查看>>
通向架构师的道路(第一天)之Apache整合Tomcat - lifetragedy的专栏 - 博客频道 - CSDN.NET...
查看>>
Javascript创建对象的7种模式
查看>>
Shell工作笔记01
查看>>
项目、软件开发过程中版本术语
查看>>
CSS实现背景透明,文字不透明(各浏览器兼容)
查看>>
【转】[大学引导]超级链接、字体颜色、音乐播放公式
查看>>
T-SQL中INSERT、UPDATE
查看>>
Linux下Nginx服务器配置Modsecurity实现Web应用防护系统
查看>>
用 zabbix 监测 snmptrap 的主动告警功能
查看>>
HDU1717 小数化分数2
查看>>
delphi 导入excel
查看>>
Linux下 FTP 常见错误 500 530等错误解决方法
查看>>
oracle asm
查看>>
VC基于单文档opengl框架
查看>>
openSUSE13.2安装ruby和rails
查看>>
python 高级函数
查看>>
F.Cards with Numbers
查看>>
简单入门Buffer
查看>>