将多个并发数据库操作合并为一个批处理

时间:2011-02-18 16:41:05

标签: java database java-ee nosql cassandra

[嗨,我在早上问过这个问题,但无法得到社区的任何回复或反馈。我想提出来,真正得到社区的帮助..]

我正在使用Java进行Web应用程序,并使用Cassandra-NoSQL数据库作为后盾。

Cassandra一次性允许高度并发的数据库操作和批量的大量操作。 他们建议在单个批处理操作中使用批量大小,例如数百个操作。但我无法弄清楚,如何有效地合并数百个并发用户在我的应用程序上所需/提交的数据库操作。批量合并这些操作的方法是什么?

编辑:我知道如何向数据库提交批量查询,但我要求的是如何在一个批处理中收集多个并发用户会话请求/提交的查询?

2 个答案:

答案 0 :(得分:2)

你过早地进行了优化。几乎没有人使用Cassandra在插件方面存在性能问题,对于那些我无法想到任何问题是从小批量大小而不是像可记忆阈值和压缩这样的问题开销的问题。

stress.py和stress.java Cassandra基准测试使用单行的批量大小。

答案 1 :(得分:1)

免责声明:我没有在Java中使用Cassandra风格的数据库进行任何操作。

但我真的很好奇如何处理这些缓存,所以我用Google搜索了一下,发现:

ehCache

Gora

Kunderagoogle codegithub

所以有人正在为nosql db建立JPA。这对我来说很有意义,因为对象图并不能很好地转换为rdbms。请参阅:a stackoverflow question comparing cassandra/rdmbsTed Neward on Object-Relational Impedence Mismatch

我的观点是,有人在那里研究并试图解决你所问的那类问题。看来这些东西都是最令人不快的。玩得开心,不要割伤自己!