Asopitech With · 自動化サービス
IFTTT with Alopex DB
IFTTTは、アプリや機器をトリガーとアクションでつなぐ自動化サービスです。これをAlopex DBを使って再現すると…?
更新: 2026/10/12
どんなサービスか
IFTTTのような自動化サービスは、アプリ、機器、サービスをつなぎます。利用者は、トリガーとアクションを組み合わせたアプレットを作ります。毎朝の天気予報を受け取る、家を出たら防犯をオンにする、といった自動化です。扱うデータは、利用者、つないだサービス、アプレットの定義、トリガーのイベント、実行の記録です。
データの置き場所
- SQLテーブル:利用者、つないだサービス、アプレットをテーブルに持ちます。トリガーとアクションの設定は、サービスごとに形が違うので、JSONの列に入れます。
- トランザクション:届いたトリガーのイベントは、イベントの識別子に一意の制約を付けたテーブルに入れます。イベントの記録と、実行の予約を、同じトランザクションでコミットします。同じイベントが何度届いても、アプレットの実行は重なりません。
- カラムナーテーブル:実行の記録を、HTTPの取り込みでカラムナーテーブルにまとめて入れます。アプレットごとの成功の割合や、サービスごとの失敗の傾向をSQLで集計します。
サービスを定期的に確かめるスケジューラーと、アクションを呼び出すワーカーは、アプリのコードです。どちらもAlopex DBに読み書きして、状態を共有します。
配置の形
Alopex DBをサーバーとして立てます。トリガーを受ける窓口、スケジューラー、ワーカーが、それぞれHTTPかgRPCで同じデータベースにつなぎます。運用の担当者は、CLIから同じデータベースにSQLを打って調べます。利用が広がったら、同じSQLのままAlopex DBのクラスタに広げます。
Alopex DBが合う理由
自動化サービスでは、設定、イベント、記録という性格の違うデータが、たくさんのプロセスから同時に読み書きされます。Alopex DBは、テーブルとJSON、カラムナーの記録を、HTTP、gRPC、CLIのどこからでも同じSQLで扱い、トランザクションで重複を防ぎます。
ルールをSQLとJSONで持ち、実行の記録をカラムナーテーブルにためられるAlopex DBのサーバーは、自動化のサービスにおすすめです。クイックスタートもあわせてどうぞ。