在使用WSO BAM 2.5.0时,Cassandra经常崩溃

时间:2016-08-23 11:20:30

标签: cassandra wso2 wso2-am wso2bam

我们使用Cassandra 1.2.9 + BAM 2.5进行API分析。 我们安排了一项工作来进行cassandra数据清除。此数据清除作业分为三个步骤。 第一步是查询原始列族,然后将它们插入临时columnFamily_purge。 第二步是通过添加逻辑删除从orinal列族中删除,并将columnFamily_purge中的数据插入到原始列族中。 第三步是删除临时columnFamily_purge

第一步运行良好,但第二步经常在Hadoop映射任务期间崩溃cassandra服务器,这使得Cassandra不可用。异常堆栈跟踪如下:

2016-08-23 10:27:43,718 INFO org.apache.hadoop.io.nativeio.NativeIO: Got UserName hadoop for UID 47338 from the native implementation
2016-08-23 10:27:43,720 WARN org.apache.hadoop.mapred.Child: Error running child
me.prettyprint.hector.api.exceptions.HectorException: All host pools marked down. Retry burden pushed out to client.
at me.prettyprint.cassandra.connection.HConnectionManager.getClientFromLBPolicy(HConnectionManager.java:390)
at me.prettyprint.cassandra.connection.HConnectionManager.operateWithFailover(HConnectionManager.java:244)
at me.prettyprint.cassandra.model.ExecutingKeyspace.doExecuteOperation(ExecutingKeyspace.java:113)
at me.prettyprint.cassandra.model.MutatorImpl.execute(MutatorImpl.java:243)
at me.prettyprint.cassandra.service.template.AbstractColumnFamilyTemplate.deleteRow(AbstractColumnFamilyTemplate.java:173)
at org.wso2.carbon.bam.cassandra.data.archive.mapred.CassandraMapReduceRowDeletion$RowKeyMapper.map(CassandraMapReduceRowDeletion.java:246)
at org.wso2.carbon.bam.cassandra.data.archive.mapred.CassandraMapReduceRowDeletion$RowKeyMapper.map(CassandraMapReduceRowDeletion.java:139)
at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:145)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:764)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:364)
at org.apache.hadoop.mapred.Child$4.run(Child.java:255)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)
at org.apache.hadoop.mapred.Child.main(Child.java:249)

有人可以帮忙解决这个问题吗?谢谢!

2 个答案:

答案 0 :(得分:0)

这可能由于3个原因而发生。

1)Cassandra服务器已关闭。我不认为你的设置就是这种情况。

2)网络问题

3)负载高于集群可以处理的负载。

如何删除数据?使用配置单元脚本?

答案 1 :(得分:0)

在增加打开文件数和最大线程数后,问题就消失了。