Skip to content

DNET_ApacheImpala

nishi_74322014 edited this page Sep 11, 2026 · 1 revision

Apache Impala

概要

  • Apache Hadoopベース

  • 大規模並列処理(MPP)SQLクエリエンジン

  • 低レイテンシのSQLクエリを発行できる

  • Apache HiveのHive Query Language(HiveQL)との対比

    • Hiveの特性に合わないアドホックなSQL処理の要望に応える。
    • Hiveより高速な、新規に開発された並列データ処理系エンジン。
    • バッチ処理としての高スループットを目指す用途ではHiveを用い,
      分析などのアドホッククエリに対して高速に応答を返す用途ではImpalaを用いる。
      • 耐障害性を多少犠牲にしてメモリ上で処理を完結することにより高速化を実現する。
      • 事前に取得された統計情報を元にメモリの使用量なども推測し、当該処理の並列化方法を決定する。

詳細

機能

基本機能

  • HDFS(Hadoopの該当節を参照)とApache HBaseストレージをサポート

  • Hadoopファイル形式を読み込み。

  • Apache Hive

    • メタデータ
    • ODBCドライバ
    • SQL構文

    を使用。

認証機能

  • Hadoopセキュリティ(Kerberos認証)をサポート
  • Apache Sentryでのきめ細かなロールベースのアクセス制御。

コンポーネント

Impala クライアント

ユーザーのアプリケーションからクエリを実行する。

  • JDBC / ODBC
  • impala-shell(CUI)

Catalog Server(catalogd)

  • Hadoopクラスタ上のDataNodeで起動される。
  • ImpalaにおけるSQL処理の中核を担うデーモン

Impala Daemon(impalad)

  • Hadoopクラスタ上で1つだけ起動される。
  • Impalaが使用するメタデータを管理するデーモン

StateStore

  • Hadoopクラスタ上で1つだけ起動される。
  • impaladの状態を監視するデーモン

Hive Metastore Server(HMS)

Hiveのメタデータを管理するデーモン

HDFS NameNode(NN)

HDFSが管理するブロックのメタデータを管理するデーモン

HDFS DataNode(DN)

HDFSが管理するブロック自体を管理するデーモン

参考

gihyo.jp … 技術評論社

Hadoopはどのように動くのか
─並列・分散システム技術から読み解くHadoop処理系の設計と実装

正誤

  • 「Catalog Server(catalogd)」と「Impala Daemon(impalad)」の説明が 入れ替わっている。正しくは、impalad が各 DataNode 上で起動され SQL 処理の中核を担うデーモン、catalogd がクラスタ上で 1 つだけ起動され メタデータを管理するデーモンである。原文はそのまま残し、ここに注記した。

補足:Apache Sentry は 2020 年に Apache Attic 入りしており、 現在の権限管理は Apache Ranger などが用いられる。

移行メモ

  • PukiWiki のページ内アンカ(#xxxxxxxx)は GitHub Wiki では再現できないため、 同一ページ内のアンカは見出しから生成されるアンカに張り替え、 他ページのアンカを指すリンクは「〜(ページ名 の該当節を参照)」の形に置き換えた。

Tags: 移行, Apache Impala, Hadoop, MPP, SQLクエリエンジン, Hive, HBase, HDFS, impalad, catalogd

NetDevInfraWiki

マイクロソフト系技術情報 Wiki
Open 棟梁 Wiki

(未着手)

開発基盤部会 Wiki

移行管理: DONETODO

Clone this wiki locally