Clickhouse-insert 数据写入不成功问题
[应用场景]
对副本表进行 alter delete 数据后,同样的数据再进行 insert into 操作.
[问题复现]


[问题解释]
对副本表 insert 语句的数据会划分为数据块. 每个数据块会生成 block_id ,存在 zookeeper 相应表目录的 block 子目录下.根据这个 block_id 数据块会去重,对于被多次写的相同数据块(大小相同且具有相同顺序的相同行的数据块),该块仅会写入一次。所以同样的一份数据,多次 insert into 副本表,只有第一次会写入数据.
现在问题是当对这份数据进行 aleter delete 操作后.数据成功删除了,但是存在 zookeeper 上的 block_id 没有被一并删除.导致之后对这份数据进行 insert into ,会被表引擎判断为重复数据,而被略过,使数据没有落地到表里面.也就是查不出来这份数据.
[解决方案]
设置 set insert_deduplicate=0 临时关闭去重机制
找到 zookeeper 下对应的 block_id ,手动删除这个 block_id
Clickhouse-insert 数据写入不成功问题的更多相关文章
- hisql orm 框架insert数据写入教程
		hisql.net 官网(文档编写中) HiSql 源码(github) https://github.com/tansar/HiSql git clone https://github.com/ta ... 
- PHP如何通过SQL语句将数据写入MySQL数据库呢?
		1,php和MySQL建立连接关系 2,打开 3,接受页面数据,PHP录入到指定的表中 1.2两步可直接使用一个数据库链接文件即可:conn.php <?phpmysql_connect(&qu ... 
- thinkphp  数据写入
		直线电机优势 ThinkPHP的数据写入操作使用add方法,使用示例如下: $User = M("User"); // 实例化User对象 $data['name'] = 'Thi ... 
- Django上传excel表格并将数据写入数据库
		前言: 最近公司领导要统计技术部门在各个业务条线花费的工时百分比,而 jira 当前的 Tempo 插件只能统计个人工时.于是就写了个报表工具,将 jira 中导出的个人工时excel表格 导入数据库 ... 
- 关于使用Binlog和canal来对MySQL的数据写入进行监控
		先说下Binlog和canal是什么吧. 1.Binlog是mysql数据库的操作日志,当有发生增删改查操作时,就会在data目录下生成一个log文件,形如mysql-bin.000001,mysql ... 
- ClickHouse数据库数据定义手记之数据类型
		前提 前边一篇文章详细分析了如何在Windows10系统下搭建ClickHouse的开发环境,接着需要详细学习一下此数据库的数据定义,包括数据类型.DDL和DML.ClickHouse作为一款完备的D ... 
- flink-----实时项目---day07-----1.Flink的checkpoint原理分析  2. 自定义两阶段提交sink(MySQL) 3 将数据写入Hbase(使用幂等性结合at least Once实现精确一次性语义)  4 ProtoBuf
		1.Flink中exactly once实现原理分析 生产者从kafka拉取数据以及消费者往kafka写数据都需要保证exactly once.目前flink中支持exactly once的sourc ... 
- 大数据学习day34---spark14------1 redis的事务(pipeline)测试 ,2. 利用redis的pipeline实现数据统计的exactlyonce ,3 SparkStreaming中数据写入Hbase实现ExactlyOnce, 4.Spark StandAlone的执行模式,5 spark on yarn
		1 redis的事务(pipeline)测试 Redis本身对数据进行操作,单条命令是原子性的,但事务不保证原子性,且没有回滚.事务中任何命令执行失败,其余的命令仍会被执行,将Redis的多个操作放到 ... 
- 大数据学习day33----spark13-----1.两种方式管理偏移量并将偏移量写入redis  2. MySQL事务的测试  3.利用MySQL事务实现数据统计的ExactlyOnce(sql语句中出现相同key时如何进行累加(此处时出现相同的单词))4 将数据写入kafka
		1.两种方式管理偏移量并将偏移量写入redis (1)第一种:rdd的形式 一般是使用这种直连的方式,但其缺点是没法调用一些更加高级的api,如窗口操作.如果想更加精确的控制偏移量,就使用这种方式 代 ... 
- 《项目经验》--通过js获取前台数据向一般处理程序传递Json数据,并解析Json数据,将前台传来的Json数据写入数据库表中
		先看一下我要实现的功能界面: 这个界面的功能在图中已有展现,课程分配(教师教授哪门课程)在之前的页面中已做好.这个页面主要实现的是授课,即给老师教授的课程分配学生.此页面实现功能的步骤已在页面 ... 
随机推荐
- Web 开发技术栈
			Web 开发技术栈 Web 是什么? 简单地说,网络是一个遍布全球的网络,它连接大量设备并允许它们相互通信 Internet 上的网站托管在称为服务器的设备上,当与 Internet 上的网页交互时, ... 
- 洛谷P10693
			洛谷P10693 好奇怪的题目编号 思路提取 input 11 2 13 4 5 3 7 9 9 11 11 12 output 9 以人造数据为例. 首先我们让\(i\)\(\to\)\(a_i\) ... 
- python_xecel
			移动并重命名工作簿 1 from pathlib import Path # 导入pathlib模块的path类 2 import time 3 4 # Press the green button ... 
- 关于spring boot中mapper注入到service时IDEA报错的解决办法
			虽然这个错误不影响正常运行但是作为强迫症患者看着实属难受,经过在论坛查看资料学习到以下两种解决方法,可以供大家参考以下,如有什么错误的地方还希望各位大佬指定一下. 1.在注解@Autowired后增加 ... 
- 第零讲:基础架构:一条SQL查询语句是如何执行的
			目录 第零讲:基础架构:一条SQL查询语句是如何执行的 正确的认识事物的方式方法(极为重要): sql语句内部的执行过程:(极为重要) MySQL 可以分为 Server 层和存储引擎层两部分. Se ... 
- baselines算法库common/vec_env/dummy_vec_env.py模块分析
			baselines算法库设计可以和多个并行环境进行交互,也就是并行采样,实现多进程并行采样的模块为subproc_vec_env.py,与此相对的只实现单个进程下多环境交互的模块即为本文所要讲的dum ... 
- SMU 2024 spring 天梯赛自主训练3
			SMU 2024 spring 天梯赛自主训练3 7-1 2018我们要赢 - SMU 2024 spring 天梯赛自主训练3 (pintia.cn) 2018 wo3 men2 yao4 ying ... 
- springcloud经验
			> 码云地址:https://gitee.com/lpxs/lp-springcloud.git > 有问题可以多沟通:136358344@qq.com. 架构演化的步骤 在确定使用S ... 
- quartz监控日志(二)添加监听器
			上一章介绍监控job有三种方案,其实还有一个简单方案是实现quartz的TriggerListener. 上次我也试了这个方案,但是由于操作错误,导致没有监控成功,所以才选择分析源码来实现代理进行监控 ... 
- bazel 简介(一)—— 基础概念与原理
			0x01 背景 bazel目前已广泛用于云计算领域的开源软件的构建如k8s.kubevirt等,本文以一个新手的角度分享下bazel的基础知识,其存在的价值.对比下,它与其他已经存在的构建系统的差别, ... 
