避免在Cassandra中使用清单

Apache Cassandra是一种快速且可扩展的数据库,多年来,它变得与传统SQL数据库一样容易使用。 至少在表面上。

您使用类似SQL的查询,但是它们有很多限制; 您有一个模式,但是修改它并不像在SQL数据库中那样灵活; 您具有带有主键的相同表格结构,但是由于分区键和排序键之间的区别,因此更加复杂。 乍看之下,有很多底层细节并不重要,但它们对于性能和数据一致性至关重要,例如墓碑,SSTable压缩等。

但是我想讨论“列表”列类型,因为最近我们遇到了一个非常难以捉摸的问题。 我们致力于保证数据的完整性,这就是为什么我们的记录永远不会更新的原因。 这很适合Cassandra,因为要正确地进行更新很棘手。 但是,在我们的一个部署中,我们注意到了一些奇怪的事情–很少有,在与索引数据进行比较时,数以百万计的特定条目中的数据散列将不匹配。 经过调查,我们注意到“列表”类型的列具有重复值。 这不是代码的问题,因为在这种特殊情况下,代码始终使用Collections.singletonList(..)

似乎Cassandra试图变得更聪明,并且当在批处理插入中看到相同的条目时,它试图合并它们,而不是覆盖彼此,而是尝试将它们合并,从而产生具有重复条目的列表。 有关此问题的报告在此处和此处 。

现在,批处理是一个困难的话题,而看起来却很简单却不是的事情之一。 在大多数情况下, 批次是反模式 。 在某些情况下,批处理是有用的 ,但是它比预期的少得多。 那是由于Cassandra的分布式性质。 另一个麻烦来自于您使用的是令牌感知客户端还是令牌感知客户端策略,即您的客户端是否知道每个记录所属的位置以便向其发送请求。 我不会详细介绍批处理,因为在这两篇链接的文章中对批处理进行了很好的解释。

返回列表–由于在我们的案例中我们没有相同的记录,因此该问题很可能是由于网络超时而导致的,此时客户端未收到写入确认,而是再次尝试再次发送相同的语句。 我不确定是否批量处理。 但是,假设有批次或无批次可能会更安全。 即列表可以在意外情况下合并。

这是根本不使用列表的严重原因。 沃尔玛给出了其他参数

集应优先于列表,因为集(和地图)应避免
写前读模式用于更新和删除

这仅适用于少量物品。 对大量(例如数千个)项目使用集合是另一个问题,因为您无法分批加载项目-可以一次读取所有项目。

例如,在Java应用程序中,即使基础列的类型为List,也可以轻松地用Set替换List,这将暂时避免出现问题-数据仍可能在数据库中重复,但是至少应用程序会使用独特的价值观。 但是请记住,Java Set不能保证排序,因此,如果这对您的逻辑很重要,请确保按照定义明确的比较标准进行排序。

“避免清单”(和“避免批次”)的一般建议可以准确地描述Cassandra。 它看起来易于使用,但是一旦投入生产,您可能会意识到存在一些次优的设计决策。

翻译自: https://www.javacodegeeks.com/2019/02/avoid-lists-cassandra.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/344160.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

matlab 矩阵jocobi迭代_高校MATLAB被禁用,掀起中国本土软件脆弱的冰山一角

近日哈工大、哈工程高校被美国禁止用正版的MATLAB软件,此消息一出可谓使得全体用过MATLAB的工作者为之震撼。因为少了这款软件,无异于缺失了有力的左膀右臂,如何才能游刃有余地遨游在科研和工作领域呢?然而对于外行人却不知道这款…

[渝粤教育] 西南科技大学 高级英语(2) 在线考试复习资料

高级英语(2)——在线考试复习资料 一、单选题 1. The speaker went on and on, she had to ________ herself to stay awake. A. punch B. pink C. pinch D. pin 2. The two daughters’ sweet words _______ King Lear into believing that they reall…

【渝粤教育】电大中专学前儿童发展心理学作业 题库

1学前儿童心理学是()的分支。 A发展心理学 B儿童发展心理学 C儿童教育心理学 D儿童心理学 正确 正确答案:左边查询 学生答案:A 2提出儿童的心理最初只是一块白板的是()。 A卢梭 B洛克 C福禄贝尔 D维果斯基 错误 正确答案:左边查询 学生答案&a…

controll层跳转页面_java web开发中的各种层

java后端开发前,还是应该将各种层划分好,知道各自的作用,今天做一下总结。Dao层、Entity层、Service层、Controller层、view层1、Dao层(持久层、数据访问层)功能:只负责与数据库的数据进行交互,dao层是在Mybatis框架下…

【渝粤教育】电大中专审计原理与实务_1作业 题库

1.下列关于国家审计的表述,正确的是() A.是对综合经济管理部门和专业监督部门的监督工作实施再监督 B.审计主体是中央审计机关,不包括地方审计机关 C.只对财政预算执行的情况和决算进行审计 D.审计机关做出的审计决定,被审计单位和有关人员可…

【渝粤教育】电大中专幼儿园课程论 (1)作业 题库

作业视频教务托管,壹叁路路贰陆陆壹〇肆〇 显性课程是 ( )的课程 A.指定的 B.随机的 C.无计划的 D.有计划的 错误 正确答案:左边查询 学生答案:未作答 2.幼儿园课程最核心的要素是( ) A.教育方法 B.教育理念 C.教学原则 D.课程内容 错误 正确…

