- 浏览: 414606 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
tanmingjuntan:
这到底是上传还是下载呀。每个方法都是down开头
java多线程分块上传并支持断点续传最新修正完整版本 -
sinnk:
多谢搂主分享,我有收获!!
Spring注解@Component、@Repository、@Service、@Controller区别 -
果果啊啊:
jar包呢
spring 3.0.5 + jotm 实现的的spring mvc 的例子 -
SeaAndHill:
真实的社会
房产寓言 -
java小叶檀:
按着做效果是出来了 有一些小细节确实得研究一下代码 有一个需要 ...
扩展fancybox图片展示js插件,实现对图片的旋转
添加数据
package com.guagua.test; import java.io.UnsupportedEncodingException; import java.nio.ByteBuffer; import java.util.List; import org.apache.cassandra.thrift.Cassandra; import org.apache.cassandra.thrift.Column; import org.apache.cassandra.thrift.ColumnOrSuperColumn; import org.apache.cassandra.thrift.ColumnParent; import org.apache.cassandra.thrift.ColumnPath; import org.apache.cassandra.thrift.ConsistencyLevel; import org.apache.cassandra.thrift.InvalidRequestException; import org.apache.cassandra.thrift.NotFoundException; import org.apache.cassandra.thrift.SlicePredicate; import org.apache.cassandra.thrift.SliceRange; import org.apache.cassandra.thrift.TimedOutException; import org.apache.cassandra.thrift.UnavailableException; import org.apache.thrift.TException; import org.apache.thrift.protocol.TBinaryProtocol; import org.apache.thrift.protocol.TProtocol; import org.apache.thrift.transport.TFramedTransport; import org.apache.thrift.transport.TSocket; import org.apache.thrift.transport.TTransport; public class CClient { public static void main(String[] args) throws TException, InvalidRequestException, UnavailableException, UnsupportedEncodingException, NotFoundException, TimedOutException { //建立连接 TTransport tr = new TFramedTransport(new TSocket("192.168.100.108", 9160)); TProtocol proto = new TBinaryProtocol(tr); Cassandra.Client client = new Cassandra.Client(proto); tr.open(); String key_user_id = "1"; // insert data long timestamp = System.currentTimeMillis(); //相当于DB NAME client.set_keyspace("wyqTest"); //相当于DB Table ColumnParent parent = new ColumnParent("userprofile"); //字段名 Column nameColumn = new Column(toByteBuffer("name")); //字段值 nameColumn.setValue(toByteBuffer("Chris Goffinet")); //插入时间 nameColumn.setTimestamp(timestamp); //将数据添加到cassandra client.insert(toByteBuffer(key_user_id), parent, nameColumn, ConsistencyLevel.ONE); //字段名 Column ageColumn = new Column(toByteBuffer("age")); //字段值 ageColumn.setValue(toByteBuffer("24")); //插入时间 ageColumn.setTimestamp(timestamp); //将数据添加到cassandra client.insert(toByteBuffer(key_user_id), parent, ageColumn, ConsistencyLevel.ONE); //得到相当于DB Table ColumnPath path = new ColumnPath("userprofile"); // read single column path.setColumn(toByteBuffer("name")); System.out.println(client.get(toByteBuffer(key_user_id), path, ConsistencyLevel.ONE)); // read entire row SlicePredicate predicate = new SlicePredicate(); SliceRange sliceRange = new SliceRange(toByteBuffer(""), toByteBuffer(""), false, 10); predicate.setSlice_range(sliceRange); List<columnorsupercolumn> results = client.get_slice(toByteBuffer(key_user_id), parent, predicate, ConsistencyLevel.ONE); for (ColumnOrSuperColumn result : results) { Column column = result.column; System.out.println(toString(column.name) + " -> " + toString(column.value)); } tr.close(); } public static ByteBuffer toByteBuffer(String value) throws UnsupportedEncodingException { return ByteBuffer.wrap(value.getBytes("UTF-8")); } public static String toString(ByteBuffer buffer) throws UnsupportedEncodingException { byte[] bytes = new byte[buffer.remaining()]; buffer.get(bytes); return new String(bytes, "UTF-8"); } }
得到数据
package com.test; import java.util.HashMap; import java.util.Map; import me.prettyprint.cassandra.model.AllOneConsistencyLevelPolicy; import me.prettyprint.cassandra.serializers.StringSerializer; import me.prettyprint.cassandra.service.FailoverPolicy; import me.prettyprint.cassandra.service.template.ColumnFamilyResult; import me.prettyprint.cassandra.service.template.ColumnFamilyTemplate; import me.prettyprint.cassandra.service.template.ColumnFamilyUpdater; import me.prettyprint.cassandra.service.template.ThriftColumnFamilyTemplate; import me.prettyprint.hector.api.Cluster; import me.prettyprint.hector.api.Keyspace; import me.prettyprint.hector.api.exceptions.HectorException; import me.prettyprint.hector.api.factory.HFactory; public class MyTest { /** * @param args */ @SuppressWarnings("unchecked") public static void main(String[] args) { String keySpace = "wyqTest";//相当于DB NAME String columnFamily = "userprofile";//相当于DB Table Cluster cluster = HFactory.getOrCreateCluster("Test Cluster", "192.168.100.108:9160"); Map accessMap = new HashMap(); accessMap.put("username", "wyq"); accessMap.put("password", "123456"); Keyspace ksp = HFactory.createKeyspace(keySpace, cluster, new AllOneConsistencyLevelPolicy(), FailoverPolicy.ON_FAIL_TRY_ALL_AVAILABLE, accessMap); ColumnFamilyTemplate<String, String> template = new ThriftColumnFamilyTemplate<String, String>( ksp, columnFamily, StringSerializer.get(), StringSerializer .get()); ColumnFamilyUpdater<String, String> updater = template.createUpdater("u_1"); // 以下name,email,time相当于字段 updater.setString("name", "wyqa"); updater.setString("email", "anotherbug@163.com"); updater.setLong("time", System.currentTimeMillis()); try { template.update(updater); System.out.println("update ok."); } catch (HectorException e) { e.printStackTrace(); } try { ColumnFamilyResult<String, String> res = template .queryColumns("u_1"); ColumnFamilyResult<String, String> rest = template .queryColumns("1"); String name = res.getString("name"); String email = res.getString("email"); long time = res.getLong("time"); System.out.println("read u_1 name:" + name); System.out.println("read u_1 email:" + email); System.out.println("read u_1 time:" + time); System.out.println("age:" + rest.getString("age")); System.out.println("name:" + rest.getString("name")); } catch (HectorException e) { e.printStackTrace(); } } }
发表评论
-
java生成动态gif格式与png格式的验证码(代码5)
2013-10-25 15:01 1052import java.io.IOException; i ... -
java生成动态gif格式与png格式的验证码(代码4)
2013-10-25 14:59 729import java.util.Random; /* ... -
java生成动态gif格式与png格式的验证码(代码3)
2013-10-25 14:58 1162import java.awt.*; import jav ... -
java生成动态gif格式与png格式的验证码(代码2)
2013-10-25 14:56 3600import java.awt.AlphaComposite ... -
java生成动态gif格式与png格式的验证码(代码1)
2013-10-25 14:55 1016import java.awt.Color; import ... -
java多线程分块上传并支持断点续传最新修正完整版本
2013-10-15 17:47 27309package com.test; import ja ... -
java 分块下载
2013-10-14 19:39 2399package com.test; import ja ... -
java生成曲线图
2013-10-12 15:30 4979package com.test; import j ... -
用java生成柱状图
2013-10-11 19:16 3369package com.test; import ja ... -
关于tomcat虚拟路径配置
2012-12-31 20:42 1711最近一个学java的朋友问我tomcat的虚拟路径怎么设置,下 ... -
启动Eclipse时,启不起来JVM terminated. Exit code=-1
2012-05-11 09:48 1729出现错误了,不知道什么原因原本好好的Eclipse,今天早上出 ... -
cassandra使用之添加更新和删除
2012-03-23 16:28 4084import java.nio.ByteBuffer; ... -
用java生成网站的桌面快捷方式
2011-12-20 10:53 3690String templateContent = " ... -
Jutil结合springmock做项目的单元测式
2011-10-15 16:17 83751.首先下载springmock的jar包 2.把spri ... -
Java多线程编程的常见陷阱
2011-10-13 23:05 10621、在构造函数中启动线 ... -
如何以list进行排序
2011-07-27 19:56 951import java.util.*; public c ... -
Java输入验证码在linux上不能显示的问题
2011-06-29 20:48 4306做了个Java验证码程序,结果发现在Windows上运 ... -
图像验证码
2011-06-23 22:47 1158package test; import java ... -
md5
2011-06-23 22:47 1100package test; import java.s ... -
通过反射, 获得Class定义中声明的父类的泛型参数的类型
2010-10-22 11:14 2373/** * 通过反射, 获得Class定义中声明的父类的 ...
相关推荐
每个数据项都会被复制到N个节点(N是通过参数配置的副本因子),系统利用数据的复制机制将存储在各节点上的数据复制到其他结点上,实现了数据的高度可获得性和安全性。 1.2 数据模型 Cassandra使用宽列存储模型,...
amily 是 Cassandra 数据模型的核心组成部分,用来...其分布式架构和时间戳机制保证了高可用性和数据一致性。尽管在理解和使用上可能需要一些学习曲线,但 Cassandra 的这些特性使其成为大数据领域中的一个重要选择。
在Spark上使用CLI读取Cassandra数据是一种常见的大数据处理场景,Cassandra是一个分布式NoSQL数据库,而Spark则是一个用于大规模数据处理的计算框架。这两者的结合可以提供高效、可扩展的数据处理能力。以下是对这个...
本教程将详细讲解如何使用Java API来实现Cassandra数据的导出。 首先,你需要理解Cassandra的数据模型。Cassandra的数据存储基于表(Table),这些表分布在多个节点上,形成一个分区(Partition)。每个分区由键...
**Cassandra:分布式NoSQL数据库系统** Cassandra是一款高度可扩展、分布式的NoSQL数据库系统,由Apache软件基金会开发并维护。...深入了解和熟练掌握Cassandra的使用,对于构建高可用、高性能的分布式系统至关重要。
在本文中,我们将深入探讨如何将Spring Boot框架与Cassandra数据库集成,并利用Java Persistence API (JPA) 进行数据操作。...在实际项目中,可以根据具体需求调整配置和数据模型,以实现高效且可靠的数据库操作。
其数据模型是Cassandra的核心特性之一,它不同于传统的SQL数据库,而是基于列族(Column Family)的NoSQL数据模型。 1. **列族与超级列** - **列族(Column Family)**:类似于关系数据库中的表,是数据存储的基本...
Cassandra是一种高性能、分布式的NoSQL数据库系统,专为提供高可用性而设计,特别适合于大数据...手册的目的是为了让用户能够系统地理解和掌握Cassandra的使用方法,从而在实际的项目中高效地利用Cassandra来处理数据。
为了减少磁盘空间占用并提高读写效率,Cassandra 还实现了高效的垃圾回收和数据压缩机制。 #### 五、总结 Cassandra 作为一款高度可扩展、高可用性的分布式存储系统,在处理大规模结构化数据方面表现出了卓越的...
首先,他们给出了Cassandra集群的现状,包括存储规模、主机规模、备份规模和数据规模,以及单集群规模的发展趋势。这说明随着业务量的增长,360在Cassandra的应用上已经达到了相当庞大的规模,这要求数据库具有非常...
在Cassandra中,数据rollbock机制是一个重要的概念,它涉及到数据存储、数据管理和优化。下面将详细介绍Cassandra的数据rollbock机制及其相关知识点。 1. 数据模型:Cassandra的数据模型基于列族(ColumnFamily),...
5. **数据模型**:理解Cassandra的数据模型,如超级列(Super Column)、列族和行键(Row Key),对于有效使用phpcassa至关重要。 6. **安装和配置**:在PHP项目中集成phpcassa,需要正确配置Cassandra服务器地址、...
Cassandra 1.2 提供了多种性能优化选项,如调整内存分配、使用JVM参数优化、调整批处理大小等,用户可以根据实际需求进行调整,以获得最佳性能。 ### 10. 安全性 虽然Cassandra 1.2 在安全性方面相对较弱,但可以...
Cassandra通过一致性级别(Consistency Level)来控制读写操作的一致性要求,不同的业务场景可以根据需求选择最适合的一致性级别,以平衡性能和数据完整性。例如,对于写操作,可以选择将数据同步复制到多个节点上,...
这一机制确保了高写入性能和数据的持久性。对于读写操作,Cassandra支持多数据中心部署,数据可以在任意节点读写,不存在单点故障,同时提供了最终一致性,意味着在没有其他写入操作的情况下,数据最终会达到一致...
1、cassandra的安装、维护使用 2、java操作cassandra实例 3、cql使用详解
通过深入学习Cassandra文档,开发者和管理员能够掌握如何高效地使用和管理这个强大的分布式数据库系统,满足大数据场景下的复杂需求。无论是构建大规模的数据仓库还是实时分析应用,Cassandra都提供了坚实的基础。
Cassandra的设计灵感来源于Google的Bigtable,旨在处理大规模的数据存储需求,特别适合大数据场景和互联网应用。在Cassandra 3.11.3版本中,我们看到了许多优化和改进,使其成为企业级应用的可靠选择。 首先,...