Presto をインストールし、Docker で Hive を接続する詳細なプロセス

Presto をインストールし、Docker で Hive を接続する詳細なプロセス

1. はじめに

Presto は、ギガバイトからペタバイトに及ぶデータ ソースに対してインタラクティブな分析クエリを実行するためのオープン ソースの分散 SQL クエリ エンジンです。 Presto を使用すると、Hive、Cassandra、リレーショナル データベース、さらには独自のデータ ストアなど、データがどこにあってもクエリを実行できます。単一の Presto クエリで複数のソースからのデータを組み合わせることができるため、組織全体にわたる分析が可能になります。

2.ダウンロードしてインストールする

1) 画像をダウンロードする

docker pull starburstdata/presto

2) クライアントjarをダウンロードする

プルされたイメージはサーバーであり、presto-cli コマンドがないため、presto-cli-0.260.1-executable.jar をダウンロードし、ダウンロードした jar パッケージを Linux システムにプルする必要があります。

ダウンロードが完了したら、コンテナを実行します。

#ポート番号は8080です。ご自身で変更してください。名前はprestoです。
docker run -d -p 8080:8080 --name presto starburstdata/presto

クライアント jar パッケージをコンテナ内の bin ディレクトリにコピーします。

docker cp [クライアントjarパッケージが配置されているLinuxパス] [コンテナ名]:/bin

hadoop構成ファイルディレクトリに移動し、core-site.xmlとhdfs-site.xmlをコンテナにコピーします。

${HADOOP_HOME}/etc/hadoop をコピーします。
docker cp core-site.xml presto:/usr/lib/presto/etc/
docker cp core-site.xml presto:/usr/lib/presto/etc/

コンテナに入ります (マークされていない次の操作はすべてコンテナ内で実行されます)。

# 不正なファイル操作を防ぐために、コンテナに root ユーザーとして入ります docker exec --user=root -it presto /bin/bash

クライアント jar パッケージの名前を変更し、実行権限を付与します。

CD ビン
mv presto-cli-0.260.1-executable.jar プレスト cli
chmod a+x プレスト-cli

3. 設定ファイル

構成ファイル ディレクトリに入り、Hive 構成ファイルを作成します。

/usr/lib/presto/etc/catalog をコピーします。
vi hive.properties

hive.properties:

#接続名、固定 connector.name=hive-hadoop2
#hive メタデータ URI は hive-site.xml にあります。IP とポートを自分で変更してください。hive.metastore.uri=thrift://192.168.10.51:9083
#Hive 構成リソース core-site.xml および hdfs-site.xml は、クラスター内の構成ファイル パスに従って、カンマで区切って変更してください。hive.config.resources=/usr/lib/presto/etc/core-site.xml、/usr/lib/presto/etc/hdfs-site.xml

保存して終了

コンテナを再起動します (Linux コマンドラインで):

docker 再起動 presto

4. 接続をテストする

コンテナを入力します:

# 不正なファイル操作を防ぐために、コンテナに root ユーザーとして入ります docker exec --user=root -it presto /bin/bash
#binディレクトリに入る cd bin
#コマンドラインスクリプトを実行してHive接続をテストし、Hive構成ファイルに接続します。データベースはデフォルトです。
./presto-cli --server localhost:8080 --catalog hive --schema default
presto>テーブルを表示;

これで、Hive に接続するために Docker に Presto をインストールする詳細なプロセスに関するこの記事は終了です。Docker に Presto をインストールする方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • DockerはClickHouseをインストールし、データテストを初期化します
  • Kali に docker と portainer をインストールする方法
  • Docker Desktop をインストールすると、エラー メッセージが表示されます: WSL 2 のインストールが完了していません (エラー メッセージを解決してください)
  • Docker で onlyoffice をインストールして展開する詳細なプロセス
  • 初心者向けに Docker に Jenkins をインストールする方法を詳しく説明したチュートリアル

<<:  MySQL のファントムリード問題を解決する方法

>>:  JavaScript の絶妙なスネーク実装プロセス

推薦する

MySQL テーブルスペースの断片化の概念と関連する問題の解決策

目次背景表領域の断片化とは何ですか?表領域の断片化を確認する方法表スペースの断片化問題を解決する方法...

VMWare を使用して Windows 上で Linux 環境を構築する手順 (画像とテキスト)

Mac を返却して以来、元のラップトップは使用されていません。このラップトップの構成は非常に良好で...

Vue プロジェクト @change 複数のパラメータを使用して複数のイベントを渡す

まず、変更イベントは 1 つだけです。 changelevel() //値を選択選択を変更して行の値...

JavaScript カウントダウン プロンプト ボックス

この記事の例では、カウントダウンプロンプトボックスを実装するためのJavaScriptの具体的なコー...

Ubuntu環境でxdebugをコンパイルしてインストールする方法

この記事では、Ubuntu 環境で xdebug をコンパイルしてインストールする方法について説明し...

MySQL インデックスのカーディナリティの概念と使用例

この記事では、例を使用して、MySQL インデックス カーディナリティの概念と使用方法を説明します。...

Docker で Tomcat、MySQL、Redis をインストールするための詳細な手順

目次DockerでTomcatをインストールするtomcatイメージを使用してコンテナを作成する(イ...

Reactベースのコンポーネントのカプセル化の実装手順

目次序文antd はどのようにしてコンポーネントをカプセル化するのでしょうか?ディバイダーコンポーネ...

MySQL データベース テーブルとデータベース パーティショニング戦略

まず、テーブルを分割する必要がある理由について説明します。データシートが数百万に達すると、1 回のク...

Bootstrap 3.0 学習ノート グリッドシステム事例

序文前回の記事では、主にグリッドシステムの基本原理を学び、簡単なケースを通してその原理を実践しました...

UbuntuでMySQLデータベースファイルディレクトリを変更する方法

序文同社の Ubuntu サーバーは、さまざまなシステムのディレクトリを異なる論理パーティションに配...

MySQL 5.7 インストール MySQL サービスを開始できませんが、サービスはエラーを報告しません

MySQL 5.7 をインストールするには 2 つの方法があります。1 つはインストーラをダウンロー...

CentOS8 デプロイメント LNMP 環境で mysql8.0.29 をコンパイルしてインストールする方法の詳細なチュートリアル

1. 前提条件何度かインストールしているので、エラーについてはこれ以上説明しません。ちょっとわかりに...

CSS における px、em、rem、pt の特徴、違い、変換について詳しく説明します。

コンセプト紹介: 1. px (ピクセル):仮想的な長さの単位で、コンピュータ システムのデジタル画...

CentOS8 - bash: 文字化けとその解決方法

この状況は通常、中国語言語パックがインストールされていないか、デフォルトの言語設定に問題があるために...