作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图弄清楚如何使用 Pelops 批量删除 Cassandra DB 中的行。
理想情况下,我可以指定需要删除的行的 KeyRange。这对我的目的来说很好。
然而,我(尽管很简短)的研究让我相信这目前是不可能的。 RowDeletor 只接受 rowKey,而不接受 KeyRange。这些发现正确吗?
我应该能够使用我的 List 函数之一的修改版本以编程方式完成它,但是,KeyRange 会更可取。
最佳答案
不,我认为您不能使用 Pelops 批量删除行,它的 RowDeletor
不参与批处理,Mutator
类仅对显式命名的列具有删除操作。
如果你看看 code for Pelops' deleteColumns
您可以看到它创建了一个删除并将其添加到突变列表中,我认为仅向该列表添加更多删除将使它们在同一批处理中发布。 getMutationList
方法是 protected ,所以也许您可以创建一个子类来公开该方法,或者有办法向列表添加更多删除。
看起来你可以用 Hector 做到这一点,它的 Mutator
接口(interface)具有采用多个行键的方法,例如addDeletion(K key, String cf)
和 addDeletion(Iterable<K> keys, String cf)
.所以 Cassandra 至少应该支持每批删除多行。
关于Java Pelops 和 Cassandra NoSQL DB : Can I Batch Delete Rows?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10885475/
我是一名优秀的程序员,十分优秀!