问题标签 [cassandra-2.1]

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 投票
2 回答
328 浏览

cassandra - 增加虚拟机数量会降低 Cassandra 吞吐量。可能是什么原因?

我正在使用 YCSB 基准测试工具对 Cassandra 集群进行基准测试。我正在改变集群中虚拟机的数量。我使用1台物理主机,我使用1,2,3,4个虚拟机进行基准测试(如图所示)。

生成的工作负载始终相同 工作负载 C 10,000,00 次操作,10,000 条记录 每个 VM 有 2 GB RAM,20GB 驱动器

Cassandra - 1 个种子节点,endpoint_snitch - gossipproperty Keyspace YCSB - 复制因子 3,

问题是当我增加集群中的虚拟机数量时,吞吐量会降低。可能是什么原因?

根据定义,通过增加计算资源(即虚拟机),集群应该提供更好的性能,但情况正好相反,如图所示。请解释这可能是什么原因?我正在写关于这个主题的论文,但我无法找出原因,请帮助,我将不胜感激。

Cassandra 集群中不同数量的虚拟机观察到的吞吐量: cassandra 集群中不同数量的虚拟机观察到的吞吐量

0 投票
1 回答
744 浏览

cassandra - 添加一个或多个节点后如何使新的cassandra集群平衡?

为了在这里测试和简单地描述问题,我使用两个节点来构建一个cassandra(2.1.11)集群(192.168.56.110192.168.56.111),现在我向这个集群添加了一个额外的节点(192.168.56.112),我希望我的新环通过使用nodetool move命令来平衡,但是当我使用以下脚步:

  1. 获取192.168.56.110的所有令牌范围,例如981588427421702712 -- 1007755089748978774

  2. 获取新节点的所有token范围,如5458173168911717635 -- 5458821955945522089

  3. 我执行了命令:

    根据文章负载均衡说:If you add nodes to your cluster your ring will be unbalanced and only way to get perfect balance is to compute new tokens for every node and assign them to each node manually by using nodetool move command.,我想我似乎理解nodetool move命令错误,但我不知道如何理解它并平衡新集群?任何建议将被认真考虑!

0 投票
1 回答
32 浏览

cassandra - Cassandra 对这个场景有用吗

我有大约 1000 万个名称,大约 5 个文件的组合,每个文件包含 200 万个名称,并且有 100 多个用户。每个用户都有一个包含 100 万个数字的文件。

我需要针对 200 万个名称处理这 100 万个数字并生成值并向用户显示带有名称的值。

cassandra 会是一个不错的选择吗?

目前我正在使用带有 RoR 的 SQL,但返回值的速度很慢。

0 投票
1 回答
136 浏览

cassandra - 使用 cassandra 将元素插入到列表中的特定位置

我想将一个元素插入到特定位置的列表中。我不想替换以前的元素,而是推动一切向前发展。有没有办法在 cassandra 中本地执行此操作,或者我必须取出列表并重写它?谢谢你。

来自 datastax 文档:
使用方括号中的列表索引位置在特定位置添加元素

当您在特定位置添加元素时,Cassandra 会读取整个列表,然后只写入更新的元素。因此,在特定位置添加元素会导致比在列表中添加或添加元素的延迟更大。

0 投票
1 回答
525 浏览

datastax-enterprise - Cassandra 中的 3 节点集群的复制因子为 3,一致性级别为多数据中心中的 LOCAL_ONE 是否可以接受?

我们有 2 个数据中心,每个数据中心有 3 个节点,每个数据中心的复制因子为 3(总共 6 个副本),读取一致性级别为 LOCAL_ONE。由于我们没有使用 LOCAL_QUORUM 或 DC_LOCAL_QUORUM,每个数据中心使用 3 个节点是否可以接受?

任何人都可以建议使用当前配置进行读取操作的最佳一致性级别,以便获取跨数据中心的最新信息吗?

谢谢

0 投票
2 回答
1320 浏览

cassandra - datastax opscenter 代理未安装

我在 127.0.1.1 上运行我自己的 cassandra 版本。我将rpc_address和更改address为 127.0.1.1。

当我启动Opscenter时,系统会提示我安装agents,并且我是通过推荐的Fix now选项安装的。但是当我尝试安装时,它会询问我一些 Node ssh 凭据。我不知道这是什么意思。

输入随机凭据

安装失败

在此处输入的正确凭据是什么?

我尝试在具有 root 权限的 Linux 上添加一个新用户,并尝试使用该用户名,但它不起作用。我也手动尝试运行,install_agent.sh但它不起作用。

我错过了什么吗?

编辑:

地址.yaml

cassandra.yaml

http://textuploader.com/57ivn

编辑2:

