在hadoopmapreduce任务中建立cassandra连接

atmip9wb  于 2021-06-03  发布在  Hadoop
关注(0)|答案(0)|浏览(253)

在开始mapreduce作业之前,我成功地使用datastax java驱动程序访问java代码中的cassandra。

cluster = Cluster.builder().addContactPoint("127.0.0.1").build();

然而,我需要检查额外的信息,以决定在每个记录的基础上如何减少记录。如果我尝试在hadoop reducer类中使用相同的代码,它将无法连接,并出现以下错误:

INFO mapred.JobClient: Task Id : 
attempt_201310280851_0012_r_000000_1, Status : FAILED
com.datastax.driver.core.exceptions.NoHostAvailableException: 
All host(s) tried for query failed (tried: /127.0.0.1 ([/127.0.0.1] 
Unexpected error during transport initialization 
(com.datastax.driver.core.TransportException: [/127.0.0.1] Error writing)))
     at com.datastax.driver.core.ControlConnection.reconnectInternal(ControlConnection.java:186)
     at com.datastax.driver.core.ControlConnection.connect(ControlConnection.java:81)
     at com.datastax.driver.core.Cluster$Manager.init(Cluster.java:662)
     at com.datastax.driver.core.Cluster$Manager.access$100(Cluster.java:604)
     at com.datastax.driver.core.Cluster.<init>(Cluster.java:69)
     at com.datastax.driver.core.Cluster.buildFrom(Cluster.java:96)
     at com.datastax.driver.core.Cluster$Builder.build(Cluster.java:585)

mapreduce输入和输出将成功地读写cassandra。正如我提到的,我可以在运行作业之前进行连接,因此我不认为这是cassandra服务器的问题。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题