Cassandra在3分钟内不接受超过800K的邮件(共5分钟)
在高容量/高速度场景中将消息插入Cassandra时,我面临一个问题,。我有一个模拟器,它能产生5密耳的负载。3分钟内发短信。这些信息进入卡夫卡主题,由Spark RDD收听,然后读取卡夫卡的记录并插入卡桑德拉。问题是我的Cassandra(单节点安装)无法接收800K以上的消息,并且挂起(在控制台上看不到任何日志消息或移动) 以下是有关我的部署计划的一些简要要点:Cassandra在3分钟内不接受超过800K的邮件(共5分钟),cassandra,apache-spark,Cassandra,Apache Spark,在高容量/高速度场景中将消息插入Cassandra时,我面临一个问题,。我有一个模拟器,它能产生5密耳的负载。3分钟内发短信。这些信息进入卡夫卡主题,由Spark RDD收听,然后读取卡夫卡的记录并插入卡桑德拉。问题是我的Cassandra(单节点安装)无法接收800K以上的消息,并且挂起(在控制台上看不到任何日志消息或移动) 以下是有关我的部署计划的一些简要要点: Ubuntu上Java-1.7.0_51-b13上的Cassandra-2.1.8运行在EC2实例上,具有30Gb的RAM和HD
- Ubuntu上Java-1.7.0_51-b13上的Cassandra-2.1.8运行在EC2实例上,具有30Gb的RAM和HDD 30GBs李>
- Spark正在推送大小为2kbs的JSON消息李>
- Spark在一个单独的EC2实例上运行,模拟器也是如此
- 令牌数:256
- 提示切换已启用:true
- 最大提示窗口单位:10800000
- 暗示的\u切换\u限制\u(单位:1024 kb)
- 最大提示线程数:2
- batchlog\u replay\u throttle\u(单位:kb):1024
- 验证者:AllowAllAuthenticator
- 授权人:授权人
- 权限\u有效性\u在\u ms中:2000
- 分割者:org.apache.cassandra.dht.murrul
- 分区器磁盘\u故障\u策略:停止
- 提交失败策略:停止
- 密钥缓存大小(单位:mb):
- 密钥缓存保存周期:14400
- 行缓存大小(单位:mb):0
- 行缓存保存周期:0
- 计数器缓存大小(单位:mb):
- 计数器缓存保存周期:7200
- commitlog_同步:定期
- 提交日志同步周期(毫秒):10000
- 提交日志\段\大小\单位:32
- 种子提供程序:
- 类名:org.apache.cassandra.locator.SimpleSeedProvider
- 并发读数:32
- 并发写入:64
- 并发计数器写入:32
- memtable_分配_类型:堆_缓冲区
- 索引\u摘要\u容量\u(单位:mb):
- 索引\u摘要\u调整大小\u间隔\u分钟:60
- 涓流同步:错误
- 涓流同步间隔(单位:kb):10240
- 存储端口:7000
- ssl_存储_端口:7001
- 收听地址:ec2-XXX.us-west-2.compute.amazonaws.com
- 广播地址:ec2-XXX.us-west-2.compute.amazonaws.com
- 启动\u本地\u传输:true
- 本地\u传输\u端口:9042
- start_rpc:true
- rpc_地址:ec2-XXX.us-west-2.compute.amazonaws.com
- rpc_端口:9160
- 广播地址:ec2-XXX.us-west-2.compute.amazonaws.com
- rpc_keepalive:正确
- rpc_服务器_类型:同步
- 节约型框架运输型尺寸单位:15
- 增量备份:false
- 压缩前的快照:false
- 自动快照:true
- 墓碑警告阈值:1000
- 墓碑\u故障\u阈值:100000
- 列索引大小(kb):64
- 批量大小警告阈值大小(kb):5
- 每秒压缩量:16
- 压缩\u大分区\u警告\u阈值\u mb:100
- sstable_抢占式_打开_间隔(单位:mb):50
- 读取请求超时(单位:10000)
- 范围\u请求\u超时\u毫秒:50000
- 写入请求超时时间(单位:5000)
- 计数器写入请求超时时间单位:5000
- cas\U争用\U超时\U毫秒:1000
- 截断请求超时时间(单位:60000)
- 请求超时(单位:10000)
- 交叉节点超时:false
- 端点_告密者:SimpleSnitch
- 动态\u飞贼\u更新\u间隔\u毫秒:100
- 动态飞贼重置间隔时间:600000毫秒
- 动态窃贼不良阈值:0.1
- 请求调度程序:org.apache.cassandra.scheduler.NoScheduler
- 服务器加密选项: 节间加密:无 密钥库:conf/.keystore 密钥库密码:cassandra 信任库:conf/.truststore 信任库密码:cassandra客户端加密选项: 已启用:false 密钥库:conf/.keystore 密钥库\密码:cassandra节间\压缩:全部
- inter_dc_tcp_节点延迟:false
罗希特·阿南德。。我将Cassandra从2.1.8升级到2.1.9,它开始毫无例外地承载我的负载。我的车保持相同的环境,能够装载10 Mil。10分钟内发送2 KBs的信息。通过火花。。因此,似乎有一些已知的问题在以后的版本中得到了修复…听起来可能是内存不足。你的卡桑德拉环境是什么样子的?表的数据模型也是什么?由于注释限制,无法发布完整的文件,请告诉我具体的行或片段,我将发布domainid uuid、messagearrivaltimestamp timestamp、messageid uuid、RawMessageText、主键(domainid、messagearrivaltimestamp))(messagearrivaltimestamp ASC)bloom_filter_fp_chance=0.01和caching={“key”:“ALL”,“rows_per_partition”:“NONE”}和comment=''和compression={'class':org.apache.cassandra.db.compression.SizeTieredCompactionStrategy'}和compression={'sstable_compression':'org.apache.cassandra.io.compressor'}dclocal_read_repair_chance=0.1,默认_time_to_live=0,gc_grace_seconds=864000,max_index_interval=2048,memtable_flush_period_in_ms=0,min_index_interval=128,read_repair_chance=0.0,推测性_retry=99.0%,Ok。nodetool info的输出就可以了