问题标签 [scylla]

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 回答
251 浏览

cassandra - cassandra如何为复合主键选择令牌

我想为我的表的一行获取令牌,其主键如下所示:

PRIMARY KEY ((C1, C2), C3)

我尝试选择以下

SELECT token((C1, C2), C3) from myTable

但得到一个错误 SyntaxException: line 1:12 no viable alternative at input '('

这种查询的正确语法是什么

0 投票
2 回答
96 浏览

cassandra - system.log 中的墓碑扫描

我有一个删除用例较少的 cassandra 集群。我在我的 system.log 中发现“ Read 10 live and 5645464 tombstones cell in keyspace.table ”是什么意思?请帮助理解。

谢谢。

0 投票
1 回答
305 浏览

apache-spark - 处理大部分表时,Cassandra 分区大小与分区计数

我在 cassandra 数据库中有一个数据集,其中每个记录必须每月处理一次(基本上是每月订阅)。进程每天运行,因此数据分为 31 个块,每天处理。我正在尝试设计一个分区键以避免过滤所有数据集。

第一个解决方案是分配一个基于一个月中某天的分区键。这意味着我每天可以处理固定数量的分区 (31)。但问题是数据大小会随着时间的推移而增加,但分区数将保持不变,我可能会因为行太宽而遇到性能问题。

其他解决方案是根本不处理这个问题,每天使用 apache spark 处理所有表(基本上使用 spark 过滤选择 1/31 的数据)。随着时间的推移,数据会增加,但集群中的节点也会增加,我可能会有一个恒定的性能。但所有建议都反对 cassandara 中的数据过滤。

在这种情况下理论上可能拥有的最大行数约为 10 亿。

会有什么建议?

0 投票
1 回答
1470 浏览

scylla - scylla-server 无法启动

安装 scylla 服务器后,它无法启动并显示以下错误消息,

Jun 04 07:07:56 localhost.localdomain scylla[29145]:Scylla 版本 2.3.5-0.20190417.0e0f9143c 开始... Jun 04 07:07:56 localhost.localdomain scylla[29145]:[shard 0] init - 仅限每个分片 476 MiB;这低于建议的最低 1 GiB/分片;终止。配置更多内存(--memory 选项)或减少分片数(--smp 选项)。6 月 4 日 07:07:56 localhost.localdomain scylla[29145]: [shard 0] seastar - 退出未处理的异常:std::runtime_error(配置(每个分片的内存太低))6 月 4 日 07:07:56 localhost.localdomain systemd[1]:scylla-server.service:主进程退出,code=exited,status=1/FAILURE Jun 04 07:07:56 localhost.localdomain systemd[1]:无法启动 Scylla Server。-- 主题:单元 scylla-server.service 失败 -- 定义者:systemd

-- 支持: http: //lists.freedesktop.org/mailman/listinfo/systemd-devel

-- 单元 scylla-server.service 失败。

-- 结果失败。Jun 04 07:07:56 localhost.localdomain systemd[1]: Scylla JMX 的依赖失败。-- 主题:单元 scylla-jmx.service 失败 -- 定义者:systemd

-- 支持: http: //lists.freedesktop.org/mailman/listinfo/systemd-devel

-- 单元 scylla-jmx.service 失败。

-- 结果是依赖。6 月 4 日 07:07:56 localhost.localdomain systemd[1]:作业 scylla-jmx.service/start 失败,结果为“依赖”。Jun 04 07:07:56 localhost.localdomain systemd[1]: 单元 scylla-server.service 进入失败状态。Jun 04 07:07:56 localhost.localdomain systemd[1]: scylla-server.service 失败。

free -m total used free shared buff/cache available Mem: 1838 179 1038 25 621 1445 Swap: 2048 113 1935

0 投票
0 回答
189 浏览

node.js - Node 的 Cassandra-driver 未连接到 ScyllaDB 服务器

这个问题也适用于 Cassandra。

