问题标签 [cassandra-2.0]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
791 浏览

cassandra-2.0 - 将数据批量加载到 Cassandra 时出现 NoHostAvailableException

我正在尝试将 100 万个 LUBM 数据集加载到 Cassandra 中。但是,在大约 200,000 次插入后,我不断收到此异常。

线程“主”com.datastax.driver.core.exceptions.NoHostAvailableException 中的异常:所有主机尝试查询失败(尝试:localhost/127.0.0.1(com.datastax.driver.core.exceptions.DriverException:超时期间读))

服务器还活着。我仍然可以使用 Datastax 开发中心执行 CQL 查询。在此之前,我收到了 WriteTimeoutException,因此我在 .yaml 中调整了一些选项

以下是我系统的规格:

CPU- Intel I5 - 2 核| 内存- 4GB | 硬盘 - 500 GB 4 个驱动器。

我有一个 OWL 文件,从中读取数据并将其插入 Cassandra。我有混合的工作量。有时,根据条件,我需要从行中检索数据并将新数据附加到其中并将其写入同一行。这一定不是导致此问题的原因,因为这种情况在 200k 插入期间一定发生了很多次。

我正在使用外部硬盘来存储提交日志。concurrent_reads 设置为 16。 concurrent_writes 设置为 32。 read_timeout 已设置为 10000,write_timeout 也是如此。MAX_HEAP_SIZE="2G" HEAP_NEWSIZE="200M"

一旦我得到帽子异常,我就会看到这个带有这种模式的日志

可能是什么问题呢?

0 投票
2 回答
381 浏览

cassandra - 如何使 Cassandra 具有特定行键的不同列键?

我正在阅读以下有关 Cassandra 的文章:

http://www.ebaytechblog.com/2012/07/16/cassandra-data-modeling-best-practices-part-1/#.UzIcL-ddVRw

这似乎意味着您可以在 cassandra 中为给定的行键使用不同的列键。真的吗?如果它是真的,你如何允许不同的行键。

我认为这可能是真的原因是因为假设我们有一个用户,它可以喜欢很多项目,我们只是希望 userId 是行键。我们让这个 rowKey (userID) 映射到特定用户可能喜欢的所有项目。每个特定用户可能喜欢不同数量的项目。因此,如果我们可以有多个列键,每个用户喜欢的每个 itemID 都有一个,那么我们可以这样解决问题。

因此,是否可以为特定的 rowKey 设置不同长度的 cassandra 列键?(你是怎么做的)

提供一个示例和/或一些 cql 代码会很棒!

让我感到困惑的是,我已经看到了一些 .cql 文件,它们事先定义了键空间,并且在如何使其动态化方面似乎非常不灵活,即允许它随意添加额外的列。例如:

这怎么能允许增长的列?我们不需要事先指定名称吗?或者应用程序需要的其他自定义列?

0 投票
1 回答
4221 浏览

cassandra - Cassandra BatchStatement 行为 - datastax java 驱动程序

我想澄清一下 BatchStatement 的执行。

我已将许多针对不同表的插入/更新语句添加到批处理中。当我执行批处理时,我希望,如果任何一个查询失败,所有其他插入/更新都不应该成功。但它没有发生。我可以看到部分更新/插入。

我怎样才能做到这一点?[如果任何一个查询失败,则不应发生该批次的所有更新/插入。]

如何获取/打印导致批处理执行失败的确切问题查询?

LOGGED 批处理语句的目的是什么?

http://www.datastax.com/drivers/java/2.0/com/datastax/driver/core/BatchStatement.Type.html#LOGGED

在 BatchStatement 中启用跟踪的目的是什么?如何打印跟踪以调试查询问题?

http://www.datastax.com/drivers/java/2.0/com/datastax/driver/core/Statement.html#enableTracing%28%29

我的代码看起来像,

谢谢,

拉梅什

0 投票
4 回答
6271 浏览

cassandra - Cassandra 中的原子批处理

批处理语句在 cassandra 中是原子的是什么意思?准确地说,文档在本质上有点令人困惑。这是否意味着查询在集群中的节点之间是原子的?

比如说,我有一个包含 100 个查询的批次。如果批处理中的第 40 个查询失败,那么批处理中执行的 39 个查询会发生什么?

我知道在后台创建了一个批处理日志,它将处理部分批处理的一致性。它是否删除了其余 39 个条目并提供了批处理查询所需的原子性质。

在 MYSQL 中,我们将 autocommit 设置为 false,因此我们可以回滚。在这些情况下,cassandra 会回滚吗?

