Tag: cassandra

防止Cassandra转储hprof文件

我想阻止Cassandra转储hprof文件,因为我不需要使用它们。 我也有非常有限的磁盘空间(100 GB中的50GB用于数据),这些文件吞噬了所有磁盘空间,然后才能说“停止”。 我该怎么办呢? 是否有我可以用来擦除这些文件的shell脚本?

Java,Spark和Cassandra java.lang.ClassCastException:com.datastax.driver.core.DefaultResultSetFuture无法转换为阴影

我在尝试将数据写入我的Cassandra数据库时遇到错误。 我在这里得到的:1)Dictionary.java package com.chatSparkConnactionTest; import java.io.Serializable; public class Dictionary implements Serializable{ private String value_id; private String d_name; private String d_value; public Dictionary(){} public Dictionary (String value_id, String d_name, String d_value) { this.setValue_id(value_id); this.setD_name(d_name); this.setD_value(d_value); } public String getValue_id() { return value_id; } public void setValue_id(String value_id) { this.value_id = value_id; } public String getD_name() { […]

使用CQL jdbc驱动程序时应该是什么连接字符串

使用CQL jdbc驱动程序时连接字符串应该是什么? 我能在Java在线使用CQL JDBC驱动程序找到适当/完整的CQL示例吗?

如何访问Cassandra节点的本地数据

从我对Cassandra的了解不多,似乎数据局部性对于访问节点的客户端应用程序来说应该是透明的。 但是,如果我明确只想访问我所连接的节点本地的列族数据,该怎么办? 这样的事情可能吗? 我还没有找到一种从客户端API开箱即用的方法,但似乎我可以通过系统表获取一些这些信息,但我无法弄清楚如何做到这一点。 这个想法是执行mapreduce,但不使用Hadoop。 本地客户端将连接到其本地cassandra节点,对本地数据执行聚合,然后将其传递回上游。 这样的事情有可能吗? 从它的外观来看,似乎有可能因为我已经看到Hadoop能够使用Cassandra的证据,但这些例子似乎是针对Hadoop而不是通用客户端。 本地客户端(与Casandra交谈)将使用Java。 我目前正在使用Hector,但我不确定它是否会提供任何数据位置信息。

主线程java.lang.NoClassDefFoundError中的exception

在线程“main”java.lang.NoClassDefFoundError:com / google / common / util / concurrent / FutureCallback中获取错误exception,同时在代码下运行。 请告知我缺少哪个Jar文件。 我正在从Eclipse IDE执行 package Datastax; import com.datastax.driver.core.Cluster; import com.datastax.driver.core.Host; import com.datastax.driver.core.Metadata; import com.datastax.driver.core.Session; public class DataStaxPOC { private Cluster cluster; public void connect(String node) { cluster = Cluster.builder().addContactPoint(node).build(); Metadata metadata = cluster.getMetadata(); System.out.printf(“Connected to cluster: %s\n”, metadata.getClusterName()); for ( Host host : metadata.getAllHosts() ) […]

如何使用映射管理器在cassandra日期字段中存储java.sql.Date?

有人可以帮助我使用Java以yyyy-mm-dd格式将当前系统日期存储在cassandra日期列中吗? 使用MappingManager保存java.sql.Dateexception。 我的示例程序是: Test.java import com.datastax.driver.mapping.annotations.Table; import java.sql.Date; @Table(keyspace = “testing”, name = “test”) public class Test { private String uid; private Date rece; public String getUid() { return uid; } public void setUid(String uid) { this.uid = uid; } public Date getRece() { return rece; } public void setRece(Date rece) { this.rece = rece; […]

压缩是否应该在gc_grace_seconds内保留墓碑?

如果我删除一行(创建一个墓碑),并在gc_grace_seconds内运行一个主要的压缩,那么人们是否会期望墓碑至少存在直到gc_grace_seconds已经过去?

Cassandra使用TokenAwarePolicy和shuffleReplicas进行负载均衡

我们有6个节点集群,我们将所有内容部署到具有3个可用区的AWS上的一个区域。 我们正在使用Ec2Snitch,它应该在每个可用区域中分配一个副本。 我们使用DataStax Java驱动程序。 执行写入和读取的服务器分布在与节点相同的可用区域中(AZ服务器为1个服务器)。 我们想要实现的是最佳的读取性能,对于我们来说,写入并不是那么重要,因为我们需要编写数据但不是必需的快速。 我们使用复制因子3,但读取和写入一致性级别为ONE。 我们正在调查TokenAwarePolicy中的 shuffle副本。 在DataStax Java Driver中可以说它可以提高读取性能但减少写入分配。 第一个问题是关于shuffleReplicas实现,我遵循newQueryPlan方法的实现,我想到的是对于副本LinkedHashSet使用意味着主副本将始终优先于非主副本。 // Preserve order – primary replica will be first Set replicas = new LinkedHashSet(); 只是为了确认,这意味着如果我们将shuffleReplicas设置为false,那么驱动程序将始终更喜欢连接到主副本所在的节点,将其作为协调器,这可能会产生热点? 第二个问题是关于将连接分离到集群的想法,对于写入,使用shuffleReplicas on true,它将在集群中均匀地分配令牌,并且读取使用TokenAwarePolicy和false的shuffleReplicas以获得最佳可能读取,这个想法是否可行,你看到了吗?有什么问题吗? 我们希望始终从相同的可用区读取数据,以便在读取数据时获得最大可能的速度。 这是更好的方法,然后将shuffleReplicas为true,让集群均匀地选择协调器。 想法也可以使用WhiteListPolicy ,它将仅选择从同一个AZ到放置在该AZ中的服务器的节点,这将导致本地读取但可以创建热点。

卡桑德拉:因为java.lang.UnsupportedClassVersionError

我对cassandra没有任何问题,但今天我尝试安装最新的cassandra ver,在我尝试运行此命令后安装cassandra : sudo cassandra -f 它会导致此exception: Exception in thread “main” java.lang.UnsupportedClassVersionError: org/apache/cassandra/service/CassandraDaemon : Unsupported major.minor version 51.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:634) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:277) at java.net.URLClassLoader.access$000(URLClassLoader.java:73) at java.net.URLClassLoader$1.run(URLClassLoader.java:212) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:205) at java.lang.ClassLoader.loadClass(ClassLoader.java:321) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) Could not find the main class: org.apache.cassandra.service.CassandraDaemon. Program will exit. java version “1.6.0_27” […]

如何在Cassandra中列出列族中的所有列名?

我正在使用Cassandra,我想制作一个数据浏览器,显示任何列族的内容。 我需要获取列名来配置UI网格。 是否可以收集所有行中的列名?