java - 如何使用 Hector API 将序列化的 Java 对象插入到 Cassandra 中?

标签 java nosql cassandra hector

我需要使用 Cassandra 的 Hector API 将 Java 对象写入到 Cassandra 中。我有一个 Set 对象,我尝试对其进行序列化,然后在 Hector 的 insert() 中对列族的更改器(mutator)使用它。我不断收到该对象不可序列化的错误。我找不到此用例的任何文档。

最佳答案

我能够通过以下方式将 Java 对象添加到 Cassandra 列:

StringSerializer stringSerializer = StringSerializer.get();
ObjectSerializer flatten=ObjectSerializer.get();
Mutator<String> mutator = HFactory.createMutator (keySpace, stringSerializer);
HColumn<String, Object> column=HFactory.createColumn ("1", object1, stringSerializer,flatten);   
mutator.insert ("pages",COLUMN_FAMILY, column);

这里,object1 是我想要写入 Cassandra 的对象。 keySpace 的类型为 me.prettyprint.hector.api.Keyspace,“1”是列名称,“pages”是行键,COLUMN_FAMILY 是一个表示列族名称的字符串。 我犯了一个错误,首先序列化对象,然后写入 insert() ,而这不是必需的。

关于java - 如何使用 Hector API 将序列化的 Java 对象插入到 Cassandra 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22682807/

相关文章:

java - 表格布局不适合屏幕

java - ESB 服务客户端创建

database - 使用关系数据库/ORM 或文档数据库/ODM 的动机

cassandra - 在本地主机端口 9042 二进制协议(protocol)模式上连接到 Cassandra 时出现 cqlsh 错误

java - 从无法识别的字符转换为正常形式

nosql - 如何在 Redis 中反向查找?

mysql - 使用 NoSql?如果是的话怎么办?

java - 如何将基于 Java 的 Cassandra 客户端连接到 Cassandra 集群,而不是特定节点?

database - Cassandra CQL3 : Set value to entire column

java - spring-data-elasticsearch 在多个索引中搜索特定字段