すべてのプロダクト
Search
ドキュメントセンター

Tablestore:Tablestore CLI での時系列モデルの使用

最終更新日:Dec 28, 2024

Tablestoreコンソール、Tablestore CLI、または Tablestore SDK を使用して、TablestoreTablestore にアクセスできます。 の時系列モデルを Tablestore CLI で使用するには、お使いのオペレーティングシステムに基づいて Tablestore CLI パッケージをダウンロードする必要があります。Tablestore CLI パッケージをダウンロードして解凍した後、Tablestore CLI を使用して Tablestore を有効化し、時系列モデルのインスタンスを作成し、インスタンスのアクセス情報を構成し、時系列テーブルを作成し、テーブルからデータを読み書きし、SQL を使用してデータをクエリできます。

前提条件

Tablestore にログオンするために使用する阿里云アカウントまたは RAM ユーザーのログオン情報を取得します。

Alibaba Cloud アカウント をまだ作成していない場合は、Alibaba Cloud 公式 Web サイトで作成してください。

RAM ユーザーとして Tablestore を使用するには、Alibaba Cloud アカウントを使用して RAM ユーザーを作成し、Tablestore にアクセスするための権限を RAM ユーザーに付与する必要があります。詳細については、RAM ポリシーを使用して RAM ユーザーに権限を付与する を参照してください。

注意事項

  • 時系列モデルは、中国 (杭州)、中国 (上海)、中国 (北京)、中国 (張家口)、中国 (ウランチャブ)、中国 (深セン)、中国 (成都)、中国 (香港)、日本 (東京)、マレーシア (クアラルンプール)、ドイツ (フランクフルト)、インドネシア (ジャカルタ)、英国 (ロンドン)、米国 (シリコンバレー)、米国 (バージニア)、サウジアラビア (リヤド - パートナーリージョン)、シンガポール の各リージョンでサポートされています。

  • Tablestore CLI を使用して作成できるのは、オンデマンドモードの高性能インスタンスのみです。オンデマンドモードで容量インスタンスを作成するには、Tablestore コンソールを使用します。詳細については、手順 2: インスタンスを作成する または 時系列モデルのインスタンスを作成する を参照してください。

手順 1: Tablestore CLI をダウンロードして起動する

  1. お使いのオペレーティングシステムに基づいて、Tablestore CLI パッケージをダウンロードします。

    オペレーティングシステム

    ダウンロードリンク

    Windows

    Windows 10 以降

    Linux

    macOS

  2. ダウンロードした Tablestore CLI パッケージを解凍します。パッケージのルートディレクトリに移動し、お使いのオペレーティングシステムに基づいて Tablestore CLI を起動するために使用される方法を選択します。

    1. Windows の場合、ts.exe ファイルをダブルクリックします。

    2. Linux および macOS の場合、./ts コマンドを実行します。

    説明

    Linux または macOS でコマンドを実行するために必要な権限がない場合は、chmod 755 ts コマンドを実行して権限を取得してから、コマンドを実行して Tablestore CLI を起動します。

    macOS で "ts" cannot be opened because Apple cannot check it for malicious software というメッセージが表示された場合は、macOS の [プライバシーとセキュリティ] 設定で ts コマンドの実行を許可する必要があります。

    起動時に次の情報が表示されます。

    # Welcome to use Command Line Tool for Aliyun Tablestore. Current Version is '2021-11-11'.
    #    _______      _      _              _
    #   |__   __|    | |    | |            | |
    #      | |  __ _ | |__  | |  ___   ___ | |_   ___  _ __    ___
    #      | | / _' || '_ \ | | / _ \ / __|| __| / _ \ | '__| / _ \
    #      | || (_| || |_) || ||  __/ \__ \| |_ | (_) || |   |  __/
    #      |_| \__,_||_.__/ |_| \___| |___/ \__| \___/ |_|    \___|
    #
    # Please visit our product website: https://www.aliyun.com/product/ots
    # You can also join our DingTalk Chat Group (ID: 11789671 or 23307953) to discuss and ask Tablestore related questions.
    #
    tablestore>

手順 2: Tablestore を有効化する

Tablestore の機能を使用する前に、Tablestore を有効化する必要があります。Tablestore を既に有効化している場合は、再度有効化する必要はありません。Tablestore の有効化は 1 回だけ行う必要があります。Tablestore を有効化しても課金されません。

  1. config コマンドを実行して、AccessKey ペア情報を構成します。詳細については、Tablestore CLI を起動し、アクセス情報を構成する を参照してください。

    重要

    阿里云アカウントの AccessKey ID と AccessKey シークレットで構成される AccessKey ペアが必要です。AccessKey ペアの取得方法については、AccessKey ペアを取得する を参照してください。

    config --id NTSVLeBHzgX2i************ --key 7NR2DiotscDbauohSq9kSHX8BDp9****************
  2. enable_service コマンドを実行して、Tablestore を有効化します。

手順 3: インスタンスを作成する

