FileMaker Data Migration Toolとは
FileMaker Data Migration Toolとは、Claris社から提供されている、FileMakerのデータ移行を行うためのツールです。
これはコマンドラインにて実行します。
公式情報はこちら
https://community.claris.com/ja/s/article/New-FileMaker-data-migration-tool
FileMaker Data Migration Toolを用いない場合のデータ移行手順
FileMakerでデータ移行を手動で行うには以下のような手続きが必要になります。
- ファイルを開く
- 対象のテーブルを指定する
- インポート処理を行う
- シリアル番号のあるフィールドのオプションで「次の値」をセットする
1つのファイルに複数のテーブルがある場合はこれを繰り返します。
大量にテーブルがある場合は都度の選択が煩雑で、間違ったテーブルを指定しまうリスクもあります。
また、インポートの手法が複数ありますが、適切なものでないとセットすべき値がずれたり
シリアル番号が異なるものになるなどの危険性もあります。
FileMaker Data Migration Toolでは、これらの作業を自動的に行ってくれます。
安全確実です。
FileMaker Data Migration Toolはデータ移行が速い
FileMaker Data Migration Toolは、前述のような都度の細かい作業を手作業で行わなくてよいので非常にスピーディかつ確実に作業ができます。
人間が個別対応するよりもはるかに速くデータ移行が可能です。
しかし、データ移行の速さの理由はそれだけではありません。
インポート処理にかかる時間が非常に速いです。
これを厳密に言うと、データのインポートというよりも、インデックス作りが速いということになります。
FileMakerのデータインポートの時間は、実際のデータインポートよりもインデックス情報を作成する作業の方が時間を要するケースがあります。インデックスを付けているフィールドが多く、かつレコード数が多い場合です。
FileMaker Data Migration Toolを使えばインデックス情報の生成(コピー)が非常に速いです
FileMaker Data Migration Toolではインデックス情報をどのように扱っているか
これは公式な情報ではなく、個人の感想・予想としてお読み下さい。
通常のインポート作業では、データをインポートしてから、そのデータを元にインデックス情報を構築しています。FileMakerのファイルの最適化やファイルの修復をする作業がありますが、それのログファイルを確認すれば、何を行っているかがわかり、インデックス作成に多くの時間を割いていることがわかるでしょう。
FileMaker Data Migration Toolは、インデックス作成(構築)をするのではなく、ソースファイルにあるインデックスデータをコピーして移植しているものと思われます。1レコード、1フィールドずつインデックスを生成するよりも、はるかに速くインデックス情報を用意できることになります。
この仮説の裏付けとして、FileMaker Data Migration Toolには、オプションコマンドで
-rebuildindexes
というものがあります。
これは、全ての索引を再構築するコマンドです。 標準ではそれを付けません。
このオプションを付けてマイグレーションを行うと処理にかかる時間は大幅に増えるでしょう。
FileMaker Data Migration Toolのデータ移行の速さの肝はここ、つまり「インデックス情報を1から構築しない」にあると思います。
他の方法で、インデックス情報をコピーして移植する方法はありません(と思います)
スピーディなデータ移行にはFileMaker Data Migration Toolが必須
使用した当初は、なぜここまでにデータ移行が速いのか全く分かりませんでした。
それこそ、魔法かマジックにかかったかのような気持ちでした。
データは正しく作られており、正常に動作します。そしてその作業は通常のインポート処理の
半分以下です。(これはファイルの構造やデータ数によって異なります。何百フィールド、20以上のテーブル、200万件以上のレコード数、20GBほどのファイルサイズを想定してください)
FileMakerのデータ移行には、FileMaker Data Migration Toolが必須でしょう。