当前位置:首页 > CN2资讯 > 正文内容

im服务器 架构 设计 impa服务器

3天前CN2资讯

Impala服务器的组件

Impala服务器是一个分布式的大规模并行处理(MPP)数据库引擎。它由不同的守护进程组成,这些进程在集群内的特定主机上运行。

Impala后台

Impala的核心组件是Impala守护进程,物理上由impalad进程表示。Impala 守护进程执行的几个主要功能是。

  • 读取和写入数据文件
  • 接受来自impala-shell命令、Hue、JDBC或ODBC的查询。
  • 并行化查询并在集群中分配工作。
  • 将中间查询结果传回中央协调器。

Impala 守护进程可以通过以下方式之一进行部署。

  • HDFS和Impala共处一地,每个Impala守护进程作为DataNode运行在同一主机上。
  • Impala单独部署在计算集群中,从HDFS、S3、ADLS等远程读取。

Impala守护进程一直与StateStore保持通信,以确认哪些守护进程是健康的,可以接受新的工作。

每当集群中的任何Impala守护进程创建、更改或丢弃任何类型的对象,或者通过Impala处理INSERT或LOAD DATA语句时,它们也会收到来自catalogd守护进程(Impala 1.2中引入)的广播消息。这种后台通信最大限度地减少了对REFRESH或INVALIDATE METADATA语句的需求,在Impala 1.2之前,协调Impala守护进程之间的元数据是需要这些语句的。

在Impala 2.9和更高版本中,您可以控制哪些主机作为查询协调器,哪些主机作为查询执行器,以提高大型集群上高并发工作负载的可扩展性。详情请参见如何使用专用协调器配置Impala。

 

Impala的状态存储

被称为StateStore的Impala组件检查集群中所有Impala守护进程的健康状况,并不断将其发现传递给每个守护进程。它在物理上由一个名为stesttored的守护进程来表示。您只需要在集群中的一台主机上有这样一个进程。如果一个Impala守护进程由于硬件故障、网络错误、软件问题或其他原因而离线,StateStore会通知所有其他Impala守护进程,以便未来的查询可以避免向无法到达的Impala守护进程发出请求。

因为StateStore的目的是在出错时提供帮助,并向协调器广播元数据,所以它并不总是对Impala集群的正常运行至关重要。如果StateStore没有运行或变得无法访问,Impala守护进程在处理Impala已知的数据时,会像往常一样继续运行并在彼此之间分配工作。如果其他Impala守护进程失败,集群只是变得不那么健壮,而且在StateStore离线时,元数据会随着变化而变得不那么一致。当StateStore重新上线时,它会重新建立与Impala守护进程的通信,并恢复其监控和广播功能。

如果您在StateStore离线时发出DDL语句,访问DDL创建的新对象的查询将失败。

负载均衡和高可用性的大多数考虑因素都适用于impalad daemon。statestored和catalogd守护进程对高可用性没有特殊要求,因为这些守护进程的问题不会导致数据丢失。如果这些守护进程由于特定主机上的故障而不可用,您可以停止Impala服务,删除Impala StateStore和Impala Catalog Server角色,在不同的主机上添加这些角色,然后重新启动Impala服务。

 

Impala目录服务

 

称为目录服务的Impala组件将Impala SQL语句中的元数据变化转发到集群中的所有Impala守护进程。它在物理上由一个名为 catalogd 的守护进程表示。您只需要在集群中的一台主机上有这样一个进程。因为请求是通过StateStore守护进程传递的,所以在同一台主机上运行stattored和catalogd服务是有意义的。

目录服务避免了通过Impala发出的语句进行元数据更改时,需要发出refresh和invalidate METADATA语句。当你通过Hive创建表、加载数据等,在那里执行查询之前,确实需要在Impala守护进程上发出REFRESH或INVALIDATE METADATA。

这个功能涉及到Impala的很多方面。

  • 有关 catalogd 守护进程的使用信息,请参见安装 Impala、升级 Impala 和启动 Impala。
  • 当通过Impala执行CREATE TABLE、INSERT或其他表更改或数据更改操作时,不需要REFRESH和INVALIDATE METADATA语句。如果这些操作是通过Hive或直接在HDFS中操作数据文件来完成的,仍然需要这些语句,但在这些情况下,这些语句只需要在一个Impala守护进程上发出,而不是在所有守护进程上发出。参见REFRESH语句和INVALIDATE METADATA语句,了解这些语句的最新使用信息。

