我有一个火花流工作,它在aws环境中运行,例如spark集群A.我还配置了另一个新的aws elasticsearch集群,称ES集群B. 现在我必须将数据从火花即群集A发送到弹性搜索群集,即我正在参考的群集B. https://www.elastic.co/guide/en/elasticsearch/hadoop/master/spark.html
基于以上链接指南 对于火花配置中的集群A我已经设置了以下参数
SparkConf conf = new SparkConf().setAppName("ElasticSearchTest");
conf.set("spark.serializer", org.apache.spark.serializer.KryoSerializer.class.getName());
conf.set("es.nodes", [endpoint of aws elasticsearch cluster]);
conf.set("es.port", "9200");
我在设置aws弹性集群期间允许所有访问策略。
我正在低于例外。它显示了classnotfound。然而,这不是正确的问题,我已经验证了POM文件(maven)中存在类
答案 0 :(得分:0)
你需要使用一些连接器从弹性搜索中读取,并将其转换为RDD进行操作,这里是一个连接器的示例,我认为它可以工作(但没有测试)
https://github.com/elastic/elasticsearch-hadoop#apache-spark