hive往es映射表写数据报错

        hive是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制。hive数据仓库工具能将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,能将SQL语句转变成MapReduce任务来执行。Hive的优点是学习成本低,可以通过类似SQL语句实现快速MapReduce统计,使MapReduce变得更加简单,而不必开发专门的MapReduce应用程序。hive十分适合对数据仓库进行统计分析。

        Elasticsearch 为所有类型的数据提供近乎实时的搜索和分析。无论您拥有结构化或非结构化文本、数字数据还是地理空间数据,Elasticsearch 都能以支持快速搜索的方式高效地存储和索引它。您可以超越简单的数据检索和聚合信息来发现数据中的趋势和模式。随着您的数据和查询量的增长,Elasticsearch 的分布式特性使您的部署能够随之无缝增长。

        今天做了一个定时任务,把hive中的数据,通过insert into到hive到es的映射表中,发现报错;

具体报错如下:

Error: Error while compiling statement: FAILED: RuntimeException org.apache.hadoop.hive.ql.metadata.HiveException: Error in loading storage handler.org.elasticsearch.hadoop.hive.EsStorageHandler (state=42000,code=40000)

解决方法:
需要加载hadoop和es的jar包

需要提前将jar上传至hdfs上的jars目录

add jar hdfs:/jars/elasticsearch-hadoop-7.13.2.jar;

该命令需要每次执行时加载;

你可能感兴趣的:(elasticsearch,hadoop,hive,elasticsearch,hadoop)