Shopify からの大量データのエクスポートが、Bulk query(一括クエリ)の最適化により最大 4 倍高速化。大規模データセットの取り出しが、より短時間・低コストで回せるようになった。
大規模データセットのエクスポートが最大 4 倍速で完了。待ち時間が短縮される。
Bulk query の最適化なので、既存の一括クエリ実装はそのまま速くなる(記事は性能改善として告知)。
同期 API より処理時間が短く、インフラへの支出を抑えられる ── が記事の主張。
Bulk operations(一括操作)は、Shopify ストアからデータをインポート/エクスポートする最も効率的な方法。リクエストを投げると Shopify 側が非同期でジョブを処理し、完了後に結果ファイルを受け取る流れ。
| 観点 | 同期的な Admin API 利用 | Bulk operations |
|---|---|---|
| 開発スピード | ページネーション等の制御を自前で実装 | 速い 機能をより速く構築できる |
| 大規模データ処理 | 件数が増えると時間がかかる | 短時間 大規模データをより短時間で処理 |
| インフラ支出 | 長時間ジョブ/多リクエストでコスト増 | 低コスト インフラへの支出を抑えられる |
| 今回の高速化 | — | 最大 4× Bulk query のエクスポートが高速化 |
※ 数値は記事が挙げる「最大 4 倍」のみ。具体的な対象クエリ種別・適用条件・計測方法は記事に記載なし。
記事は今回の高速化に加え、Bulk operations 周りの直近の改善も列挙している。
大規模データセットのエクスポートが最大 4 倍速に。
Bulk operations を管理するための新しいクエリが追加(New queries for managing bulk operations)。
すべての mutation をサポートし、最大 5 件の bulk operation を同時実行可能。
Shopify CLI で bulk operations がサポートされた。
記事は、Bulk query / mutation を同期 API 呼び出しと比較できるサンプルアプリを案内している。導入前の比較検証に使える。
bulk operations sample app で比較環境を用意。
同じデータ量を Bulk と同期で投げて差を見る。
自ストアの実データで効果を見て採用判断。
※ あくまで「最大 4 倍」を時間比で表した概念図。実値はデータ量やクエリ内容に依存し、記事に内訳の記載なし。
今回明記されているのは Bulk query(エクスポート)の高速化。mutation の速度については記載なし。
直近の改善で bulk operation を同時 5 本まで実行可能。複数オブジェクトの並行エクスポート設計が組める。
直近の改善で全 mutation が bulk 対応。一括インポート系の処理も bulk に寄せられる。
CLI が bulk operations に対応。ローカル検証やスクリプト化、CI への組み込みがしやすくなった。
bulk operation を管理する新クエリが追加され、ジョブの状態把握がしやすくなった。導入判断は bulk operations sample app で同期 API と比較計測してから行うのが安全。具体的な対象 API バージョン・適用条件・上限値は記事に記載なし ── 公式ドキュメントで確認すること。