java 内存同步_Java中的硬件事务性内存,或者为什么同步将再次变得很棒

java 内存同步总览 硬件事务内存有可能允许多个线程同时以推测方式访问相同的数据结构,并使缓存一致性协议确定是否发生冲突。 HTM旨在为您提供细粒度锁定的可伸缩性,粗粒度锁定的简单性以及几乎没有锁定的性能。 如果JVM支持,则您的程序或库…

图像的灰度级数越多越好_MATLAB-数字图像处理 图像直方图归一化

图像直方图归一化图像直方图概念:图像直方图是反映一个图像像素分布的统计表,其实横坐标代表了图像像素的种类,可以是灰度的,也可以是彩色的。纵坐标代表了每一种颜色值在图像中的像素总数或者占所有像素个数的百分比。图像是由像…

POE交换机隐藏指标是什么?

POE交换机有一个非常重要的隐藏指标,只有大神才知道!我只告诉您一次哦!记住喽!接下来跟着飞畅科技的小编一起来看看POE交换机隐藏指标是什么吧! POE交换机隐藏指标是什么? POE交换机一个非常重要的隐藏指标…

【渝粤教育】电大中专新媒体营销实务 (11)作业 题库

1.第四媒体发展到宽带互联网阶段成为( ) A.网络新媒体 B.移动新媒体 C.数字新媒体 错误 正确答案:左边查询 学生答案:未作答 2.新媒体形式是指新媒体的使用模式、变现形式与应用形式。该说法( ) A.正确 B.错…

JDK 13:什么是AggressiveOpts?

JVM 11中已弃用Java VM标志-XX:AggressiveOpts [请参见JDK-8199777和JDK-8199778 ]“因为其行为是不明确的。” JDK-8199778的“问题”部分进一步说明了(我添加了重点 ): AggressiveOpts已被用作实现各种实验性能功能的包罗万象的方法&#…

【渝粤教育】电大中专消费者行为学 (3)作业 题库

1.消费行为学的研究对象是市场商品交换活动中消费者各种心理现象和行为的产生、发展及其规律。主要表现在以下哪几方面() A.消费活动中营销环境 B.以上选项全选 C.消费者行为的发展变化趋势 D.消费者在消费过程中的行为和规律 E.消费者在购买行为中的心理…

擦地机器人修理_自带眼睛还有嘴,喷水式擦地机器人效果实测

小时候家里大扫除时,我最喜欢抢着扫把扫地,因为扫地相对比较轻松,快速扫完灰尘和垃圾就能跑出去玩。而擦地板相比扫地就麻烦多了,大面积的地板需要蹲下来一块一块擦,还要来回清洗擦布,现在父母年龄大了&…

PoE交换机不供电了该怎么办?

交换机供电方式有很多,有集中供电,独立供电,220V交流电供电,PoE供电,随着不同场合的使用,特别是poe交换机使用非常多,但是出现的问题也不少。其中比较常见的就是PoE交换机供电突然不供电了&…

【渝粤教育】电大中专电大中专沟通技巧考试考核试题 (2)作业 题库

1可以通过( )的方法来对抗讲话时的紧张感。 A心理暗示 B自我鼓励 C运用合适的肢体语言 D以上方法均可 错误 正确答案:左边查询 学生答案:A 2以下说法正确的是( ) A沟通要有明确的目标 B沟通不需要形成协议 …

pv实现前趋图_Excel 数据透视图实现简易交互式数据面板

美国Ebay公司成立于1995年的圣何塞,是一家可让全球民众上网买卖物品的线上拍卖及购物网站。本文将结合Ebay(某类体育用品的)在线拍卖数据,主要使用Excel数据透视表为工具,来实现简易的交互式数据面板以求对数据进行可视…

poe交换机标准与非标准的区别介绍

POE指的是在现有的以太网Cat.5布线基础架构不作任何改动的情况下,在为一些基于IP的终端(如IP电话机、无线局域网接入点AP、网络摄像机等)传输数据信号的同时,还能为此类设备提供直流电的技术,就是支持以太网供电的交换…

【渝粤教育】电大中专电子商务网站建设与维护 (7)作业 题库

1.阿里巴巴是于1999年创立的( )的网上贸易市场平台。 A.零售商对消费者 B.企业对消费者 C.企业对企业 D.企业对零售商 错误 正确答案:左边查询 学生答案:未作答 2.阿里巴巴网站的不足不包括( ) A.“诚信通”…

【渝粤教育】电大中专药物分析技术基础 (2)作业 题库

1.《中国药典》规定“称定”时,指称取重量应准确至所取重量的 A.10% B.1.95~2.05g C.百分之一 D.1.5~2.5g E.千分之一 错误 正确答案:左边查询 学生答案:未作答 2.2℃~10℃指 A.密闭 B.密封 C.阴凉处 D.冷处…

input不可编辑属性_谁不喜欢图文并茂呢:基于多模态信息的属性抽取

0. 前言最近做属性抽取,并且基于多模态信息(文本图片)那种,然后发现了一个比较经典的论文“Multimodal Attribute Extraction”。正好就顺着这个论文的思路,捋一下这个任务,复现一下,再记录一下…