これはアーカイブされた TiDB のドキュメントであり、更新は行われていません。最新の LTS バージョンのドキュメントを表示する

TiDB Cloudと Zapier を統合する

ザピアは、何千ものアプリやサービスを含むワークフローを簡単に作成できる、コード不要の自動化ツールです。

Zapier でTiDB Cloudアプリ使用すると、次のことが可能になります。

  • MySQL 互換の HTAP データベースである TiDB を無料で使用できます。ローカルでビルドする必要はありません。
  • TiDB Cloud の管理を容易にします。
  • TiDB Cloud を5000 以上のアプリに接続して、ワークフローを自動化します。

このガイドでは、Zapier のTiDB Cloudアプリの概要と使用方法の例を紹介します。

テンプレートを使用したクイック スタート

Zap テンプレートは、公開されている Zapier 統合用に、アプリとコア フィールドが事前に選択された既製の統合または Zap です。

このセクションでは、ワークフローを作成する例として、新しい Github グローバル イベントを TiDB 行に追加するテンプレートを使用します。このワークフローでは、GitHub アカウントから新しいグローバル イベント (任意のレポで、任意のGitHub イベントが発生します) が作成されるたびに、Zapier がTiDB Cloudクラスターに新しい行を追加します。

前提条件

開始する前に、次のものが必要です。

ステップ 1: テンプレートを取得する

Zapier 上のTiDB Cloudアプリに進みます。 Add new Github global events to TiDB rowsテンプレートを選択し、 Try it をクリックします。次に、エディターページに入ります。

ステップ 2: トリガーを設定する

エディター ページでは、トリガーとアクションを確認できます。トリガーをクリックして設定します。

  1. アプリとイベントを選択

    テンプレートにはデフォルトでアプリとイベントが設定されているため、ここでは何もする必要はありません。 [続行]をクリックします。

  2. アカウントを選択

    TiDB Cloudに接続する GitHub アカウントを選択します。新しいアカウントを接続するか、既存のアカウントを選択できます。設定したら、 [続行]をクリックします。

  3. トリガーを設定する

    テンプレートには、デフォルトでトリガーが設定されています。 [続行]をクリックします。

  4. テストトリガー

    [トリガーのテスト]をクリックします。トリガーが正常にセットアップされると、GitHub アカウントから新しいグローバル イベントのデータを確認できます。 [続行]をクリックします。

ステップ 3: Find Table in TiDB Cloud設定する

  1. アプリとイベントを選択

    テンプレートによって設定されたデフォルト値Find Table保持します。 [続行]をクリックします。

  2. アカウントを選択

    1. [サインイン]ボタンをクリックすると、新しいログイン ページにリダイレクトされます。
    2. ログイン ページで、公開鍵と秘密鍵を入力します。 TiDB Cloud API キーを取得するには、 TiDB CloudAPI ドキュメントの手順に従います。
    3. [続行]をクリックします。

    Account

  3. アクションを設定する

    このステップでは、イベント データを格納するために、 TiDB Cloudクラスター内のテーブルを指定する必要があります。まだテーブルがない場合は、この手順で作成できます。

    1. ドロップダウン リストから、プロジェクト名とクラスター名を選択します。クラスターの接続情報が自動的に表示されます。

      Set up project name and cluster name

    2. パスワードを入力してください。

    3. ドロップダウン リストから、データベースを選択します。

      Set up database name

      Zapier は、入力したパスワードを使用してTiDB Cloudからデータベースにクエリを実行します。クラスター内にデータベースが見つからない場合は、パスワードを再入力してページを更新してください。

    4. [検索するテーブル] ボックスgithub_global_eventと入力します。テーブルが存在しない場合、テンプレートは次の DDL を使用してテーブルを作成します。 [続行]をクリックします。

      The create table DDL

  4. テスト アクション

    Test actionをクリックすると、Zapier がテーブルを作成します。テストをスキップすることもできます。このワークフローが初めて実行されるときにテーブルが作成されます。

ステップ 4: Create Row in TiDB Cloudアクションを設定する

  1. アプリとイベントを選択

    テンプレートによって設定されたデフォルト値を保持します。 [続行]をクリックします。

  2. アカウントを選択

    Find Table in TiDB Cloudアクションの設定時に選択したアカウントを選択します。 [続行]をクリックします。

    Choose account

  3. アクションを設定する

    1. 前の手順と同様に、 Project Nameクラスタ NameTiDB Password 、およびDatabase Nameを入力します。

    2. [テーブル名]で、ドロップダウン リストからgithub_global_eventテーブルを選択します。テーブルの列が表示されます。

      Table columns

    3. [列]ボックスで、トリガーから対応するデータを選択します。すべての列に入力し、 [続行]をクリックします。

      Fill in Columns

  4. テスト アクション

    [アクションのテスト]をクリックして、テーブルに新しい行を作成します。 TiDB Cloudクラスターを確認すると、データが正常に書き込まれていることがわかります。

    mysql> SELECT * FROM test.github_global_event; +-------------+-------------+------------+-----------------+----------------------------------------------+--------+---------------------+ | id | type | actor | repo_name | repo_url | public | created_at | +-------------+-------------+------------+-----------------+----------------------------------------------+--------+---------------------+ | 25324462424 | CreateEvent | shiyuhang0 | shiyuhang0/docs | https://api.github.com/repos/shiyuhang0/docs | True | 2022-11-18 08:03:14 | +-------------+-------------+------------+-----------------+----------------------------------------------+--------+---------------------+ 1 row in set (0.17 sec)

ステップ 5: Zap を公開する

