top of page

FileMaker "より速く"大量のデータをインポートしたい!①


はじめに

こんにちは、ティーマネジメントの ゆった です。


先日、GODIVAのカカオフルーツジュースというものを飲みました。

なんでも、今まではカカオ豆だけを使用してほとんど廃棄されていた果肉、カカオの果実"パルプ"を絞った商品とのこと。

チョコレートっぽさは全く無く、甘酸っぱくてライチにも似た風味のたいへん美味しいジュースでした!

他にもカカオフルーツを使ったものが無いか探してみると、コンビニで森永乳業「まるごとカカオ」なるカカオフルーツのアイスを見つけました✿

中心がビターチョコアイスで周りがカカオフルーツアイスの2層構造なっていて、こちらもとっても美味しかったので、興味のある方はぜひ探してみてください♪


ーーー


今回はデスクトップに置いたFileMakerファイルへ、CSVファイルから10万レコードを色々なパターンでインポートしてみました。

インポートするサンプルデータはよくあるお客様情報を模した、

氏名、ふりがな、年齢、生年月日、性別、メールアドレス、電話番号1、電話番号2、郵便番号、住所、の10フィールドです。

※ハウスキーピングフィールドも初期値のままおいています


「10万行のCSVを1回インポート」と「1万行のCSVを10回インポート」

 大量のデータをFileMakerに読み込みたい場合、一気に全部のデータを入れるか、複数回に分けてデータを入れるのかどちらの方が速いのでしょうか。

 10万レコードのテキストファイルをインポートしてさっそく比較してみましょう!


 「10万行のCSVを1回インポート」させるスクリプトがこちらです。


 そして、「1万行のCSVを10回インポート」させるスクリプトがこちら。

 今回はLoopの繰り返し処理で連続してインポートさせています。


 どちらのスクリプトも、インポート先は表形式(ミニマリスト)で10フィールドを表示させています。

 また毎回、0レコードにした状態からスクリプトを実行しています。

 それぞれ10回の試行したところ、

 10万行のCSVを1回インポート:平均12.6秒

 1万行のCSVを10回インポート:平均11.2秒

 という結果になりました。

さいごに

 意外なことに、データ量を少なく、複数回インポートした方が処理速度は速くなりました!  ただ、今回はフィールドオプションの計算や集計を使用していないことも結果に関係していると思いますので、実環境でのテストが重要です。

 10万レコードでの比較だったため1秒程度の差になりますが、もっと膨大なデータであったり定期的にインポートを繰り返す場合には分割インポートも検討の余地ありです🌸🌸🌸

Comments


bottom of page