0 投票
1 回答
457 浏览

cassandra - cas操作期间的cassandra cql一致性

我们想使用检查和设置操作,但我们不想让它传播到我们的数据中心之外。用例是我们希望只允许在一个数据中心添加新用户,但我们希望他们的数据可以从其他数据中心访问以用于读取目的。为此,我们希望使用 LOCAL QUORUM 和 LOCAL SERIAL 读取执行 CAS 操作。

这个问题与我们的问题有关:Cassandra: DC Local CAS

看起来问题已得到解决/修复,但我找不到如何使用 CQL 测试/指定此问题的示例。

  • 是否可以在 CQL 中的 CAS 操作期间指定一致性?如何?
  • 如果不是,CQL 中 CAS 期间使用的一致性是什么?
  • 我们目前正在使用 DataStax C++ 进行编程查询。这可能来自那个API吗?
0 投票
2 回答
736 浏览

python - Cassandra中的行排序

我在 Cassandra 2.0.5 中有以下列族,使用Murmur3Partitioner. 在这个列族中,我存储了一个时间范围内唯一散列的幻影数量(从随时间发生的事件中提取的散列 - 并不真正相关)。

hour我的用例是选择给定时间范围(字段)内的所有哈希值及其计数。

由于数据量可能非常大,我尝试进行分页,例如使用LIMIT并从最后返回的哈希继续,如下例所示。它似乎有效,因为哈希似乎以升序排序返回。

有人可以解释这是否真的有效,为什么?特别是因为我发现这个链接表明这些行是......没有排序的,所以现在我考虑一下,应该随机返回散列。

我确实通过使用分页方法和COUNT在 cqlsh 中使用来计算行数来验证该过程,但是由于大量数据,我无法真正检查是否返回了所有正确的哈希值。

0 投票
1 回答
1019 浏览

cassandra - 如何快速从 Cassandra 中查询和提取最大值?

如果我希望能够快速查询 Cassandra 中的表并从中提取最大值,应该如何为其设计列族?

例如,如果我有一个人 ID 为的表,并且我还为每个人存储他们的速度,我如何设计表以便我可以尽可能快地查询最慢的人?

我们需要将速度作为主键吗?或者在上面创建一个索引什么的?

在这个例子中,我怎么知道什么时候选择二级索引而不是主键?

是否可以通过将速度作为二级索引来提取最慢的前 k 个人?

我想我的问题也试图解决 Casssandra 中的事情是如何排序的。

0 投票
1 回答
1679 浏览

cassandra - 如何让 cassandra 将值的元组存储在一行中,而不实际存储列表?这甚至可能吗?

我正在阅读以下有关使用 cassandra 数据建模的博客:

http://www.ebaytechblog.com/2012/07/16/cassandra-data-modeling-best-practices-part-1/#terms

我试图了解如何使用 CQL 命令实现或实际执行其中的一些内容。

我对博客/教程中选项 3 部分的以下图片感兴趣。

在此处输入图像描述

我主要对实现底部的两个感兴趣。

在左下角的图片中,行键是项目 ID,列是喜欢该项目的用户。在本教程中,它展示了如何将一个用户存储在密钥中,有点像名称和用户 ID 的元组。如何在 CQL 中做到这一点?令我困惑的是,对于一个用户,该表能够在一行中为其存储两列值(即它存储用户 ID 和用户名)。我有点困惑,实际上这对 Cassandra 是怎么可能的。从概念上讲,这对我来说是有意义的,但是,我不确定我是否了解如何让 cassandra 真正做到这一点。

0 投票
2 回答
774 浏览

sorting - 如何快速检索 Cassandra 表中的排序值?

我正在阅读以下教程:

http://www.ebaytechblog.com/2012/07/16/cassandra-data-modeling-best-practices-part-1/#terms

其中一个解释是下图:

在此处输入图像描述

它说行按行键排序,列按列键排序。

这是否意味着列按列值排序而行键按行值排序?例如,如果我的第 1 行的值是 10、2、30、4(所有整数),它会将该键的列排序为 2、4、10、30?

同样对于行,如果我们有 11、22、3、44,它会将行排序为 3、11、22、44?

我只是对按列排序意味着什么感到困惑。

我有兴趣澄清这一点的原因是,如果我可以对我插入的值进行排序,那对我来说将非常方便,因为我不必在列中插入排序列表。

0 投票
4 回答
35100 浏览

cassandra - 如何列出键空间中的列族?

如何使用 CQL 3 获取 Cassandra 中键空间中所有列族的列表?