- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个用例,我使用 gocql 驱动程序连续将数据批量摄取到 Scylla 中,在繁重的写入测试期间,我观察到 scyllas 写入响应延迟随着时间的推移而增加,有时它会导致 scylla 节点重新启动,如果是 cassandra延迟时间是恒定的。我只想知道这个用例的正确配置,这样我就可以在整个时间内实现恒定的延迟。
用于 scylla 集群的配置
writer process 的详细信息基本上它是一个 kafka 消费者。
消费者的流量是
1- 从 kafka 读取 500 条消息
2- 500 个 worker (goroutine)开始将它分批写入 scylla(cassandra)(单批包含与单个分区相关的数据)每批包含平均 3k 条记录(最大值 => 20k)。(键空间的复制因子为 1)
3-更新计数器表 scylla 中的批处理状态。
4-将这 500 条消息提交给 kafka
5 - 返回第 1 步
soo,基本上在测试中我使用了 3 个消费者。 scylla 无法应对 kafka 的注入(inject)速度,而 cassandra 与注入(inject)速度相匹配。
分享了 load test 的 grafana dashborad,如果还有什么需要请告诉我。
[![注入(inject)与排出率][1]][1]
[![Scylla 内存仪表板][2]][2]
[![scyllaIOqueue][3]][3]
[![ScyllaIo][4]][4]
[![scyllaDiskDetails][5]][5]
[![延迟][6]][6]
[![加载][7]][7]
smp 16
cpuset 0-15
memory 80G
iops
cat /etc/scylla.d/io_properties.yaml
[root@ip /]# cat /etc/scylla.d/io_properties.yaml
disks:
- mountpoint: /var/lib/scylla
read_iops: 265
read_bandwidth: 99796024
write_iops: 1177
write_bandwidth: 130168192
Is there any other config which I missed by which I can achieve constant write latency.
[1]: /image/o0yQc.png
[2]: /image/i0RhS.png
[3]: /image/sA4WY.png
[4]: /image/5QAob.png
[5]: /image/6U5UM.png
[6]: /image/DG2my.png
[7]: /image/TOtuQ.png
saw this logs in scylla container
WARN 2020-02-05 11:07:54,409 [shard 12] seastar_memory - oversized allocation: 1081344 bytes. This is non-fatal, but could lead to latency and/or fragmentation issues. Please report: at 0x2cf31dd
0x2a1d0c4
0x2a21e8b
0x103d7d2
0x103e298
0x10070c0
0x100cd14
0x10289b8
0x1028057
0x1028f59
0x2a003ac
0x2a50491
0x2a5069f
0x2aba615
0x2acedac
0x2a330ed
/opt/scylladb/libreloc/libpthread.so.0+0x85a1
/opt/scylladb/libreloc/libc.so.6+0xfb302
最佳答案
您报告说“写入响应延迟会随着时间的推移而增加”,但没有解释您是如何衡量这一点的,或者它增加了多少。延迟是从 1 毫秒增加到 2 毫秒,还是从 1 毫秒增加到 500 毫秒? 意思是 延迟增加,或 尾部 延迟(例如,第 99 个百分位)增加?
其他响应提出的一些想法将主要解释尾部延迟的增加。但是在您所描述的批处理工作负载中,您通常不关心尾部延迟,而只关心获得合理(甚至不低)的平均延迟(在批处理工作负载中,更重要的衡量标准是吞吐量)。但是,如果您看到平均延迟持续增长并变得不合理,通常发生的情况是您客户的 并发正在增加,或者换句话说,它开始了太多的新写入,而没有等待先前的请求完成(参见 Little's Law)。您没有说您是如何进行“批量写入”的。您是在使用具有固定线程数的客户端,还是您的写入并发性会不受控制地增长?
当您的客户端正确地具有固定的并发性时,Scylla 仍然必须小心不要让客户端相信以前的工作已经完成,而实际上仍然有很多后台工作 - 我在 a blog bost a year ago 中解释了这个问题以及 Scylla 如何解决它.
当然,Scylla 总是有可能在这方面存在错误,因此如果您怀疑它,请在 Scylla 邮件列表或错误跟踪器上报告您的问题 - 并提供更多详细信息。
关于Scylladb : Scylla write latency increasing over the time for continuous batch write ingestion,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59967884/
我有一个关于 Elasticsearch 策略的一般性问题。我们才刚刚起步,我们有一堆非结构化日志(30-40 个日志,~300GB 数据/周)。我对如何以最佳方式将这些数据导入 Elasticsea
我正在使用 java-api 从 CSV 中提取数据。我必须维护每个文档的主键。 Does marklogic provide any unique auto-generated id during
我正在使用filebeat-5.2,logstash-5.2和AWS Elastic Search Service-5.1。 在这里,我在logstash中定义了现有的grok模式 grok{ mat
我一直在努力从Windows IIS日志中将5亿个文档从kafka传输到elasticsearch。在运输过程的开始,一切都很好。 从Kafka-manager仪表板,我可以看到文档输出/字节的速度约
如果我有一个设置为追加的 Magritte 摄取,它是否会检测源数据中的行是否被删除?它还会删除摄取的数据集中的行吗? 最佳答案 对于关于是否检测到删除的第一个问题,这将取决于您从中提取的数据库实现(
我们正在使用来自事件中心源的流提取将数据提取到 ADX 表。 为了规划备份/灾难恢复能力,the documentation建议配置连续导出以从本地中断中恢复,并提供将数据恢复到另一个集群的可能性。
这听起来像是 this year-old issue 的重复但我想知道 BQ 团队是否对流式插入可能需要这么长时间有任何进一步的了解。 (我要花一个小时来处理仅仅 9K 行。) 不确定它是否相关,但我
客观的 我正在构建数据湖,一般流程看起来像 Nifi -> Storage -> ETL -> Storage -> Data Warehouse。 Data Lake 的一般规则听起来像是在摄取阶段
感谢这个recent question我现在确信我定义的表映射是正确的。 这适用于查询面板: .ingest inline into table pageEvents with (format="js
我是Elasticsearch的新手,对这两个术语感到困惑。 token 过滤器和摄取节点。它们都将 token 转换为另一种事物,例如小写 token 等,并且摄取节点也可以这样做。 谁能解释给我什
感谢这个recent question我现在确信我定义的表映射是正确的。 这适用于查询面板: .ingest inline into table pageEvents with (format="js
我有 3 个来自关系数据库的数据库 View ,它们作为 3 个集合被引入 MarkLogic。 这 3 个 View 是相互关联的。 我想加入这些数据,然后将其全部提取到一个非规范化集合中。 我可以
我正在寻找一种使用 Ingest Attachment Processor Plugin 的方法来自 Java 高级 REST 客户端。 看来您需要执行两个步骤,即首先定义一个包含附件处理器的管道(例
我有一个用例,我使用 gocql 驱动程序连续将数据批量摄取到 Scylla 中,在繁重的写入测试期间,我观察到 scyllas 写入响应延迟随着时间的推移而增加,有时它会导致 scylla 节点重新
众所周知,AWS Timestream 已于上周正式发布。 从那时起,我一直在尝试对它进行试验并了解它如何建模和存储数据。 我在将记录摄取到 Timestream 时遇到问题。 我有一些日期为 202
我想将图像从我的系统持续发送到 Azure 云,并使用 Azure 流分析在云上处理图像。 以下是我的要求: 将图像从客户端(我的桌面)持续发送到 Azure。 在云端对收到的图像运行我的机器学习算法
我正在使用ELK进行监视。几天前一切正常,突然停止工作。 请帮我解决问题。 错误日志: java.lang.IllegalArgumentException: Plugin [ingest-geoip
我有一个基于具有 17 个 TU 的标准层的 Azure 事件中心命名空间,它还可以自动膨胀最多 40 个 TU。它有 1 个事件中心实例和 12 个分区。 此 EH 每秒接收 2400 条消息,即
我正在执行以下操作来启动 codegen/服务器以进行回显打印! cd echoprint-server/solr/solr java -Dsolr.solr.home=/home/path/to/e
当我运行此代码时,它显示 KustoAuthenticationError: 无法获取云集群信息 https://clusterName.kusto.windows.net appId 是应用程序(客
我是一名优秀的程序员,十分优秀!