SalesforceやHubSpot、StripeのデータをDWHに取り込みたい。基幹DBの差分を毎日同期したい。コードを書けば自分でも作れますが、スキーマ変更への追従、リカバリ、認証トークンの更新、と運用要素が積み重なって、地味に手間がかさみます。Fivetranは「全部任せたい」というニーズに応えるマネージドELで、いまやこの領域のデファクトです。
運用負荷の劇的な軽さが最大の強みですが、MAR従量課金がスケールすると一気に跳ねる、というのも有名な話です。仕組みと運用、費用感を順に押さえます。
Fivetranの仕組み
Fivetranは、ソース(SaaS・DB・ファイルストレージ)とデスティネーション(DWH)を、コネクタを介してつなぎます。接続情報を設定したら、あとはFivetranが定期的にソースからデータを取得し、DWHに書き込みます。
| 機能 | 役割 |
|---|---|
| コネクタ | 500以上のソースに接続。設定はUIから |
| 差分同期 | 初回は全件、以降は差分のみ自動取り込み |
| スキーマ自動追従 | ソース側のカラム追加・削除を自動反映 |
| 履歴保持 | 変更履歴を残すHistory Mode(オプション) |
| リカバリ | 失敗時の自動リトライ・再同期 |
| 変換 | 軽い変換やdbtジョブ実行のスケジュール |
利用者がやることは「接続情報を入れる」だけです。コネクタの保守、APIの変更追従、データ型のマッピングまでFivetran側で吸収します。
MAR(Monthly Active Rows)課金とは
Fivetranの料金は「MAR」で決まります。これは「月内に追加・更新・削除されたユニークな主キーの数」を表します。「同じ行が複数回更新されてもMARは1」という点に注意が必要です。
| 状況 | MARカウント |
|---|---|
| 新規1行が月1回挿入 | 1 |
| 1行が月10回更新 | 1(ユニーク主キーで計算) |
| 異なる10行が1回ずつ挿入 | 10 |
| 1,000行のテーブルを毎日全件再同期 | 1,000(行が変わらなければ) |
MAR従量制は、データ量が増えると線形以上に費用が伸びる構造です。月数百万MAR規模なら数十万円、数千万MARで数百万円規模に達することもあります。「PoCは安く始められるが、本番スケールで予算がオーバーした」というのが、Fivetranの最大の落とし穴です。
主要なコネクタとデスティネーション
500以上のコネクタの中で、よく使われるカテゴリーを挙げます。
| カテゴリー | 例 |
|---|---|
| 業務SaaS | Salesforce、HubSpot、Zendesk、Stripe、Shopify、Marketo |
| 広告 | Google Ads、Facebook Ads、TikTok Ads |
| データベース | MySQL、PostgreSQL、SQL Server、Oracle、MongoDB |
| ファイル | S3、GCS、Azure Blob、SFTP |
| イベント | Segment、Webhook、Kafka |
デスティネーションはSnowflake・BigQuery・Databricks・Redshift・Postgresが標準対応です。クラウドDWHごとの違いはクラウドDWH入門を参照してください。
dbtとの統合
Fivetranは「EL」が担当領域ですが、dbtジョブを内蔵スケジューラから実行する機能も持っています。Fivetran Transformationsという機能で、dbtプロジェクトをFivetranから定期実行できます。
| 実行パターン | 使い分け |
|---|---|
| Fivetranから直接dbtを実行 | シンプルな構成、Fivetran中心の運用 |
| オーケストレーターから両方を呼ぶ | 複雑な依存・他システムと連携 |
| dbt Cloudのスケジューラで実行 | dbtツール群に統合したい |
規模が大きくなり、品質チェックや他システム連携が増えてきたら、AirflowやDagsterのようなオーケストレーターに集約するのが現実的です。選定はオーケストレーター選び方ガイドを参照してください。
運用上のハマりどころ
- 意図しないMAR爆発:ソース側でカラム更新が増えると、関連する行が大量に「Active」判定され、MARが跳ねる。重要テーブルは事前にMARを試算する。
- 不要なテーブルまで同期:ソースのテーブル全部を同期対象にすると、使わないテーブルでMARを消費する。同期スコープを絞る。
- History Modeの費用:履歴保持を有効にすると、変更ごとに新しい行が積まれ、MARが大きく増える。本当に履歴が要るテーブルだけ有効化する。
- 同期頻度の調整:高頻度(5分間隔等)にするとMARが増える方向に動く場合がある。要件と費用の天秤で調整する。
向く・向かない場面
- 向く:運用負荷を最小化したい、メジャーSaaS/DBの取り込みが中心、データエンジニアが少人数、予算に余裕がある、コンプライアンス・SLAが要件
- 向かない:コストを抑えたい(→Airbyte)、カスタムコネクタが多数必要、特殊な認証や独自API中心(→自前EL)
まとめ
- Fivetranは「接続情報だけで全任せ」のマネージドELデファクト。500以上のコネクタ。
- MAR従量課金が特徴。小規模は安く、本番スケールで一気に跳ねる構造。
- スキーマ自動追従・差分同期・リカバリの自動化が運用負荷を下げる。
- dbt統合あり。複雑な依存は外部オーケストレーターに集約。
- 運用人員が薄い・メジャーSaaS中心のチームでは強力な選択肢。
全体像はEL vs ETLとデータ取り込みツール選定、隣接の選択肢はAirbyte とは・自前ELの判断軸にあります。Fivetranの導入や費用試算の壁打ちは、DE-STKの初回相談(30分・無料)もご利用ください。
よくある質問(FAQ)
Q. Fivetranの最低料金はいくらですか?
A. プランによりますが、Starterプランは月数万円程度から始められます。MARが少ない時期は安価ですが、利用量と接続数が増えると一気に上がる構造です。最低料金よりも「自社のMAR試算」が重要で、契約前にトライアルでMARを計測してから判断するのが安全です。料金は変動するため、最新は公式ドキュメントを確認してください。
Q. AirbyteからFivetranへ、またはその逆へ移行できますか?
A. できます。両者ともデスティネーション(DWH)に書き込む形なので、コネクタ単位で順次移行できます。よくあるパターンは、Fivetranで小さく始めて、MARが大きい接続だけAirbyteへ逃がす移行です。逆に、自前運用のAirbyteからFivetran Cloudへ、運用負荷を下げるための移行もあります。重要なのは、移行中に変換層(dbt)への影響を最小化することです。テーブル名やスキーマが変わらないように、テーブル設定を合わせます。
Q. Fivetranで取り込んだRawデータは、どう扱いますか?
A. メダリオンアーキテクチャ(メダリオンアーキテクチャ解説)のBronze層として扱うのが定石です。Fivetranが生データをBronzeに置き、dbtでSilver/Goldに変換していきます。Fivetran側で軽い変換(PII除去等)をかけることもできますが、複雑な変換はdbtで行うのが運用上シンプルです。
Q. Fivetranの代替(HVR、Stitch、Hevo等)は検討すべきですか?
A. 用途によります。HVR(Fivetran傘下)はリアルタイム同期に強く、StitchやHevoはより小規模向けの料金体系です。大規模CDC(Change Data Capture)が要件ならHVR、コスト重視で機能が限定的でよいならStitch/Hevoが選択肢に入ります。市場のデファクトはFivetranとAirbyteの2強で、特殊要件がなければまずこの2つを比較するのが効率的です。
データエンジニア入門:取り込みから配膳まで
関連記事を順序立てて読みながら、ステップごとに4択クイズで理解を確認できる学習パスです。登録不要・進捗自動保存。
学習パスを始める →