コンパクトインデックス レイヤー

インデックス レイヤーを最適化する理由

小さいファイルの問題は、ビッグデータドメインでよく知られている問題です。 データが多数の小さいファイルまたは非常に小さいファイルに分割されると、データの処理が非常に非効率的になります。 HERE platform インデックスでは、過度のパーティション分割によってこの問題が発生する可能性があります。 インデックス レイヤーでは、属性および属性値が多いほど、小さなファイルの問題が発生する可能性が高くなります。

HERE platform は、同じインデックス属性値を持つファイルを、設定に基づいて 1 つ以上のファイルに圧縮する、シンプルでスケーラブルなソリューションを提供します。 このソリューションにより、インデックス レイヤーのストレージコストが削減され、クエリのパフォーマンスが改善されます。また、後続のデータ処理の効率も向上します。

インデックスの圧縮ライブラリの使用方法

ステップ 1 : 締固めアプリケーションを作成します

圧縮アプリケーションを作成する最も簡単な方法は 、参照例のいずれかから開始することです。 次の例では、インデックス圧縮ライブラリを使用してデータを圧縮する方法を示します。

独自の圧縮アプリケーションを作成するには、次の操作を行う必要があります。

1 A : ユーザー定義関数を実装します

インデックスの圧縮ライブラリで merge は、 API を実装する必要があります。

  • 結合 ( キー、ファイル ) は、ユーザー定義の形式ですべてのファイルを結合し、バイトの配列を返します
    • keys - 圧縮するファイルのグループの同じインデックス属性値を含むコレクション
    • files - クエリを効率化するためにマージされるインデックス付きファイルを含むコレクション

ユーザーが自身でエラーを処理することを選択した場合は、 null 値が返されるようにする必要があります。 それ以外の場合、エラーシナリオとは見なされません。 例 : - ユーザーが空のバイト配列を返した場合、インデックス圧縮ライブラリのエラーシナリオではありません。 インデックスの圧縮ライブラリは、マージ関数からの NULL 値を確認し、エラーをログに記録してから、別のグループ化キーを使用して残りのレコードの圧縮を続行します。

詳細について は、「インデックスの圧縮ライブラリ API リファレンス 」を参照してください。

10 億円未満: Compaction アプリケーションの設定を指定します

アプリケーション固有の設定を application.conf ファイルに入力する必要があります。 プロセスの詳細については 、「設定」を参照してください。

1C : アプリケーションを Fat JAR ファイル にパッケージ化します

jar ユーザー定義の関数の実装、設定、および Spark とログの依存関係を除くすべての推移的な依存関係を含む実行可能ファイルをパッケージ化する必要があります。

mvn ビルドツールの場合、次のコマンドを使用してこれを実行できます。

mvn clean package

ステップ 2 : 権限を設定します

圧縮パイプラインは、入力および出力カタログに対する読み取りおよび書き込みアクセス権を持っている必要があります。 アクセス権を付与する方法については 、「カタログを共有する」を参照してください。

ステップ 3 : パイプラインを展開します

アプリケーションを実行するには、 HERE Workspace でパイプラインを作成する必要があります。 手順について は、「パイプライン開発者ガイド」を参照してください。

ステップ 4 : パイプラインを監視します

パイプライン (Pipelines) ページでパイプラインを探し ' そのRunning状態にあることを確認します パイプラインの監視の詳細について は、「パイプライン監視」を参照してください。

ステップ 5 : インデックス レイヤーをクエリします

圧縮パイプラインが完了すると、次のいずれかの方法を使用して圧縮データを照会できます。

参照例

寄木細工と Protobuf 形式でデータを圧縮するための参照例があります。 例については、 HERE Data SDK for Java & Scala を参照してください。 各例には README.MD ファイルが含まれています。このファイルには、例を実行するための命令が含まれています。

」に一致する結果は 件です

    」に一致する結果はありません