公平ソフトバンク・au・ドコモの方は、公式のオンラインショップを利用すれば頭金不要で通常のショップよりお得に購入できます。au公式ショップを見るデータ蓄積・分析・活用こそが、昨今のIT業界において競争を優位に働かせるのは周知の事実。膨大なデータ量は捌くのにスピードを犠牲にしがちになります。そこで、今回はすべてのレコードを読み込んだ際に、テキスト(CSV)とリレーショナルデータベース(RDB)とでどちらが優位性をもたらすのかを確認することにしました。その検証の顛末を本記事でご紹介させていただきます。検証に至った理由とは?業務内ですべてのレコードを読み込む処理をかける必要ががあり、CSVとRDBのどちらで管理した方が良いのかを判定する必要が生じた、というのがキッカケです。答えは検証結果を待つまでもなく、この場合はテキスト(CSV)の方が早いことは分かりきっています。どの程度早く、どの程度パフォーマンスが変わるのかを把握しておきたかったんですね。検証結果の末、もしどちらを選択してもパフォーマンスにそれほど差がないようであれば、集積データの調査等でSQLが使えるRDBの方が利便性に富んでいるので、RDBを選択することも考えられます。いずれにしても、固定概念を打ち崩すキッカケにもなるかもしれないので、検証を以ってスッキリさせたかったというのが最大の理由になります。検証にあたって、こんな準備をしてみた<環境は......>通常業務に差し支えない範囲で使えるAtomマシンで検証を行ったので、以下のようなスペックのマシンで確認を行いました。SSD:約50GBこのAtomマシンで検証を行うと決めたものの、CPUがしょぼすぎてRDBが不利に働くような気がする。いえ、他に確認できる最適な環境が用意できなかったので、結果に差が大きくつきすぎることを想定し、一応、ローカルMacでも確認することにしました。そのローマルMacのスペックは以下の通りです。SSD:128GB、HDD:2TB(......だと思う)<データは......>100万レコード、1000万レコードのデータをCSVとRDBで用意することにしました。RDBはMariaを使うのでMyISAMとInnoDBでそれぞれ用意。そのデータは以下の通りです。111,222,333,444,555,666,777,888,999,0それを100万レコードと1000万レコードの双方準備<チェック方法は......>Pythonの小さいバッチで行ってみます。チェック内容は単純に「time.time()」で括って、処理毎に確認する方法を採りました。start<ファイルサイズ比較方法は......>Diskリソースの使用量を確認。これも確認しておきたかったことの1つ。事前に懸念していたとおり、スペックの関係であまりにも遅い!しかも、計測結果の差が大きすぎるので、やはり事前準備していた「ローカルMac」での確認も必要であると判断しました。ローカルMacは様々なプロセスが挙がっており、正確性が劣ることが想定されるため、本来であればなるべく別の端末でやりたかったですねぇ......。そのローカルMacの結果はご覧の通り。※数回実行した値のおおよその平均値を実行結果として記載Atomマシンでは差がつきすぎて試したローカルMacでしたが、それでもここまで差が出るとは正直想像していませんでした。マシンパワーは使っているサーバと比較してあまり変わらないため、おそらく似たような結果になることでしょう。判定は想像どおり、ただしその差は想像以上やはり当初の想像どおりにテキスト(CSV)が早かったわけですが、その差は想像を超えていました。これでモヤモヤもスッキリといったところです。実際、検証環境をガッチリと用意できたわけではないので、ぼんやりでしか判断できてなかったので単純な内容ですが、「当たり前」のことを根拠に基づく「当たり前」に昇華させることができたという点では、この検証を実行した行為が成功だったと言えるのではないでしょうか。あとはその時々で運用しやすさとパフォーマンスを天秤にかけ、どちらかを選択すれば良いかなと思います。ソフトバンク・au・ドコモの方は、公式のオンラインショップを利用すれば頭金不要で通常のショップよりお得に購入できます。au公式ショップを見る【週刊bitWave】(メルマガ)始めました!登録はこちらからメールアドレスを入力してお申込みください。【週刊bitWave】の更新情報の配信にのみ使用します。個人情報の取扱いに関しては、「プライバシーポリシー」をご確認ください。解除はいつでもこちらから行うことが可能です。前回に続いて、今回は「Webサービス・サーバーの無停止化を試行」について作業内容を書いていきたいと思います。2015年10月14日に「デブサミ2015秋」に参加してきました。太めの人が集まるサミットではありません。世の中ではGUIのOSが主流になって、仕事でしかコマンド操作を行わなくなったと思います。前回に続いて、今回は「Webサービス・サーバーの無停止化を試行」について作業内容を書いていきたいと思います。2015年10月14日に「デブサミ2015秋」に参加してきました。太めの人が集まるサミットではありません。世の中ではGUIのOSが主流になって、仕事でしかコマンド操作を行わなくなったと思います。