如何从Java保存到Cassandra?

时间:2018-10-25 08:04:47

标签: java cassandra

我是Cassandra的新手,正在从事一个将Cassandra用作DB的项目。 Cassandra安装在另一台设备中,我将不得不将其远程保存到数据库。

我对Cassandra及其功能一无所知,但我对MySQL很好。

将消息保存到Cassandra的步骤是什么? 我可以使用与MySQL相同的数据库吗?

我相信我将必须连接到Cassandra服务器,然后保存它。

Cluster cluster = Cluster.builder().addContactPoint("localhost").withPort(3306).build();

我已使用此语句连接到Cassandra。 (将localhost替换为设备的IP)

2 个答案:

答案 0 :(得分:1)

您最好的选择是从java driver docs开始。如果您使用maven,它的设置非常容易,但是我经常发现示例并不总是给出完整的pom.xml,因此您可以在github项目中使用某些examples

quick start guide给出了一个非常简单的示例:

Cluster cluster = null;
try {
    cluster = Cluster.builder()   
            .addContactPoint("127.0.0.1")
            .build();
    Session session = cluster.connect();   
    ResultSet rs = session.execute("select release_version from system.local");
    Row row = rs.one();
    System.out.println(row.getString("release_version"));
} finally {
    if (cluster != null) cluster.close();
}

其他一些有趣的项目是connection poolingload balancing

答案 1 :(得分:0)

使用创建的集群和键空间创建会话:

Session session = cluster.connect("keyspace");

如果您没有密钥空间,请创建一个密钥空间。

然后使用

session.execute(query);

执行您选择的任何查询。

查询必须是字符串,不能为空。

例如:

    String query= "INSERT INTO keyspace.table_name (id, lastname, firstname) VALUES (6ab09bec-e68e-48d9-a5f8-97e6fb4c9b47, 'KRUIKSWIJK','Steven');";
    session.execute(query);