CASSANDRA - 技术教程文章

php – Cassandra“操作超时 – 只收到0回复.”写作期间【代码】

我在Windows 10上使用Datastax PHP Cassandra Driver和Cassandra 2.2.5.这是一个单节点集群,并且密钥空间复制{'class': 'SimpleStrategy','replication_factor': 1 }这是我要插入的表:CREATE TABLE MyDocuments ("label" varchar,"fileName" varchar,"blob" blob,"createdTime" bigint,"lastUpdateTime" bigint,PRIMARY KEY("label", "fileName") );当我尝试插入一个16419KB大的blob行时,它给了我这个错误消息操作超时 – 只收到0...

java – 如何以编程方式获取Cassandra版本【代码】

我在Java 7中使用com.datastax.cassandra cassandra-driver-core version 1.0.0连接到Apache Cassandra(版本1.2.12).虽然1.2.12是我今天使用的版本,但该版本可能会发生变化,如果可能的话,我想知道如何以编程方式检索Cassandra的版本(大概是使用驱动程序,尽管我对其他人开放建议). 我找到了Cluster.getMetadata()和Cluster.getMetadata.getKeyspace(),它们分别返回了一个Metadata对象和一个KeyspaceMetadata对象,但是这些对象似乎都...

java – Spring Data Cassandra:如何使用复合键查询表?【代码】

我有以下列族:@Table(value = "request_event") public class RequestEvent {@PrimaryKeyColumn(name = "day_requested", ordinal = 0, type = PrimaryKeyType.PARTITIONED)private LocalDate dayRequested;@PrimaryKeyColumn(name = "date_requested", ordinal = 1, type = PrimaryKeyType.CLUSTERED, ordering = Ordering.DESCENDING)private LocalDateTime dateRequested;... }由存储库存储和访问:@Repository public interfa...

Apache Cassandra的Spring Data将java.time.LocalDateTime转换为UTC【代码】

我试图在我的Cassandra数据库中持久保存java.time.LocalDateTime对象并保持时区不可知.我使用Spring Data Cassandra来做到这一点. 问题是,沿着这条线的某个地方,某些东西正在将这些LocalDateTime对象视为在我的服务器的时区中,并在将它们存储在数据库中时将它们偏移到UTC时间. 这是一个错误还是一个功能?我能以某种方式解决这个问题吗? 组态:@Configuration @EnableCassandraRepositories(basePackages = "my.base.package") pu...

python – 用pycassa读Cassandra 1.2表【代码】

