目的: オブジェクト ストア レイヤーを使用して独自のデータを HERE platform に取り込む方法について理解します。
複雑さ: 初心者向け
所要時間: 30 分
依存関係: プロジェクトでの作業を整理します
ソースコード: ダウンロード
このチュートリアルの例では、オブジェクト ストア レイヤーを使用してデータを HERE platform に取り込む方法を示します。
オブジェクト ストア レイヤーは、分散型で耐久性の高いキー / 値ストアで、キー一覧表を追加する機能があります。 さまざまなレイヤーの詳細については、 HERE を参照してください。 データサービスのドキュメント。
このチュートリアルでは、次の手順を実行します。
- オブジェクト ストア レイヤーを使用してカタログを作成します。
- OLP コマンド ライン インターフェース( CLI )を使用して、ローカルファイルシステムからオブジェクトストアに 1 つのファイルをアップロードします。
- Apache Hadoop を使用して、ローカルファイルシステムからオブジェクト ストア レイヤーに複数のファイルをアップロードします。
準備として、オブジェクト ストア レイヤーを含むカタログを作成する必要があります。
カタログを作成します
カタログを作成する必要があります。 「 OLP コマンド ライン インターフェース ( CLI ) を使用してプロジェクトで作業を整理する」で説明されている手順に従います。
bring-your-data.json
次の内容の名前のファイルを作成し、 {{YOUR_CATALOG_ID}}
任意の識別子で置き換えます。
{
"id": "{{YOUR_CATALOG_ID}}",
"name": "Tutorial for copying your data from local file system to the Object Store layer",
"summary": "Tutorial for copying your data from local file system to the Object Store layer",
"description": "Tutorial for copying your data from local file system to the Object Store layer",
"tags": ["Hadoop FS Support", "Object store"],
"layers": [
{
"id": "bring-your-data-layer",
"name": "bring-your-data-layer",
"summary": "Simulated data.",
"description": "Simulated data to demonstrate usability of Object store layer",
"tags": ["Hadoop FS Support", "Object store"],
"layerType": "objectstore",
"volume": {
"volumeType": "durable"
}
}
]
}
{{YOUR_CATALOG_ID}}
を独自の識別子に置き換えてから、次のコマンドを実行します。
olp catalog create {{YOUR_CATALOG_ID}} \
"Tutorial for copying data from local file system to the object store layer" \
--config bring-your-data.json
注
レルムで請求タグが必要な場合 は、layer
セクションにbillingTags: ["YOUR_BILLING_TAG"]
プロパティを追加して設定 ファイルを更新します。
OLP CLI を使用してオブジェクト ストア レイヤーに単一のファイルをアップロードします
OLP コマンド ライン インターフェース( CLI )を使用して、ローカルファイルシステムからオブジェクト ストア レイヤーに単一のファイルをアップロードできます。
1. ファイルをアップロードします
{{YOUR_CATALOG_HRN}}
次のコマンドを、カタログの作成ステップで受信した HERE リソースネーム の値に置き換えてから、次のコマンドを実行します。
olp catalog layer object put {{YOUR_CATALOG_HRN}} bring-your-data-layer --key test-file --data test-data-cli/test-file
前のコマンド test-data-cli/test-file
では、ローカルファイルがオブジェクト ストア レイヤーにアップロードされます。
2. アップロードされたファイルを一覧表示
レイヤーのファイルを一覧表示することで、アップロードを確認できます。 OLP CLI から次のコマンドを使用します。このコマンドは、カタログの作成ステップで受け取った HERE リソースネーム に置き換えた後に使用します。 次に、次のコマンドを実行します。
olp catalog layer object list {{YOUR_CATALOG_HRN}} bring-your-data-layer
3. アップロードされたファイルの内容を取得します
オブジェクト ストア レイヤーの前のファイルからデータを取得するに {{YOUR_CATALOG_HRN}}
は、カタログの作成ステップで受け取った HERE リソースネーム の値に置き換えます。 次に、次のコマンドを実行します。
olp catalog layer object get {{YOUR_CATALOG_HRN}} bring-your-data-layer --key test-file --data test-data-cli/test-file
Apache Hadoop を使用して複数のファイルをオブジェクト ストア レイヤーにアップロードします
Apache Hadoop を使用すると、分散した方法で、ローカルファイルシステムからオブジェクトストアに複数のファイルを並行してアップロードできます。
JAVA_HOME
Apache Hadoop コマンドを実行する前に、環境に変数をエクスポートする必要があります。
Apache Hadoop を使用して複数のファイルをアップロードする手順は、次のとおりです。
1. Hadoop バージョン変数をエクスポートします
HADOOP_VERSION
変数を使用している環境にエクスポートする必要があります。 このチュートリアルでは、次のコマンドを実行してエクスポート HADOOP_VERSION
します。
export HADOOP_VERSION=2.7.7
2. Apache Hadoop をダウンロードします
Apache Hadoop をダウンロードする必要があります。 次のコマンドを実行して、適切なバージョンの Apache Hadoop をダウンロードします。
wget -c https://archive.apache.org/dist/hadoop/common/hadoop-${HADOOP_VERSION}/hadoop-${HADOOP_VERSION}.tar.gz
前の手順でダウンロードした tarball を次のように展開する必要があります。
tar xzf hadoop-${HADOOP_VERSION}.tar.gz
export MSYS=winsymlinks:lnk
tar xzf hadoop-${HADOOP_VERSION}.tar.gz
4. Hadoop FS サポート JAR をダウンロードします
次 のコマンドを実行して、データ クライアント ライブラリによって提供された Hadoop FS サポートアセンブリ jar をダウンロードする必要があります。
mvn dependency:copy -Dartifact=com.here.platform.data.client:hadoop-fs-support_2.12:LATEST:jar:assembly -DoutputDirectory=hadoop-${HADOOP_VERSION}/share/hadoop/common/lib/
5. Apache Hadoop を使用してデータをアップロードします
次のスクリプトで、前のカタログ作成ステップで受け取ったカタログ HERE リソースネーム で置き換え、次に示す HERE で実行する必要があります。
./hadoop-${HADOOP_VERSION}/bin/hadoop distcp test-data-hadoop blobfs://{{YOUR_CATALOG_HRN}}:bring-your-data-layer/test-data-hadoop
前のコマンドで test-data-hadoop
は、次の 3 つのファイルを含むディレクトリがアップロードされます。test-file-1
、 test-file-2
、 test-file-3
および。 これらのファイルは、 Apache Hadoop を使用してオブジェクト ストア レイヤーにアップロードされます。
6. Apache Hadoop を使用して、アップロードされたファイルを一覧表示
Apache Hadoop を使用して、アップロードされたファイルを一覧表示することで、前のコマンドからのアップロードを確認できます。 次のコマンドを実行します。このコマンドは、カタログの作成ステップで受け取った HERE リソースネーム で置き換えた後に実行します。
./hadoop-${HADOOP_VERSION}/bin/hadoop fs -ls blobfs://{{YOUR_CATALOG_HRN}}:bring-your-data-layer/test-data-hadoop/
前のコマンド test-data-hadoop
では、オブジェクト ストア レイヤーからディレクトリ内のすべてのファイルが一覧表示されます。
他のストレージからオブジェクト ストア レイヤーにデータをコピーしています
前述の手順を使用して、 AWS S3 や Azure Blob Storage などの Apache Hadoop 互換ストレージからオブジェクト ストア レイヤーにデータをコピーできます。 ソースパスをローカルファイルシステムからリモートストレージに変更する必要があります。
Apache Hadoop を使用してストレージ間でデータをコピーする方法の詳細 HERE については、次のサイトを参照してください。 DistCp および Object ストア
このチュートリアルで扱うトピックの詳細については、次のソースを参照してください。