ステップ 2: 台帳への接続をテストする - Amazon Quantum 台帳データベース (Amazon QLDB)

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ステップ 2: 台帳への接続をテストする

重要

サポート終了通知: 既存のお客様は、07/31/2025 のサポート終了QLDBまで Amazon を使用できます。詳細については、「Amazon Ledger QLDB を Amazon Aurora Postgre に移行するSQL」を参照してください。

このステップでは、トランザクションデータAPIエンドポイントQLDBを使用して Amazon のvehicle-registration台帳に接続できることを確認します。

台帳への接続をテストするには
  1. 次のプログラム (ConnectToLedger.ts) を使用して、vehicle-registration 台帳へのデータセッション接続を作成します。

    2.x
    /* * Copyright 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: MIT-0 * * Permission is hereby granted, free of charge, to any person obtaining a copy of this * software and associated documentation files (the "Software"), to deal in the Software * without restriction, including without limitation the rights to use, copy, modify, * merge, publish, distribute, sublicense, and/or sell copies of the Software, and to * permit persons to whom the Software is furnished to do so. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ import { QldbDriver, RetryConfig } from "amazon-qldb-driver-nodejs"; import { ClientConfiguration } from "aws-sdk/clients/qldbsession"; import { LEDGER_NAME } from "./qldb/Constants"; import { error, log } from "./qldb/LogUtil"; const qldbDriver: QldbDriver = createQldbDriver(); /** * Create a driver for creating sessions. * @param ledgerName The name of the ledger to create the driver on. * @param serviceConfigurationOptions The configurations for the AWS SDK client that the driver uses. * @returns The driver for creating sessions. */ export function createQldbDriver( ledgerName: string = LEDGER_NAME, serviceConfigurationOptions: ClientConfiguration = {} ): QldbDriver { const retryLimit = 4; const maxConcurrentTransactions = 10; //Use driver's default backoff function (and hence, no second parameter provided to RetryConfig) const retryConfig: RetryConfig = new RetryConfig(retryLimit); const qldbDriver: QldbDriver = new QldbDriver(ledgerName, serviceConfigurationOptions, maxConcurrentTransactions, retryConfig); return qldbDriver; } export function getQldbDriver(): QldbDriver { return qldbDriver; } /** * Connect to a session for a given ledger using default settings. * @returns Promise which fulfills with void. */ const main = async function(): Promise<void> { try { log("Listing table names..."); const tableNames: string[] = await qldbDriver.getTableNames(); tableNames.forEach((tableName: string): void => { log(tableName); }); } catch (e) { error(`Unable to create session: ${e}`); } } if (require.main === module) { main(); }
    1.x
    /* * Copyright 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: MIT-0 * * Permission is hereby granted, free of charge, to any person obtaining a copy of this * software and associated documentation files (the "Software"), to deal in the Software * without restriction, including without limitation the rights to use, copy, modify, * merge, publish, distribute, sublicense, and/or sell copies of the Software, and to * permit persons to whom the Software is furnished to do so. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ import { QldbDriver } from "amazon-qldb-driver-nodejs"; import { ClientConfiguration } from "aws-sdk/clients/qldbsession"; import { LEDGER_NAME } from "./qldb/Constants"; import { error, log } from "./qldb/LogUtil"; const qldbDriver: QldbDriver = createQldbDriver(); /** * Create a driver for creating sessions. * @param ledgerName The name of the ledger to create the driver on. * @param serviceConfigurationOptions The configurations for the AWS SDK client that the driver uses. * @returns The driver for creating sessions. */ export function createQldbDriver( ledgerName: string = LEDGER_NAME, serviceConfigurationOptions: ClientConfiguration = {} ): QldbDriver { const qldbDriver: QldbDriver = new QldbDriver(ledgerName, serviceConfigurationOptions); return qldbDriver; } export function getQldbDriver(): QldbDriver { return qldbDriver; } /** * Connect to a session for a given ledger using default settings. * @returns Promise which fulfills with void. */ var main = async function(): Promise<void> { try { log("Listing table names..."); const tableNames: string[] = await qldbDriver.getTableNames(); tableNames.forEach((tableName: string): void => { log(tableName); }); } catch (e) { error(`Unable to create session: ${e}`); } } if (require.main === module) { main(); }
    注記

    台帳でデータトランザクションを実行するには、指定された台帳に接続するQLDBドライバーオブジェクトを作成する必要があります。これは、前のステップで台帳の作成に使用した qldbClient オブジェクトとは異なるクライアントオブジェクトです。その以前のクライアントは、「」に記載されている管理APIオペレーションの実行にのみ使用されますAmazon QLDBAPIリファレンス

  2. トランスパイルされたプログラムを実行するには、次のコマンドを入力します。

    node dist/ConnectToLedger.js

vehicle-registration 台帳にテーブルを作成するには、「ステップ 3: テーブル、インデックス、およびサンプルデータを作成する」に進みます。