标签: datastax-enterprise

单节点上的Cassandra提交和恢复

我是Cassandra的新手 - 我一直在单个节点上搜索与Cassandra中的提交和崩溃恢复相关的信息.而且,希望有人能澄清细节.

我正在测试Cassandra - 所以,将它设置在一个节点上.我在datastax上使用stresstool插入数百万行.如果出现电气故障或系统关闭会发生什么?在Cassandra重新启动时,Cassandra内存中的所有数据都会被写入磁盘(我猜commitlog充当中介)吗?这个过程需要多长时间?

谢谢!

crash recovery cassandra nosql datastax-enterprise

5
推荐指数
1
解决办法
3080
查看次数

Cassandra VNodes的交易表现如何?

我在6节点集群上使用DataStax Cassandra 1.2.3,每个集群都有四核3GHz处理器和8GB RAM.最近,我开始使用VNodes功能,首先将num_tokens设置为256,然后设置为128.我观察到我正在使用的架构的性能下降[写入请求数/秒].我主要有一个规范化的模式,混合使用宽表和计数器列族.

  1. 是否有人观察到使用VNodes的性能下降?是否有任何已知的优化技术可以更好地利用VNode?

  2. 对于给定的硬件配置/节点,是否可以为num_tokens导出最佳值?

  3. 此外,我看到群集几乎平衡,一个节点自动占用更高的负载份额,尽管我有一个同类群集.在使用VNode之前,我会手动平衡Murmer3Partitioner的集群,性能很好.

谢谢,VS

cassandra datastax-enterprise

5
推荐指数
1
解决办法
1959
查看次数

Datastax Enterprise - Amazon M3.Xlarge Machines

有没有人知道如何在使用amazon ec2 M3.Xlarge机器的集群中使用Datastax enterprise(使用opscenter)?当我尝试使用这些类型的实例(使用ssd)时,我收到以下错误:启动实例失败.指定的节点大小无效

如果我使用M1.Xlarge它可以正常工作.

datastax-enterprise opscenter

5
推荐指数
1
解决办法
299
查看次数

Spark MLlib 0.91 org.jblas.DoubleMatrix错误

我使用的是spark 0.91MLlib 0.91上DSE

尝试在独立模式下运行以下代码时

val parsedData = sc.parallelize((1 to 1000).
  map {
  line =>
    LabeledPoint(0.0, Array(0.0, 0.4, 0.3))
})
val numIterations = 2
val model = LinearRegressionWithSGD.train(parsedData, numIterations)
Run Code Online (Sandbox Code Playgroud)

我收到这个错误:

    14/09/20 14:28:37 ERROR OneForOneStrategy: org.jblas.DoubleMatrix cannot be cast to org.jblas.DoubleMatrix
java.lang.ClassCastException: org.jblas.DoubleMatrix cannot be cast to org.jblas.DoubleMatrix
        at org.apache.spark.mllib.optimization.GradientDescent$$anonfun$runMiniBatchSGD$1$$anonfun$2.apply(GradientDescent.scala:150)
        at org.apache.spark.mllib.optimization.GradientDescent$$anonfun$runMiniBatchSGD$1$$anonfun$2.apply(GradientDescent.scala:150)
        at org.apache.spark.rdd.RDD$$anonfun$6.apply(RDD.scala:677)
        at org.apache.spark.rdd.RDD$$anonfun$6.apply(RDD.scala:674)
        at org.apache.spark.scheduler.JobWaiter.taskSucceeded(JobWaiter.scala:56)
        at org.apache.spark.scheduler.DAGScheduler.handleTaskCompletion(DAGScheduler.scala:846)
        at org.apache.spark.scheduler.DAGScheduler.processEvent(DAGScheduler.scala:601)
Run Code Online (Sandbox Code Playgroud)

只有在尝试运行独立应用程序时才会发生这种情况.它适用于火花壳(dse spark).有任何想法吗?

更新:

当我在REPL上创建一个对象时,getClassLoader返回:

scala>  new org.jblas.DoubleMatrix().getClass().getClassLoader()
res3: ClassLoader = ModuleClassLoader:Analytics
Run Code Online (Sandbox Code Playgroud)

但是当我在独立模式下运行(使用spark类)时,它会返回

new org.jblas.DoubleMatrix().getClass().getClassLoader():
class= SystemClassLoader …
Run Code Online (Sandbox Code Playgroud)

java scala classloader datastax-enterprise apache-spark

5
推荐指数
1
解决办法
918
查看次数

如何在阅读spark中的cassandra分区时获得良好的性能?

我正在使用cassandra-connector将数据从cassandra分区读取到spark.我尝试了以下解决方案来读取partitions.I尝试通过尽可能多地创建rdds来并行化任务,但解决方案ONE和解决方案TWO都具有相同的性能.

在解决方案ONE中,我可以立即看到spark UI中的各个阶段.我试图在解决方案TWO中避免一个for循环.

在解决方案TWO中,阶段在相当长的时间之后出现.随着用户ID的数量增加,在阶段出现在解决方案TWO的火花UI中之前,时间显着增加.

Version
 spark - 1.1
 Dse - 4.6
 cassandra-connector -1.1

Setup
 3 - Nodes with spark cassandra
 Each node has 1 core dedicated to this task.
 512MB ram for the executor memory.
Run Code Online (Sandbox Code Playgroud)

我的cassandra表架构,

 CREATE TABLE   test (
   user text,
   userid bigint,
   period timestamp,
   ip text,
   data blob,
   PRIMARY KEY((user,userid,period),ip)
   );
Run Code Online (Sandbox Code Playgroud)

第一解决方案

 val users = List("u1","u2","u3")
 val period = List("2000-05-01","2000-05-01")
 val partitions = users.flatMap(x => period.map(y => (x,y))))
 val userids = 1 to 10
 for (userid <- userids){ …
Run Code Online (Sandbox Code Playgroud)

scala cassandra datastax-enterprise apache-spark

5
推荐指数
1
解决办法
2956
查看次数

java.lang.UnsupportedOperationException:'不允许写入非空的Cassandra表

我有一个场景,我将接收由我的火花流程序处理的流数据,并且每个间隔的输出将附加到我现有的cassandra表中.

目前我的火花流程序将生成一个数据框,我需要保存在我的cassandra表中.我目前面临的问题是当我使用下面的命令时,我无法将数据/行附加到我现有的cassandra表中

dff.write.format("org.apache.spark.sql.cassandra").options(Map("table" -> "xxx", "yyy" -> "retail")).save()
Run Code Online (Sandbox Code Playgroud)

我已阅读以下链接http://rustyrazorblade.com/2015/08/migrating-from-mysql-to-cassandra-using-spark/,他将mode ="append"传递给save方法但其抛出语法错误

此外,我还能够从以下链接了解我需要修复的位置 https://groups.google.com/a/lists.datastax.com/forum/#!topic/spark-connector-user/rlGGWQF2wnM

如何解决这个问题需要帮助.我正在scala中编写我的spark流媒体作业

cassandra datastax-enterprise apache-spark spark-streaming apache-spark-sql

5
推荐指数
1
解决办法
785
查看次数

Cassandra异常缓存架构版本X与当前架构版本Y不匹配

我们在我们的盒子上安装了DataStax Cassandra社区服务器3.0.2,创建了几个键空间,我们将一些数据从旧数据库迁移到Cassandra(Aroudnd 10GB数据).虽然这就是我们materialized views在这些表上创建的迁移.在创建之后的几分钟(不确定到多长时间),我们获得了我们的服务(部署在2个数据中心架构中的~2x3节点上)随机停止,绝对没有关于它停止的原因的日志信息.之后我们尝试启动服务,我们的日志中出现以下错误

java.lang.RuntimeException: Cache schema version a2c390a1-f2cd-3d59-8b5c-a0a1d794d0fe does not match current schema version 8d1347d7-7729-3698-8537-4b91ae9ce7dd
    at org.apache.cassandra.cache.AutoSavingCache.loadSaved(AutoSavingCache.java:198) ~[apache-cassandra-3.0.2.jar:3.0.2]
    at org.apache.cassandra.cache.AutoSavingCache$3.call(AutoSavingCache.java:157) [apache-cassandra-3.0.2.jar:3.0.2]
    at org.apache.cassandra.cache.AutoSavingCache$3.call(AutoSavingCache.java:153) [apache-cassandra-3.0.2.jar:3.0.2]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_66]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_66]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_66]
    at java.lang.Thread.run(Thread.java:745) [na:1.8.0_66] 
