タスク利用状況の最適化
レシピの構築方法は多数あり、タスク利用状況に対応するために採用できる戦略もいくつかあります。 以下のドキュメントでは、タスク利用状況を調整したい場合にお客様が採用できる戦略をいくつか提案しています。実装できる戦略は、ビジネスユースケースによって異なります。
この記事で考慮すべきプラクティスは次のようにまとめられます。レシピ開発者は、レシピの構築時に確認できます。
- レシピをトリガーする必要がある頻度
- バッチ/バルクアクションを利用できるかどうか
- Workatoツールの効率的な使用
ポーリングトリガーの頻度を調整
レシピをトリガーする必要がある頻度は、ビジネスユースケースによって異なります。 重要な更新のためにリアルタイムで実行する必要があるレシピもありますが、ストレージやその他の目的でデータを同期するレシピには、この要件がない場合があります。 このような場合、ポーリング間隔を設定することで、処理されるジョブ数、ひいてはタスク数を削減できます。
レシピのデフォルトのポーリング間隔は5分ごとです。 ほとんどのWorkatoトリガーはポーリングベースのトリガーです。 これは、監視しているトリガーイベントについて、トリガーアプリケーションを5分間隔でチェックすることを意味します。
トリガー頻度を調整するには、お客様はTrigger Poll Intervalフィールドを使用できます。 これは、トリガー設定のオプション設定として使用できます。 このフィールドでは、お客様が一連のオプションから選択できます。たとえば、6時間ごと/1日ごと/30日ごとを選択したり、独自のポーリング間隔を分単位で定義したりできます。
ポーリング間隔の変更
ポーリング間隔を変更することで、お客様はレシピが各ステップを処理する回数を管理し、タスク利用状況を改善できます。 この戦略は、バッチまたはバルクトリガーおよびアクションと組み合わせて使用できます。
スケジュール済みジョブの実装
前述のポーリング頻度のカスタマイズと同様に、Scheduler by Workatoまたはその他のスケジュール済みバッチトリガーを使用してジョブをスケジュールすることで、一定期間内に処理する必要があるジョブ数を調整できます。
新しいイベントをチェックするために5分ごとの通常のポーリングを使用するのではなく、スケジュール済みトリガー(例:1日1回実行、1時間ごとに実行)を使用すると、同じ数のレコードをより大きなバッチで処理するために必要なジョブ数を管理しやすくなります。
バッチ/バルクトリガーとアクションの使用
バッチおよびバルクトリガーとアクションは、API経由でこれらの操作をサポートするすべてのコネクターで使用できます。 これらのトリガーとアクションは1つのアクションで数百から数百万のレコードを処理できるため、単一レコード操作ではなくこれらを使用することで、ジョブ内のタスク利用状況の管理に大きく役立ちます。
一度に1レコード(1タスク)を処理する代わりに、100レコードのバッチ(1タスクとしてカウント)を処理できます。 これにより、タスク利用状況を100分の1に削減できます。
バッチ/バルクトリガーとアクションの使用
ほとんどのバッチおよびバルクトリガーでは、バッチサイズ(例:1つのバッチで100レコードを処理)を指定できます。これは通常、1つのジョブで処理されるレコード数に相当します。 より大きなバッチサイズを使用すると、ジョブ数とそれに対応するタスク数を削減できます。
バッチおよびバルクアクションを使用するには、まずワークスペースにELT/ETL Bulk data processing機能があることを確認してください。 これにより、バッチおよびバルクアクションにアクセスできます。
次に、レシピ内のアプリケーションがバッチ/バルクトリガーおよびアクションをサポートしていることを確認します。 データベースコネクター(SQL Server、MySQLなど)、CSVファイルを扱うクラウドストレージコネクター(たとえば、Box、Amazon S3)、Salesforceコネクターなど、特定のコネクターでサポートされているトリガーとアクションを確認してください。 最適な結果を得るには、常にバッチ/バルクトリガーをバッチ/バルクアクションと組み合わせてください。
ストリーミングアクションの使用
ストリーミングとは、ファイルをより小さな部分(チャンク)に分けて順番に読み書きする概念です。 これによりWorkatoは、送信側および受信側システムのサイズ制限に達することを心配することなく、アプリまたはファイルシステム間で大容量ファイルを転送できます。 一般的な例として、共有ファイルシステム(SFTP)から分析用のファイルホスティングプラットフォーム(Amazon S3)へレコードを転送する場合があります。
ストリーミングアクションでは、処理のためにデータを複数のジョブに分割する必要なく、1つのアクションで大量のデータを処理できます。 ダウンロード元とアップロード先の両方のアクションがストリーミングをサポートしている必要があることに注意してください。
複数の変数の宣言
複数の変数の宣言
可能な場合は、タスクを削減するために、1つのステップで複数の変数を宣言できます。 これを行うには、‘Create variables’アクションと‘+ Add variable’ボタンを使用して、複数の変数を一度に宣言します。
TIP
1つのステップで複数の変数を宣言できる機能は、2021年春に追加されました。 Workatoは、管理者全員に対し、多数の変数が作成されている既存のレシピを見直し、可能であれば1つのステップに統合することを推奨しています。
Last updated: