使用thrift api java连接到cassandra列族

时间:2013-06-27 07:03:32

标签: cassandra thrift

我有一个cassandra单节点,其下运行的键空间很少,列族很少。我想使用 JAVA - THRIFT API 与他们联系。我成功地描述了 cluster_name / cluster_version / etc。我希望连接到其下的密钥空间和列族

我当前的Java代码如下:

import org.apache.cassandra.thrift.*;
import org.apache.thrift.TException;
import org.apache.thrift.protocol.*;
import org.apache.thrift.transport.*;

import java.io.UnsupportedEncodingException;
import java.lang.*;
import java.nio.ByteBuffer;

public class ShowKeyspaces {

    public static void main(String args[]) throws TException, InvalidRequestException,     UnavailableException, UnsupportedEncodingException, NotFoundException {

    TTransport tr = new TFramedTransport(new TSocket("localhost", 9160));
    TProtocol proto = new TBinaryProtocol(tr);
    tr.open();
    Cassandra.Client client = new Cassandra.Client(proto);

    System.out.println("Version : "+client.describe_version());
    System.out.println("cluster name : "+client.describe_cluster_name());

    for ( KsDef keyspace: client.describe_keyspaces() )
    {
        System.out.println("keyspace " +keyspace);
    }

    client.set_keyspace("demodb");

    tr.close();
}
}

有关锄头的任何建议我是否可以进一步访问色谱柱系列?

1 个答案:

答案 0 :(得分:0)

请注意,AFAIK,使用CQL3创建的表不会在Thrift报告的模式中返回。 https://github.com/thobbs/phpcassa/issues/139