我在 Node 中使用 Cassandra-driver packagegae 连接到我的 ScyllaDB 节点。该节点可以通过 cqlsh 从其网络之外的其他 linux 机器访问。但是,当我使用 Windows 通过 Node 应用程序连接到它时,它无法访问主机。我也尝试过使用端口 9042、9160 和其他一些端口。

以前,我使用 Docker 在同一个 Linux VM 中托管多个 ScyllaDB 节点,而 Docker 最终通过端口 80 公开它们——我能够通过 Node 应用程序连接到该端口。

你认为问题出在哪里?Windows 在连接到 Scylla/Cas​​sandra 节点时是否有问题?

PS:Scylla 节点托管在 Azure 上的 Ubuntu 18.04 VM 上。

0 投票
1 回答
1852 浏览

node.js - 如何将 Node.js 应用程序正确连接到 Cassandra 节点?

我有两个 Cassandra 节点托管在两个 IP 上。现在,当我从 Windows 通过 Node.js 中的 cassandra-driver 连接到其中一个节点时,我收到“连接超时”和“主机无法访问”类型的错误。但是,我可以从网络外部通过 CQLSH 连接到这些节点。

难道我做错了什么?这是示例代码。

在 cassandra.yaml 中,我有以下值:

我需要改变什么?节点工作正常,并且可以相互进行 CQLSH(也可以从远程网络)。

0 投票
2 回答
151 浏览

cassandra - driver datastax 驱动程序分页何时产生的页面少于请求的页面?

我正在尝试使用 fetch-size 使用 datastax-driver 分页。但是datastax文档说如下

请注意,设置提取大小并不意味着 Cassandra 将始终返回确切的行数,它可能会返回或多或少的结果

真的不知道分页实现的内部细节,但是有人可以澄清一下我们在什么情况下从服务器获得或多或少结果?例如,如果我将 fetch-size 设置为 10,则根据上述语句,可能会得到 8 或 12 行结果。但我想了解在什么情况下我们会收到 8 行(或 12 行)?

0 投票
1 回答
87 浏览

io - Why the Scylla did not use cgroup blkio for I/O scheduler?

Recently I found a article.

And I noticed in the article that the I/O scheduler in scylla uses a easier traffic control for I/O which just tasks task_quota, iops and io_bandwidth into account.

To my kownledge, the cgroup, blkio also uses these three factor for I/O scheduler.

I am confused that, what is the difference between scylla I/O scheduler and cgroup blkio? Why scylla did not use cgroup blkio directlly?

0 投票
1 回答
230 浏览

scylla - 来自 scylla_setup iotune 的磁盘 iops 研究我的磁盘与 fio 测试数据不同

使用 scylla_setup 时,iotune 研究我的结果是:

iops 为 1900-2000,使用 fio 时,

结果是

读取 iops 为 46000 - 48000,写入 iops 为 15000-16000

0 投票
1 回答
320 浏览

cassandra-3.0 - 在不提供主键的情况下查询表的最佳方式

我正在设计我们的 Scylla 数据库的数据模型。例如,我创建了一个表 intraday_history,其中包含以下字段:

CREATE TABLE intraday_history (id bigint,timestamp_seconds bigint,timestamp timestamp,sec_code text,open float,high float,low float,close float,volume float,trade int, PRIMARY KEY ((id,sec_code),timestamp_seconds,timestamp));

我的 id 是 twitter_snowflake 生成的 64 位整数。我的问题是如何在不提供 id 的情况下使用 WHERE(大多数情况下我将使用带有 bigint 的时间戳)。我在其他表中也遇到了这个问题。因为 id 是唯一的,所以我无法查询一批时间戳。

如果让我们为我的 1 个节点说一堆表,我会使用这样的 ID,cluster1这样当我查询 id 时,我只会 id=cluster1 吗?但它失去了唯一性特征

Allow filtering在这里作为一个选项。但我一直读到这是一种不好的做法,尤其是在处理数百万个查询时。

我正在使用 ScyllaDB,它是 Apache Cassandra 的兼容 c++ 版本。