[公開]をクリックして Zap を公開します。 ホームページで zap が実行されていることがわかります。

Publish the zap

これで、この zap は、GitHub アカウントからTiDB Cloudにすべてのグローバル イベントを自動的に記録します。

トリガーとアクション

トリガーとアクションは Zapier の重要な概念です。さまざまなトリガーとアクションを組み合わせることで、さまざまな自動化ワークフローを作成できます。

このセクションでは、 TiDB Cloud App on Zapier が提供するトリガーとアクションを紹介します。

トリガー

次の表に、 TiDB Cloud App でサポートされているトリガーを示します。

引き金説明
新しいクラスタ新しいクラスターが作成されたときにトリガーされます。
新しいテーブル新しいテーブルが作成されたときにトリガーされます。
新しい行新しい行が作成されたときにトリガーされます。最近の 10000 行の新しい行のみをフェッチします。
新しい行 (カスタム クエリ)指定したカスタム クエリから新しい行が返されたときにトリガーされます。

行動

次の表に、 TiDB Cloud App でサポートされているアクションを示します。一部のアクションには追加のリソースが必要であり、アクションを使用する前に対応するリソースを準備する必要があることに注意してください。

アクション説明リソース
クラスタを検索既存のサーバーレス層または専用層を検索します。なし
クラスタの作成新しいクラスターを作成します。無料の Serverless Tier クラスターの作成のみをサポートします。なし
データベースを探す既存のデータベースを検索します。サーバーレス層クラスター
データベースの作成新しいデータベースを作成します。サーバーレス層クラスター
テーブルを検索既存のテーブルを検索します。サーバーレス層クラスターとデータベース
テーブルの作成新しいテーブルを作成します。サーバーレス層クラスターとデータベース
行を作成新しい行を作成します。Serverless Tier クラスター、データベース、およびテーブル
行の更新既存の行を更新します。Serverless Tier クラスター、データベース、およびテーブル
行を検索ルックアップ列を介してテーブル内の行を検索します。Serverless Tier クラスター、データベース、およびテーブル
行の検索 (カスタム クエリ)指定したカスタム クエリを使用して、テーブル内の行を検索します。Serverless Tier クラスター、データベース、およびテーブル

TiDB Cloudアプリ テンプレート

TiDB Cloud には、 Zapier で直接使用できるいくつかのテンプレートが用意されています。 TiDB Cloudアプリページですべてのテンプレートを見つけることができます。

ここではいくつかの例を示します。

FAQ

Zapier でTiDB Cloudアカウントを設定するにはどうすればよいですか?

Zapier が TiDB TiDB Cloudアカウントに接続するには、 TiDB TiDB Cloud API キーが必要です。 Zapier はTiDB Cloudのログイン アカウントを必要としません。

TiDB Cloud API キーを取得するには、 TiDB CloudAPI ドキュメントに従ってください。

TiDB Cloudトリガーはどのように重複除外を実行しますか?

Zapier トリガーは、ポーリング API 呼び出しと連携して、新しいデータを定期的に確認できます (間隔は Zapier プランによって異なります)。

TiDB Cloudトリガーは、多くの結果を返すポーリング API 呼び出しを提供します。ただし、ほとんどの結果は以前に Zapier で確認されたものです。つまり、ほとんどの結果は重複しています。

API 内のアイテムが複数の異なるポーリングに存在する場合、アクションを複数回トリガーしたくないため、 TiDB Cloudトリガーはidフィールドでデータを重複排除します。

New ClusterおよびNew Tableトリガーは、単純にcluster_idまたはtable_id idフィールドとして使用して重複排除を行います。 2 つのトリガーに対して何もする必要はありません。

新しい行トリガー

New Rowトリガーは、フェッチごとに 10,000 件の結果を制限します。したがって、10,000 件の結果に新しい行が含まれていない場合、Zapier をトリガーすることはできません。

これを回避する 1 つの方法は、トリガーでOrder By構成を指定することです。たとえば、作成時間で行を並べ替えると、新しい行は常に 10,000 件の結果に含まれます。

New Rowトリガーも柔軟な戦略を使用して、重複排除を行うためのidフィールドを生成します。トリガーは、次の順序でidフィールドを生成します。

  1. 結果にid列が含まれる場合は、 id列を使用します。
  2. トリガー構成でDedupe Key指定する場合は、 Dedupe Keyを使用します。
  3. テーブルに主キーがある場合は、主キーを使用します。複数の主キーがある場合は、最初の列を使用します。
  4. テーブルに一意のキーがある場合は、一意のキーを使用します。
  5. 表の最初の列を使用します。

新しい行 (カスタム クエリ) トリガー

New Row (Custom Query)トリガーは、すべてのフェッチで 1,000,000 の結果を制限します。 1,000,000 は大きな数であり、システム全体を保護するためにのみ設定されます。クエリにORDER BYLIMITを含めることをお勧めします。

重複排除を実行するには、クエリ結果に一意の id フィールドが必要です。そうしないと、 You must return the results with id fieldエラーが発生します。

カスタム クエリが 30 秒以内に実行されることを確認してください。そうしないと、タイムアウト エラーが発生します。

find or createアクションを使用するにはどうすればよいですか?

Find or createアクションを使用すると、リソースが存在しない場合にリソースを作成できます。次に例を示します。

  1. Find Tableアクションを選択してください

  2. ステップset up actionで、ボックスCreate TiDB Cloud Table if it doesn’t exist yet?にチェックを入れてfind and createを有効にします。

    Find and create

このワークフローは、テーブルがまだ存在しない場合に作成します。アクションをテストすると、テーブルが直接作成されることに注意してください。