create_instance コマンドを実行して、高性能インスタンスを作成します。詳細については、インスタンス操作 を参照してください。

次のサンプルコードは、中国 (杭州) リージョンに myinstance という名前の高性能インスタンスを作成する方法を示しています。

create_instance -d "First instance created by CLI." -n myinstance -r cn-hangzhou

手順 4: アクセス情報を構成する

config コマンドを実行して、アクセス情報を構成します。詳細については、Tablestore CLI を起動し、アクセス情報を構成する を参照してください。

次のサンプルコードは、myinstance という名前のインスタンスのアクセス情報を構成する方法を示しています。

config --endpoint https://myinstance.cn-hangzhou.ots.aliyuncs.com --instance myinstance --id NTSVLeBHzgX2iZfcaXXPJ**** --key 7NR2DiotscDbauohSq9kSHX8BDp99bjs7eNpCR7o****

手順 5: 時系列テーブルを作成して使用する

時系列テーブルを作成した後、使用するテーブルとして時系列テーブルを選択できます。その後、テーブルまたはテーブル内のデータを管理できます。

  1. 次のコマンドを実行して、mytable という名前の時系列テーブルを作成します。

    create -m timeseries -t mytable --ttl -1
  2. use --ts -t mytable コマンドを実行して、mytable という名前の時系列テーブルを使用します。

手順 6: データに対する操作を実行する

ビジネス要件に基づいてデータに対する操作を実行します。時系列データの書き込み、時系列データのインポート、時系列データのクエリ、時系列の取得、時系列のスキャン、時系列の更新を実行できます。

  • 時系列データをインポートする

    次のサンプルコードは、import_timeseries.txt ファイルから時系列テーブルに時系列データをインポートする方法の例を示しています。

    import_timeseries --input /temp/import_timeseries.txt

    import_timeseries.txt ファイルのサンプル構成:

    cpu,hostname=host_0,region=cn-hangzhou usage_user=58i,usage_system=2i,usage_idle=24i 1609459200000000000
    cpu,hostname=host_1,region=cn-hangzhou usage_user=58i,usage_system=2i,usage_idle=24i 1609459200000000000
  • 時系列データをクエリする

    次のサンプルコードは、メトリック名が cpu、データソースが host_0、タグが hostname=host_0 および region=cn-hangzhou である時系列で、1667638230000000 より前に生成された時系列データをクエリする方法の例を示しています。

    getts --k '["cpu","host_0",["hostname=host_0","region=cn-hangzhou"]]' --time_start 0 --time_end 1667638230000000 --limit 100
  • 時系列を取得する

    次のサンプルコードは、メトリック名が cpu、データソースが host_0 である時系列を取得する方法の例を示しています。

    query_ts_meta --measurement cpu --datasource host_0 --limit 10
  • 時系列をスキャンする

    query_ts_meta --limit 10
  • 時系列を更新する

    次のサンプルコードは、時系列の属性を hostname=host_1 および region=cn-hangzhou に更新する方法の例を示しています。

    update_ts_meta --k '["cpu","host_1",["hostname=host_1","region=cn-hangzhou"]]' --attrs '["hostname=host_1","region=cn-hangzhou"]' 

手順 7: SQL を使用してデータをクエリする

SQL ステートメントを使用してテーブル内のデータをすばやくクエリするには、次の手順を実行します。

  1. sql コマンドを実行して、SQL モードに入ります。

  2. ビジネス要件に基づいて mytable テーブル内のデータをクエリします。

    • 時系列をクエリするには、時系列メタデータのマッピングテーブルを選択し、SELECT ステートメントを実行します。

      たとえば、時系列メタデータのマッピングテーブル mytable::meta を使用して、メトリック名が cpu である時系列をクエリする場合、次の SQL ステートメントを実行します。

      SELECT * FROM `mytable::meta` WHERE _m_name = "cpu" LIMIT 100;
    • 単一値モデルのマッピングテーブルを使用して時系列データをクエリするには、単一値モデルのマッピングテーブルを選択し、SELECT ステートメントを実行して、クエリ条件を満たす時系列データをクエリします。

      たとえば、単一値モデルのマッピングテーブル mytable を使用して、メトリック名が cpu であるデータをクエリする場合、次の SQL ステートメントを実行します。

      SELECT * FROM mytable WHERE _m_name = "cpu" LIMIT 10;
    • 複数値モデルのマッピングテーブルを使用して時系列データをクエリするには、複数値モデルのマッピングテーブルを作成し、SELECT ステートメントを実行して、クエリ条件を満たす時系列データをクエリします。

      たとえば、複数値モデルのマッピングテーブル mytable::muti_model を使用して、usage_idle メトリックが 20 より大きいデータをクエリする場合、次の SQL ステートメントを実行します。

      SELECT usage_idle,usage_user,usage_system FROM `mytable::muti_model1` WHERE usage_idle > 20 LIMIT 10;

SQL モードを終了するには、exit; コマンドを実行します。

関連情報