ボラタイル レイヤーから読み取ります

この例では、 HERE Data SDK for TypeScript を使用して Node.js のボラタイル レイヤーからパーティション メタデータおよびパーティション データを読み取る方法を示します。

Node.js でアプリをビルドして実行します

アプリをビルドする前に、すべての依存関係がインストールされていることを確認してください。

Node.js でアプリをビルドして実行するには、次の手順に従います。

  1. NPM プロジェクトを作成します。

    mkdir example-app && cd example-app && npm init
    
  2. TypeScript プロジェクトを初期化します。

    tsc --init
    
  3. インストールノードタイプ。

    npm install --save-dev @types/node
    
  4. SDK モジュールを取り付けます。

    npm install --save @here/olp-sdk-authentication @here/olp-sdk-dataservice-read
    

    ここで、すべてがアプリを作成するように設定されます。

  5. index.ts ファイルとアプリスケルトンを作成します。

    /**
     * Example of the Node.js app used for reading a volatile layer from the datastore.
     */
    
    class App {
      run() {
        console.log("App works!");
      }
    }
    
    const app = new App();
    app.run();
    
  6. アプリをコンパイルして実行します。

    tsc && node .
    

正常に実行されると、コンソールに次のメッセージが表示されます。

App works!

作成 VolatileLayerClient

このVolatileLayerClientオブジェクトを使用して、パーティション メタデータから最新のパブリッシュ済みデータおよびボラタイル レイヤーを取得できます。

VolatileLayerClient オブジェクトを作成するには :

  1. OlpClientSettings オブジェクトを作成します。

    手順については、「プラットフォームクライアント設定を作成する」を参照してください。

  2. VolatileLayerClientVolatileLayerClientParams カタログの HERE リソースネーム ( HERE リソースネーム )、レイヤー ID 、およびステップ 1 のプラットフォームクライアント設定を含むオブジェクトを作成します。

    const volatileLayerClient = new VolatileLayerClient({
      catalogHrn: HRN.fromString("your-catalog-hrn"),
      layerId: "your-layer-id",
      settings: olpClientSettings,
    });
    

ボラタイル レイヤーからパーティション メタデータを取得します

ボラタイル レイヤーからのパーティション メタデータ は、パーティションに関する次の情報で構成されています。

  • データ ハンドル
  • ID
  • データサイズ
  • チェックサム
  • 圧縮されたデータサイズ

パーティション メタデータは、次のいずれかの方法で入手できます。

  • メタデータサービス API を使用する
  • Query Service API を使用する

API は、パーティションに HERE Tile スキームがある場合にのみ、クエリーサービスパーティション メタデータを使用して取得できます。 HERE Tile スキームの詳細については、「パーティション」を参照してください。

パフォーマンス上の理由から、特定のパーティションのメタデータを取得する場合にのみ、クエリーサービス API を使用することをお勧めします。 バッチ処理の場合、および多数のパーティションまたはレイヤー内のすべてのパーティションのメタデータを取得するには、メタデータサービス API を使用します。

ボラタイル レイヤーからパーティション メタデータを取得するには、次の手順に従います。

  1. VolatileLayerClient オブジェクトを作成します。

    手順については、「 VolatileLayerClient を作成する」を参照してください。

  2. 次のいずれかの操作を行います。

    • ( HERE Tile スキームを使用するパーティションの場合)メタデータサービス API を使用してパーティション メタデータを取得するには、次の手順を実行します。

      1. QuadKeyPartitionsRequest quadkey と子パーティションの数 (0 ~ 4) でオブジェクトを作成します。

        const requestByQuadKey = new QuadKeyPartitionsRequest()
          .withQuadKey("QuadKey")
          .withDepth("NumberOfChildPartitions")
          .withBillingTag("MyBillingTag");
        
      2. getPartitionsRequestByQuadKey パラメーターを使用してメソッドを呼び出します。

        const partitionsByQuadKey = await volatileLayerClient.getPartitions(
          requestByQuadKey
        );
        

      要求されたパーティションおよびその親パーティションと子パーティションの quadkey ツリーインデックスに、メタデータが含まれています。

    • メタデータサービス API を使用してパーティション メタデータを取得するには、次の手順を実行

      1. PartitionsRequest fetch オプションを使用してオブジェクトを作成します。

        デフォルトのフェッチオプションはです OnlineIfNotFound。 要求されたリソースがキャッシュに見つからない場合、ネットワークに問い合わせます。 キャッシュの参照をスキップしてただちにネットワークにクエリーを送信する場合 withFetchOptionOnlineOnlyは、メソッドをに設定します。

        const partitionsRequest = new PartitionsRequest()
          .withBillingTag("MyBillingTag")
          .withFetchOption(FetchOptions.OnlineOnly);
        
      2. getPartitionsPartitionsRequest パラメーターを使用してメソッドを呼び出します。

        const partitions = await volatileLayerClient.getPartitions(
          partitionsRequest
        );
        

      レイヤー内のすべてのパーティションのメタデータが取得されます。

ブラウザおよび Node.js AbortControllerAbortController.signal で、リクエストが完了する前にリクエストを中止するには、オブジェクトを作成してから、そのプロパティをリクエストに追加します。 詳細については AbortController 、のマニュアルを参照してください。

const abortController = new AbortController();
const partitions = await volatileLayerClient.getPartitions(
  partitionsRequest,
  abortController.signal
);

ボラタイル レイヤーからデータを取得します

ボラタイル レイヤー は、キーと値のペアで構成されています。 キーの新しい値は、古い値よりも優先されます。 したがって、ボラタイル レイヤーからは最新のデータのみを取得できます。

ボラタイル レイヤーからデータを取得するには、次の手順に従います。

  1. VolatileLayerClient オブジェクトを作成します。

    手順については、「 VolatileLayerClient を作成する」を参照してください。

  2. DataRequest パーティション ID および FETCH オプションを使用してオブジェクトを作成します。

    デフォルトのフェッチオプションはです OnlineIfNotFound。 要求されたリソースがキャッシュに見つからない場合、ネットワークに問い合わせます。 キャッシュの参照をスキップしてただちにネットワークにクエリーを送信する場合 withFetchOptionOnlineOnlyは、メソッドをに設定します。

    const dataRequest = new DataRequest()
      .withPartitionId("PartitionId")
      .withBillingTag("MyBillingTag")
      .withFetchOption(FetchOptions.OnlineOnly);
    
  3. getDataDataRequest パラメーターを使用してメソッドを呼び出します。

    const partitions = await volatileLayerClient.getData(dataRequest);
    

選択したボラタイル レイヤーの要求されたパーティションからデータを受信します。

ブラウザおよび Node.js AbortControllerAbortController.signal で、リクエストが完了する前にリクエストを中止するには、オブジェクトを作成してから、そのプロパティをリクエストに追加します。 詳細については AbortController 、のマニュアルを参照してください。

const abortController = new AbortController();
const partitions = await volatileLayerClient.getData(
  dataRequest,
  abortController.signal
);

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

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