Run Code Online (Sandbox Code Playgroud)

我们试图查看可能导致这种情况发生的代码.这给了我们一些关于它的原因的信息 - 显然服务试图将当前模式版本与缓存中存在的模式匹配(我会假设它在服务停止/创建物化视图之前)我们非常肯定我们没有除了创建物化视图之外,还可以对键空间进行任何架构更改.

那么是什么让我想知道过去没有人报告任何类型的问题?所以我们不确定自己出了什么问题.我们在cleanup节点上运行了nodetool 而没有任何帮助.我们不想丢失任何数据.我们正在尝试恢复,因此我们删除了$CASSANDRA_HOME\data\saved_caches文件夹并重新启动了服务.启动服务器时,它正在重播提交日志,这需要很长时间.我想这可能是由于我们拥有的数据量或机器完全消失而需要更换?

任何与该问题相关的指针可能都非常有用!先感谢您.

如果它可能有所帮助,我们在Windows机器上运行DataStax Cassandra Server并将Cassandra作为Windows服务运行.

windows datastax-enterprise datastax

5
推荐指数
1
解决办法
2820
查看次数

Cassandra节点上的高磁盘I/O.

设置:
我们有3个节点Cassandra集群,每个节点上的数据大约为850G,我们为Cassandra数据目录设置LVM(目前包含3个驱动器800G + 100G + 100G),并为cassandra_logs提供单独的卷(非LVM)

版本:
Cassandra v2.0.14.425
DSE v4.6.6-1

问题:
在每个节点上的LVM中添加第三个(100G)卷后,所有节点的磁盘I/O都非常高,而且它们经常停机,服务器也无法访问,我们需要重启服务器,服务器不要t稳定,我们需要每隔10-15分钟重新启动一次.

其他信息:
我们
在每个节点上的所有节点RAM上配置了DSE推荐的服务器设置(vm.max_map_count,文件描述符):每个节点上24G
CPU:每个节点上有6个核心/ 2600MHz
磁盘:1000G(数据目录)/ 8G(日志) )

cassandra datastax-enterprise datastax cassandra-2.0 datastax-startup

5
推荐指数
1
解决办法
2561
查看次数

无法启动Cassandra - Snitch的Datacenter与之前的不同

我试图在我的本地启动DSE 5.0.1 Cassandra(单节点).

得到以下错误:

CassandraDaemon.java:698 - 如果snitch的数据中心(Cassandra)与以前的数据中心(Graph)不同,则无法启动节点.请修复snitch配置,停用并重新启动此节点或使用标志-Dcassandra.ignore_dc = true

datastax-enterprise datastax cassandra-3.0

5
推荐指数
2
解决办法
7897
查看次数

我可以将 Apache cassandra 节点添加到 DataStax (DSE) cassandra 集群吗?

我正在从 Datastax (DSE) Cassandra 迁移到 Apache Cassandra 3.11。

我有一个包含 7 个 Datastax (DSE) Cassandra 节点的集群。

有没有办法创建新的 apache Cassandra 集群并将其连接到 DSE Cassandra,以便我的写入同时发送到 DSE 和 Apache cassandra

因此,一旦我的数据开始在 Cassandra 中写入,我就可以将我的读取 API 逐渐从 DSE 迁移到 Apache。

cassandra datastax-enterprise cassandra-3.0

5
推荐指数
1
解决办法
761
查看次数