ElasticSearch的基础模块

1、Cluster

Cluster模块是主节点执行集群管理的封装实现。

主要功能:

  • 管理集群状态,将新生成的集群状态发布到集群所有节点。
  • 在集群各节点中直接迁移分片,保持数据平衡。
  • 调用allocation模块执行分片分配,决策哪些分片应该分配到哪个节点

2、Allocation

封装了分片分配相关的功能和策略,包括主分片的分配和副分片的分配,本模块由主节点调用。

3、Discovery

发现模块负责发现集群中的节点,以及选举主节点。

4、Gateway

负责对收到Master广播下来的集群状态(cluster state)数据的持久化存储,并在集群完全重启时恢复它们。

5、Indices

  • 索引模块管理全局级的索引设置,不包括索引级的(索引设置分为全局级和每个索引级)。
  • 封装了索引数据恢复功能。

6、HTTP

HTTP模块允许通过JSON over HTTP的方式访问ES的API,HTTP模块本质上是完全异步的,这意味着没有阻塞线程等待响应。使用异步通信进行 HTTP 的好处是解决了 C10k 问题(10k量级的并发连接)。

7、Transport

  • 传输模块用于集群内节点之间的内部通信。从一个节点到另一个节点的每个请求都使用传输模块。
  • 如同HTTP模块,传输模块本质上也是完全异步的。传输模块使用 TCP 通信,每个节点都与其他节点维持若干 TCP 长连接。内部节点间的所有通信都是本模块承载的。

8、Engine

Engine模块封装了对Lucene的操作及translog的调用,它是对一个分片读写操作的最终提供者。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
SparkSQL是Apache Spark的一个模块,用于对大规模数据进行高性能处理和查询。Hive是一个数据仓库基础设施工具,提供了类似于SQL的查询语言,可以从数据仓库中提取和分析数据。Elasticsearch是一个基于分布式搜索和分析引擎的开源工具,可以进行实时数据搜索、分析和可视化。 要将Hive数据查询结果存入Elasticsearch,首先需要创建一个SparkSession对象,并配置相应的Elasticsearch连接信息。然后,可以使用SparkSQL查询Hive数据,并将结果转换为DataFrame。接下来,需要使用Elasticsearch-Hadoop库将DataFrame中的数据写入Elasticsearch。 具体步骤如下: 1. 创建SparkSession对象: ```scala val spark = SparkSession.builder() .appName("Hive to Elasticsearch") .config("spark.sql.warehouse.dir", "/user/hive/warehouse") .enableHiveSupport() .getOrCreate() ``` 其中,`/user/hive/warehouse`是Hive默认的数据库路径。 2. 查询Hive数据: ```scala val data = spark.sql("SELECT * FROM table_name") // 通过SQL查询Hive数据 ``` 这里的`table_name`是要查询的Hive表名,可以根据需要修改为实际表名。 3. 将查询结果转换为DataFrame: ```scala val df = data.toDF() ``` 可以根据需要对DataFrame进行进一步的处理和转换。 4. 配置Elasticsearch连接信息: ```scala df.write .format("org.elasticsearch.spark.sql") .option("es.nodes", "localhost") .option("es.port", "9200") .option("es.resource", "index_name/document_type") .save() ``` 这里的`localhost`和`9200`分别是Elasticsearch的主机和端口。`index_name`是要写入的Elasticsearch索引名称,`document_type`是要写入的文档类型。 5. 提交作业并等待执行结果: ```scala spark.stop() // 关闭SparkSession对象 ``` 这一步是为了确保作业提交成功并完成。 通过以上步骤,就可以将Hive查询结果存入Elasticsearch中了。需要注意的是,为了能够使用Elasticsearch-Hadoop库,还需要在构建SparkSession对象时添加相应的依赖。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

喜鹊先生Richard

随缘~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值