使用Cassandra 1.2.我通过以下方式使用CQL 3创建了一个表:CREATE TABLE foo (user text PRIMARY KEY,emails set<text> );现在我试图通过pycassa查询数据:import pycassa from pycassa.pool import ConnectionPool pool = ConnectionPool('ks1', ['localhost:9160']) foo = pycassa.ColumnFamily(pool, 'foo')这给了我Traceback (most recent call last):File "test.py", line 5, in <module>foo = pycassa.ColumnFamily(pool, 'f...

java – 在Cassandra中使用对象映射器批量插入【代码】

使用cassandra对象映射器api想要进行批处理持久化. 对于单个对象,它工作正常.Mapper<MyObj> mapper = new MappingManager(getSession()).mapper(MyObj.class); mapper.save(myObj);对于批量更新我试过这种方式,但理想情况下Cassandra认为我持久化列表所以它给出了异常,就像在List中找不到@Table注释,这是预期的行为Mapper<List<MyObj>> mapper = new MappingManager(getSession()).mapper(List.class); myObjList.add(myObj1) myOb...

连接Cassandra DB时java.lang.NoClassDefFoundError:ch / qos / logback / core / joran / spi / JoranExcepti【代码】

我正在通过Java尝试与我的Cassandra实例的简单连接.我为cqlsh创建了一个’demo’键空间,并在java程序中创建了一个表.代码如下: 使用的罐子: > slf4j.api-1.6.1> cassandra-all-2.1.2public class CassandraConnection {public static void main(String[] args){String ipAddress="127.0.0.1";String keySpace="demo";Cluster cluster;Session session;cluster=Cluster.builder().addContactPoint(ipAddress).build();session=clu...

java – Apache Spark需要5到6分钟才能从Cassandra中简单计算1个亿行【代码】

我正在使用Spark Cassandra连接器.从Cassandra表获取数据需要5-6分钟.在Spark中,我在日志中看到了许多任务和Executor.原因可能是Spark在许多任务中划分了这个过程! 下面是我的代码示例:public static void main(String[] args) {SparkConf conf = new SparkConf(true).setMaster("local[4]").setAppName("App_Name").set("spark.cassandra.connection.host", "127.0.0.1");JavaSparkContext sc = new JavaSparkContext(conf);Jav...

php – 关于cassandra的复杂查询

几天前我在cassandra数据库引擎上听说过,并在上面搜索一个很好的文档.在研究了cassandra后,我得到的cassandra比其他数据引擎更具可扩展性.我也在Amazon SimpleDB上阅读,但由于SimpleDB的限制为10GB / table,Google Datastore比Amazon SimpleDB慢,我不想使用它们(Google Datastore,Amazon SimpleDB).因此,为了使我们的网站使用大量数据扩展特别高的写入速率,我喜欢使用Cassandra作为我们的数据引擎. 但在开始使用cassandra之前,我对...

java – 没有创建Lagom cassandra读取表【代码】

我在我的user-impl服务中创建了一个用户存储库Lagom readside,但由于某种原因,在运行sbt lagom:runAll时没有创建Cassandra用户表.我不确定我在这里缺少什么. 我的UserRepository类:@Singleton public class UserRepository {private final CassandraSession session;@Injectpublic UserRepository(CassandraSession session, ReadSide readSide) {this.session = session;readSide.register(PUserEventProcessor.class);}private...

c# – Cassandra System.OutOfMemoryException,它是一个Thrift错误吗?【代码】

我正在使用Cassandra 0.8.7,Aquiles作为C#客户端和Thrift 0.7,我试图从具有以下定义的SuperColumnFamily中获取大量数据:create column family SCF with column_type=Super and comparator=TimeUUIDType and subcomparator=AsciiType;我想将从Cassandra获取的数据插入到DataTable中,这样我就可以过滤行并根据它生成一些报告,但我总是得到一个OutOfMemoryException.[OutOfMemoryException: Exception of type 'System.OutOfMemoryEx...

Cassandra内建的工具nodetool - 监控篇【代码】

Cassandra 常用监控命令 Cassandra 自带了多个功能强大集群或数据管理工具,数量掌握有助于诊断和维护Cassandra集群、快速解决各种问题: nodetool nodetool是一个命令行的工具集,它可以监控Cassandra和执行例行的数据库操作。作为内建的工具,nodetool一般用于在节点上直接运行。nodetool工具集支持大多数重要的JMX指标和操作,并且包含了一些为管理员准备的命令。 相关命令如下: nodetool: 是一个命令行的工具集,它可以监控Ca...

迁移cassandra和phpcassa【代码】

我正在尝试将旧版本从cassandra 1.2.8迁移到cassandra 2.1,我使用phpcassa 0.8,当我迁移cassandra一切正常,exept我无法使用:$columnFamily->get($key);我可以写得很完美:$columnFamily->execute_cql_query($query);但如果我尝试使用get()读取数据,我收到以下错误:Error performing get_slice on 154.65.97.898:9160: exception 'cassandra_UnavailableException' in /var/www-zend/order/library/phpcassa/thrift/Thrift.php:57...

无法连接到Cassandra:java.lang.NoSuchMethodError:com.google.common.util.concurrent.Futures.withFallback【代码】

参见英文答案 > java.lang.NoClassDefFoundError: com/google/common/util/concurrent/FutureFallback 4个我正在尝试使用Java(Hadoop2)连接到cassandra,但它抛出了以下错误Connecting to IP Address 127.0.0.1:9042... 16/04/12 10:35:13 INFO core.NettyUtil: Found Netty's native epoll transport in the classpath, using it Exception in thread "main" java.lang.NoSuchMethodError:...

python – Cassandra和Django

我想在django中使用Cassandra,经过一些研究后我发现有一些库可以让你从比pycassa更高的级别访问cassandra:对于django来说,有alexandra& django-cassandra-backed,对于普通的python,你会发现tragedy& lazyboy … 我知道有一个类似的问题here,但我特别关注是否有人可以提供任何关于使用上述(或可能是另一个)库的真实世界经验…因为他们所有人都应该做类似的事情而不是所有看起来完全是最新的,这将是非常有帮助的!解决方法:https://...

java cassandra connection java.lang.ClassNotFoundException:com.datastax.driver.core.Cluster【代码】

我正在尝试使用datastax驱动程序连接到Cassandra.到目前为止,我刚刚尝试运行教程中提供的SimpleClient应用程序,但我遇到了麻烦. 这是例外Exception in thread "main" java.lang.NoClassDefFoundError: com/datastax/driver/core/Clusterat com.cass.App.connect(App.java:17)at com.cass.App.main(App.java:34) Caused by: java.lang.ClassNotFoundException: com.datastax.driver.core.Clusterat java.net.URLClassLoader$1.run(U...

Python – cql – Cassandra 1.2 – 读取时的rpc超时【代码】

我有一个使用Cassandra 1.2集群的Python应用程序.群集有7个使用虚拟节点的物理节点,1个密钥空间的复制因子为3,复制因子为1.该应用程序使用cql库连接到Cassandra并运行查询.问题是我在尝试在数据库上运行选择时开始出错,我收到此错误:Request did not complete within rpc_timeout当我检查集群的状态时,我可以看到我的一个节点的cpu使用率超过100%并检查Cassandra system.log我可以看到这种情况一直突然出现:INFO [ScheduledTask...

java – 从Cassandra中检索数据块

我有一张表,其中包含Cassandra的约500M记录.我需要传递所有这些记录并进行一些处理,然后将已处理的记录插入到其他表中.由于内存问题,我需要将这些记录检索为块.有没有办法做到这一点?例如,在第一个块中我需要获得第一个2M,然后在第二个块中我需要检索第二个2M,依此类推.解决方法:如果您只运行常规执行方法,则会返回ResultSet.如文档中所述:The retrieval of the rows of a ResultSet is generally paged (a first page of result...

python – cassandra.InvalidRequest:code = 2200 [无效查询] message =“Keyspace”不存在”【代码】

我正在尝试使用python driver for cassandra但是当我在python shell中运行这三行时from cassandra.cluster import Cluster cluster = Cluster() session = cluster.connect('demo')我收到这个错误cassandra.InvalidRequest: code=2200 [Invalid query] message="Keyspace 'demo' does not exist"pip freeze说cassandra-driver == 2.5.0 我检查了cqlshConnected to Test Cluster at 127.0.0.1:9042. [cqlsh 5.0.1 | Cassandra 2.1.4...

java – Cassandra跟踪和客户端延迟之间的差异【代码】

我们正在使用Cassandra 2.0.15,并且从所有应用主机中定期(大约每3分钟)出现大量读取延迟(> 60秒).我们测量对session.execute(stmt)的调用的延迟.与此同时,Cassandra追踪的报告持续时间<1s.我们还在一个循环中,在这些峰值延迟时间内通过cqlsh从同一主机运行查询,并且cqlsh总是在1s内返回.什么可以解释Java驱动程序级别的这种差异?– 编辑:回复评论 – Cassandra服务器JVM设置:-XX:CMSClassUnloadingEnabled -XX:UseThreadPrio...

java – Cassandra CQL无法插入(在输入时没有可行的替代方案)【代码】

在设置cassandra(0.8.4)并使用insert进行测试并通过CLI进行选择后,我继续使用CQL进行JDBC(1.0.3). 这就是我在下面的代码中遇到SQLException,有什么想法吗?Connection conn = DriverManager.getConnection(url); String sql = "INSERT INTO row (KEY, first, last, age) VALUES ( 'Jones', 'Jones', 'Lang', '32');"; // internal error Statement stmt = conn.createStatement(); stmt.execute(sql);例外:java.sql....

使用Datastax Cassandra本机Java客户端管理不同一致性级别的最佳实践

使用CQL3,Cassandra一致性级别现在设置在会话级别.本机Java客户端的Datastax文档说明:Session instances are thread-safe and usually a single instance is all you need per application但我很难看到单个Session实例如何处理多个一致性级别(例如使用QUORUM写入并使用ONE读取).我看到了各处潜在的竞争条件. 一个明显的解决方案是为读取和写入创建单独的会话,每个会话都具有适当的一致性级别集.但这并没有完全解决问题.如果一个类...

python – 如何使用自制软件构建在Cassandra上设置超级用户帐户?【代码】

我已经安装了cassandra和自制软件,我正在尝试创建一个超级用户管理员帐户.当我输入sudo cqlsh -u cassandra -p cassandra时出现此错误:Python Cassandra driver not installed, or not on PYTHONPATH. You might try "pip install cassandra-driver". Python: /System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python Module load path: ['/usr/local/Cellar/cassandra/2.1.2/bin'...

java – 如何设置Cassandra(> 2.0)JVM堆大小为8GB?【代码】

如何设置Cassandra(> 2.0)JVM堆大小为8GB?当我输入free -m时,它给了我以下内容.如何将Cassandra JVM堆大小设置为8GB?total used free shared buffers cached Mem: 16047 11336 4711 0 81 5814 -/+ buffers/cache: 5441 10606 Swap: 0 0 0解决方法:如文档的Tuning Java resources部分所述:If you decide to change t...

java – 为什么我无法连接到cassandra【代码】

我的笔记本电脑上有一个基本的cassandra设置,它可以使用命令行工具连接到它,但是在java中,以下操作失败:Cluster cluster = new Cluster.Builder().addContactPoints("localhost").withPort(9160).build();任何线索都会非常有用,谢谢!错误是:com.datastax.driver.core.exceptions.NoHostAvailableException: All host(s) tried for query failed (tried: localhost/127.0.0.1 ([localhost/127.0.0.1] Unexpected error during tr...

Java – 在Coldfusion中使用Apache Cassandra【代码】

我正在尝试在我使用Coldfusion进行编码的项目中使用Apache Cassandra.由于Coldfusion没有Apache Cassandra的驱动程序,反之亦然,我试图使用Cassandra的Java驱动程序. 我几乎是一个Java新手所以请耐心等待. 我已经设法将必要的.jar文件复制到/ opt / railo / lib /(我正在使用Railo),并使用下面的代码设法使用Coldfusion连接到Cassandra.我需要帮助的是循环查看Cassandra在运行查询时返回的结果.我在下面列出了非常简单的代码:<cfse...

php – Cassandra:只选择最新的行【代码】

我使用下表:CREATE TABLE IF NOT EXISTS lp_registry.domain (ownerid text,name1st text,name2nd text,name3rd text,registrar text,registered timestamp,expiration timestamp,updated timestamp,technologies list<text>,techversions list<text>,ssl boolean,PRIMARY KEY ((name1st, name2nd, name3rd), registrar, ownerid, registered, expiration, updated) );表不会更新,只会添加新行.每次爬虫检查域时,都会添加新行. 我...

java – Cassandra复制因子大于节点数【代码】

我正在为Apache Cassandra使用datastax java驱动程序(v.2.1.9),我想知道当我将replication_factor设置为大于节点数时会发生什么.我已经读过Cassandra允许这个操作的地方,但是当我尝试保存一些数据时应该会失败(当然这取决于写入一致性级别,但我的意思是ALL的情况).问题是一切正常,即使我尝试保存数据,也不会抛出任何异常.为什么?对于较旧版本的Cassandra,也许我读过的那些信息都很旧了?还有一个问题,是否真的,而不是在我向集群添...

保存java.util.UUID时,Cassandra说“InvalidQueryException:TimeUUID类型的版本无效”【代码】

我正在尝试将java.util.UUID保存到timeuuid类型的Cassandra列.例如,这是一个默认的spring-data-cassandra映射:http://docs.spring.io/spring-data/cassandra/docs/current/reference/html/#mapping-conversion.UUID的值由java.util.UUID #randomUUID()生成我得到一个例外:“com.datastax.driver.core.exceptions.InvalidQueryException:TimeUUID类型的版本无效” 在https://svn.apache.org/repos/asf/cassandra/trunk/src/java/...

尝试使用C#中的Guid作为Cassandra中的主键

我目前正在研究我的NoSQL项目,我有两个数据库Cassandra和Redis(我使用Redis进行缓存).现在使用Redis我有一个列表,我使用DataContract序列化我的自定义对象,但是当涉及到Cassandra时,我正在努力,因为我试图以某种方式在Cassandra表中插入Guid,其中我使用uuid作为主键.我在互联网上搜索过,我所能找到的只是Guid是Cassandra的uuid数据类型.我已经在Cassandra中使用now()插入了uuid所以我想知道我是否可以以某种方式从C#调用now()或者如...