2

我有一些从示例派生的简单代码,旨在形成对 Cassandra 数据库的快速写入,然后循环返回并读取所有当前条目,一切正常。当 .6 出现时,我升级了 Cassandra 和 thrift,这在我的代码中引发了错误 (www[dot]copypastecode[dot]com/26760/) - 我能够通过转换必要的类型来消除错误,但是在现在编译的版本似乎只读回一项,我不确定它是否没有保存数据库更改或者它是否只读回 1 个条目。“固定”代码在这里: http: //www.copypastecode.com/26752/。任何帮助将不胜感激。

4

1 回答 1

2

首先,让我说你绝对应该使用TBufferedStream而不是TSocketfor TBinaryProtocol,这将对你的应用程序性能产生巨大影响。

对于BATCH_INSERT不推荐使用方法的 Apache Thrift API 文档,因此它可能在该操作上引入了一个误导性的错误,该错误实际上只插入了第一列。说了这么多,为什么不试试BATCH_MUTATE改用呢?

顺便说一句,你为什么要直接使用 Thrift?Cassandra 有一些不错的 c# 客户端,它们实际上表现得非常好。您可以在http://wiki.apache.org/cassandra/ClientOptions找到整个列表。

我是其中之一的作者,Apache 几乎已经更新,一些公司在生产环境中使用它。看看我的主页。

于 2010-12-18T19:01:21.163 回答