使用--load_catalog_in_background选项来控制何时加载表的元数据。

  • 如果设置为false,当表的元数据第一次被引用时就会被加载。这意味着特定查询的第一次运行可能会比后续运行慢。从Impala 2.2开始,--load_catalog_in_background的默认值为false。
  • 如果设置为true,即使没有查询需要元数据,目录服务也会尝试加载表的元数据。因此,当运行第一个需要元数据的查询时,元数据可能已经被加载。然而,出于以下原因,我们建议不要将该选项设置为true。

后台加载会干扰特定查询的元数据加载。这可能会在启动时或在元数据失效后发生,持续时间取决于元数据的数量,并可能导致看似随机的长运行查询,难以诊断。
Impala可能会加载可能从未使用过的表的元数据,可能会增加目录大小,从而增加目录服务和Impala Daemon的内存使用量。
负载平衡和高可用性的大多数考虑因素都适用于impalad daemon。statestored和catalogd守护进程对高可用性没有特殊要求,因为这些守护进程的问题不会导致数据丢失。如果这些守护进程由于特定主机上的故障而不可用,您可以停止Impala服务,删除Impala StateStore和Impala Catalog Server角色,在不同的主机上添加这些角色,然后重新启动Impala服务。

注意事项
在Impala 1.2.4和更高版本中,您可以在Hive中创建表后,用INVALIDATE METADATA指定表名,允许您使各个表对Impala可见,而无需对目录元数据进行完整的重新加载。Impala 1.2.4还包括其他变化,使元数据广播机制更快、更灵敏,特别是在Impala启动期间。详情请参见Impala 1.2.4中的新功能。

 



    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/20743.html

    分享给朋友:

    “im服务器 架构 设计 impa服务器” 的相关文章

    LightLayer云服务器评测与应用案例分析

    在我日常工作中,云服务器的选择至关重要,而我最近了解到的LightLayer云服务器,给我留下了深刻的印象。作为Megalayer旗下的品牌,LightLayer在全球多个重要地点部署了服务器,尤其是在美国洛杉矶、中国台湾台北和菲律宾马尼拉。这些选择不仅为用户提供了更快速的访问速度,也为他们的云计算...

    波测评分析及其在医疗与教育领域的重要性

    波测评的定义与重要性 波测评是一种重要的技术手段,专注于评估波动的特性和行为。我发现,这种测评方法在多个行业中都扮演了至关重要的角色,比如医疗、工业和电力等领域。以脑波测评为例,它不仅可以帮助医生了解病人的大脑状态,还能在教育领域评估学习能力。这些应用展示了波测评技术在科学与技术进步中的不可或缺性。...

    自己搭建网站的全面指南:从目标定位到费用控制

    搭建自己的网站听起来可能有些复杂,但实际上,只要理清思路,完全可以实现。首先,明确你的目标和网站类型是关键的一步。是想建立一个个人博客,还是一个商业网站?这将直接影响你后续的选择和设计。例如,个人博客强调内容,商业网站则需要更多的功能性和用户友好性。所以在开始之前,先问问自己这个网站的核心目的是什么...

    BGPTO独立服务器:高性能云主机解决方案

    BGPTO是一家由国人创办的云服务器主机商,致力于为用户提供高性能的独立服务器。随着全球互联网的发展,对云计算和服务器主机的需求不断增加,BGPTO顺应这一趋势,选择在日本、新加坡、香港和美国等地设立机房。公司希望通过独立服务器的销售,满足用户在不同地区的需求,尤其是针对国内用户和企业的海外业务拓展...

    在Ubuntu上使用宝塔面板进行服务器管理的全方位指南

    宝塔面板简介 作为一款在服务器管理领域取得广泛认可的工具,宝塔面板在Linux系统中尤为突出,特别是针对Ubuntu用户而言。通过提供直观的操作界面,宝塔有效地简化了复杂的Linux服务器管理过程。对于我这样的用户来说,宝塔无疑是一个不可多得的助手,轻松应对日常维护和配置工作。 宝塔面板不仅仅是一款...

    韩国电信行业的发展与未来展望

    韩国电信概述 在谈到韩国电信的时候,我常常会被这个国家在技术和通信领域的发展速度所吸引。从上世纪六十年代开始,韩国的电信行业就开始了它的发展历程。早期,政府主导了整个电信市场的建设,提供了基础设施。然而,随着经济的快速增长和技术的不断进步,私营企业逐渐崭露头角,形成了今天竞争激烈的电信市场。 历史上...