- ベストアンサー
MySQLのCSVファイルの利用について
- MySQLを利用してCSVファイルを管理する方法について質問です。15000行のデータをダウンロード、アップロードする時間は長いですか?
- CSVファイルを各PCにダウンロードし、変更箇所を更新する方法について質問です。各PCにのみ変更を反映することは可能でしょうか?
- MySQLとCSVファイルを組み合わせた管理方法についての質問です。他にオススメなデータベースはありますか?
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
1.まあ、推計で 20MB から 100 MB 未満といったところですよね。LAN内であれば、気にするほどでもないですが、WANを経由するとなると回線速度がどうなるかですね。地域によっては問題になるかと。 参考:100MB=800Mbを転送する時間 1 Mbps:800Mb / 1Mbps ≒ 800s ≒ 14min 0.5 Mbps:800Mb / 0.5Mbps ≒ 1600s ≒ 27min 128 Kbps:800000Kb / 128Kbps ≒ 6250s ≒ 105min ※さまざまな要因(テキトーな計算が原因)によって上記よりも遅くなる。 (最近は、ADSLなのに上り 5Mbps のプランもあるようですが、私は詳しくは知りません) 2.CSVファイルの設計によります。というか、Excelの側で変更した内容のみをCSV出力するようにし、それで一括更新した方がいいでしょう。 (たとえば、カラムの更新日などでマークする) 要は、更新ルールをきちんと決めることです。 3.ユーザ数が増えたら破綻します。 そもそも、大規模(多人数、同時実行(並列処理))でなければ、かなりいい加減でも、そこそこ満足できる結果は得られるのがExcelの良くも悪いところです。 ローカルPCでの作業というのは、メリットがあるのは分かりますよ。 でも、それでは、多人数が同時に作業を実行することはできません。(あるいは、非常に制約を受けます) 4.私には、あなたが求めているのはデータベースソフトではなくて、CSVを差分結合したり比較するソフトだと思います・・・。 たとえば、 1.前日までのCSVファイルとPC1,2,3それぞれの更新されたCSVファイルの差分を抽出する。 2.抽出された差分で更新が衝突したレコードを調整する。 3.前日までのCSVファイルに対して、抽出された差分の更新を適用する。 のようなことをしたいのですよね・・・。 >ちなみにそのデータを使用しての検索、更新作業などがかなり多く、 >またデータを利用した様々なマクロを組んでいる為、 >できればエクセルを使用したローカルでの作業がかなり望ましい状況です。 まあ、Excelは、レポート処理に限定して、ローカルでのデータの更新処理は避けた方が無難です。 >ちなみにデーターベースはまったくの素人です。 >いけそうであればMySQLを勉強してみようかと思っています。 Excel VBAが相当使えるのなら、いけると思います。(かんたんとは言いませんが)
お礼
的確なご回答ありがとうございます!差分結合についていろいろ調べてみたいと思います!いずれはECサイトとの在庫管理のリンクも考えていたためとりあえずMySQLにたどり着きましたが、もう少し幅広く検討してみたいと思います!!