版本:0.7.6
客户端:cassandra自带的thrift客户端
标准column的查询、删除、新增:
写道
TTransport tr = new TFramedTransport(new TSocket("localhost",9160));
TProtocol proto = new TBinaryProtocol(tr);
Cassandra.Client client = new Cassandra.Client(proto);
tr.open();
client.set_keyspace("Keyspace1");
ColumnPath path = new ColumnPath();
long timestamp = System.currentTimeMillis();
// 插入数据
Column column = new Column();
column.setName("age".getBytes());
column.setValue("19".getBytes());
column.setTimestamp(timestamp);
client.insert(ByteBuffer.wrap("user".getBytes()), new ColumnParent("standard1"), column, ConsistencyLevel.ONE);
// 读取数据
path = new ColumnPath();
path.setColumn_family("standard1");
path.setColumn("age".getBytes("UTF-8"));
ColumnOrSuperColumn cc = client.get(ByteBuffer.wrap("user".getBytes()), path, ConsistencyLevel.ONE);
Column c = cc.getColumn();
String v = new String(c.getValue(), "UTF-8");
System.out.println("Value--------" + v);
//删除数据
// path = new ColumnPath();
// path.setColumn_family("standard1");
// path.setColumn("age".getBytes("UTF-8"));
// client.remove(ByteBuffer.wrap("user".getBytes()), path, timestamp, ConsistencyLevel.ONE);
// 关闭数据库连接
tr.close();
SuperColumn新增和查询:
/**
* 插入SuperColumn
*
* @throws Exception
*/
public void insertSuperColumn() throws Exception {
TTransport tr = new TFramedTransport(new TSocket("localhost",9160));
TProtocol proto = new TBinaryProtocol(tr);
Cassandra.Client client = new Cassandra.Client(proto);
tr.open();
client.set_keyspace("Keyspace1");
ColumnParent cp1 = new ColumnParent();
cp1.setColumn_family("Super2");
cp1.setSuper_column("address".getBytes());
Column city = new Column();
city.setName("province".getBytes());
city.setValue("guangdong".getBytes());
city.setTimestamp(time);
client.insert(ByteBuffer.wrap("user2".getBytes()), cp1, city, ConsistencyLevel.ONE);
}
/**
* 读取SuperColumn
*
* @throws Exception
*/
public void getSuper() throws Exception {
TTransport tr = new TFramedTransport(new TSocket("localhost",9160));
TProtocol proto = new TBinaryProtocol(tr);
Cassandra.Client client = new Cassandra.Client(proto);
tr.open();
client.set_keyspace("Keyspace1");
ColumnPath path = new ColumnPath("Super2");
path.setSuper_column("address".getBytes());
path.setColumn("province".getBytes());
ColumnOrSuperColumn s = client.get(ByteBuffer.wrap("user5".getBytes()), path, ConsistencyLevel.ONE);
System.out.println(new String(s.column.getValue(), "utf8"));
}
困惑:如果superColumn下的Column是一个SuperColumn怎么插入数据?没有找到相关的api。
分享到:
相关推荐
pillar, Pillar管理你的Cassandra数据存储的迁移 柱用于你的数据存储的支柱管理迁移。Pillar希望自动管理Cassandra模式的愿望。 作为代码管理模式能够实现自动化构建和部署,这是组织努力实现持续交付过程的基本实践...
主要讲解facebook开发的cassandra的论文。对互联网企业实现key value存储很重要。
存储数据(cassandra)
可以使用JSON数据填充Apache kafka主题并使用Apache Storm处理它们的代码库,进行一些转换并最终存储到Apache cassandra数据存储中 用数据填充源kafka主题。 源kafka主题在/ src / main / resources文件夹下的“ ...
用于储存收件箱等简单格式数据,集GoogleBigTable的数据模型与Amazon Dynamo的完全分布式的架构于一身Facebook于2008将 Cassandra 开源,此后,由于Cassandra良好的可扩展性,被等知名网站所采纳,成为了一种流行的...
joola.datastore-cassandra是一个 joola 插件,用于为其操作提供基于 Cassandra 的数据存储。 设置指南 技术文档 贡献 我们很乐意得到您的帮助! 我们概述了一个简单的贡献政策,以支持想法、代码、错误修复和...
#资源达人分享计划#
用于储存收件箱等简单格式数据,集GoogleBigTable的数据模型与Amazon Dynamo的完全分布式的架构于一身Facebook于2008将 Cassandra 开源,此后,由于Cassandra良好的可扩展性,被Digg、Twitter等知名Web 2.0网站所...
支持的数据结构非常松散,是类似json的bjson格式,因此可以存储比较复杂的数据类型。)Cassandra最初由Facebook开发,后转变成了开源项目。它是一个网络社交云计算方面理想的数据库。以Amazon专有的完全分布式的...
用于储存收件箱等简单格式数据,集GoogleBigTable的数据模型与Amazon Dynamo的完全分布式的架构于一身Facebook于2008将 Cassandra 开源,此后,由于Cassandra良好的可扩展性,被Digg、Twitter等知名Web 2.0网站所...
KairosDB是基于Cassandra存储的快速时间序列数据库
Aspnet-AspNetCore.Identity.Cassandra.zip,apache cassandra数据存储适配器,用于asp.net core identityspnetcore.identity.cassandra,asp.net是一个开源的web框架,用于使用.net构建现代web应用和服务。...
sbt-pillar-plugin-从sbt管理Cassandra迁移 这个sbt插件允许从sbt运行Cassandra模式/数据迁移(使用)。 有关迁移文件的详细信息,请查看。 cassandra连接配置不是基于Struts的,而是我们使用自己的格式(请参阅 )...
用于储存收件箱等简单格式数据,集GoogleBigTable的数据模型与Amazon Dynamo的完全分布式的架构于一身Facebook于2008将 Cassandra 开源,此后,由于Cassandra良好的可扩展性,被Digg、Twitter等知名Web 2.0网站所...
用Node.js编写的DeviceHive Cassandra存储插件 概述 此插件使您可以在Cassandra中存储通过DeviceHive平台获得的命令和通知。 该应用程序包括两部分:模式创建服务和在docker-compose文件中定义的插件。 启动服务后...
它最初由Facebook开发,用于储存特别大的数据。 主要特性: 分布式 基于column的结构化 高伸展性 Cassandra的主要特点就是它不是一个数据库,而是由一堆数据库节点共同构成的一个分布式网络服务,对Cassandra的...
它最初由Facebook开发,用于储存收件箱等简单格式数据,此后,由于Cassandra良好的可扩展性,逐渐发展成为了一种流行的分布式结构化数据存储方案。 2、特点分析 弹性可扩展性 Cassandra是高度可扩展的;它允许添加更...
整个系统需要主控节点存储从节点元信息 Google Bigtable Yahoo PNUTS 非集中式数据存储 各节点无主从之分,通过相应的通信机制 相互感知,自我管理 Amazon Dynomo Facebook Cassandra Bigtable 集中式数据管理系统 ...
支持的数据结构非常松散,是类似json的bjson格式,因此可以存储比较复杂的数据类型。)Cassandra最初由Facebook开发,后转变成了开源项目。它是一个网络社交云计算方面理想的数据库。以Amazon专有的完全分布式的...
cassandra会将你插入数据时的key进行md5 HASH,得到一个127位的数,然后将这个数与各节点的token比较来决定存储到哪个节点上。它根据以下规则进行节点选择: 1.数据将存储到拥有最近的比key的hash值大的token的节点...