对于用户名和密码,我使用的是我的 datastax 凭据。对于私钥,我使用/etc/ssh/ssh_host_rsa_key.pub@apesa 提到的密钥。但它仍然无法安装代理。

我的 address.yaml 文件是否正确?

编辑 3:

就像您在下图中看到的那样,当认为 Opscenter 未连接到代理时,我仍然可以看到 cassandra 中的键空间和表。

在此处输入图像描述

因为sudo netstat -p | grep 127.0.1.1我没有输出。

输出分别是 this 和 this 。简而言之,是的,我可以看到罐子,我也猜到了环境变量。

你问我是怎么开始 cassandra 的?

sudo ./bin/cassandra从 cassandra 的文件夹中。之后,我使用火花流将数据从 kafka 流式传输到 cassandra。但在这里应该没关系。

Even if it is not connecting to the agent the opscenter should still show the cassandra instance. Do you see your test_Cluster?是的!我愿意!

最后,nodetool status给我这个:

我所相信的:

我不确定,但也许我address.yaml的不正确?我已经更新了我的address.yaml上面,也许我需要改变一些东西?当我运行时,更改 address.yaml 会给我不同的输出./datastax-agent。谢谢。

编辑4:

尝试了@apesa 建议的所有内容,这是脚本的详细输出。我仍然有同样的问题。

版本:

sudo netstat -p的输出| grep:9042

sudo netstat -p的输出| grep:7199

空白的

sudo netstat -p的输出| grep:61620

空白的

这是控制台登录运行sudo ./datastax-agent

简而言之,这是错误行:

但我不知道为什么它试图连接到 127.0.0.1 上的 cassandra,因为 cassandra 正在 127.0.1.1 上运行。我在这里做错了什么?

0 投票
1 回答
6991 浏览

cassandra-2.1 - 在 Cassandra 中创建触发器的示例,这是否仅支持 Java?

想检查 Cassandra 中的触发器功能。有人可以提供一个创建触发器的例子吗?

从这个博客, http://www.datastax.com/dev/blog/whats-new-in-cassandra-2-0-prototype-triggers-support

要创建触发器,您必须首先使用实现ITrigger接口的类构建一个 jar,并将其放入每个节点上的 triggers 目录中,然后执行 CQL3CREATE TRIGGER请求以将触发器绑定到 Cassandra 表(或多个表)。

根据此信息,Cassandra 中的触发器仅适用于基于 Java 的应用程序?

0 投票
1 回答
639 浏览

nodetool - 复合分区键的 Nodetool 变得稳定

我在键空间测试中有一个如下表 -

CREATE TABLE mytable ( firstname text, lastname text, address text, phone text, PRIMARY KEY (firstname,lastname,address) )

我插入了一条记录

并且还执行nodetool compact test mytable强制记录进入sstable。

现在我想nodetool getsstables为这条记录执行。我将如何在此命令中传递复合键nodetool getsstables test mytable <key>

0 投票
1 回答
80 浏览

cassandra - cql-import cassandra中的动态地图条目

我有 2 个 mysql 表,如下所示

表员工:

id int,名称 varchar

表电子邮件

emp_id int, email_add varchar

表电子邮件和员工通过employee.id = emails.emp_id 连接

我有这样的条目:

mysql> 从员工中选择 *;

mysql> 从电子邮件中选择 *;

6 行一组(0.02 秒)

现在我想以以下 2 种格式将数据导入 cassandra

---格式1---

cassandra 中的表:emp_details:

id , name , email map{text,text}

即数据应该像

1,一个,{'email_1':'aa@gmail.com','email_2:'aaa@gmail.com','email_3':'aaaa@gmail.com'}

2 , b , {'email_1' :'bb@gmail.com' ,'email_2':'bbb@gmail.com'}

3, c, {'email_1' : 'cc@gmail.com'}

---- 格式 2 ----

我想要动态列

id , 姓名, email_1 , email_2 , email_3 .... email_n

请帮助我。我主要关心的是从mysql导入数据到以上2种格式。

0 投票
1 回答
201 浏览

cassandra-2.1 - 在 Cassandra 中检索具有动态属性的数据

我正在为 Cassandra 开发一个被证明是不可能的解决方案。

我们有一个表格,它将返回一组给定搜索条件的候选人。将得分最高的行返回给用户。我们可以用 SQL 很容易地做到这一点,但是需要迁移到 Cassandra。以下是涉及的表格:

价值

计分

发送的查询可以填充或不填充这四个属性中的任何一个。我们搜索我们的值表,计算分数,然后返回最高的分数。如果值表中的一列为空,则表示它适用于所有人。

  • ID 1 适用于美国境内的所有州、市和县。
  • ID 2 适用于州属 TX 的所有国家、市和县。

例子:

你会如何在 Cassandra 2.1 中为这样的东西建模?