• 締切済み

大量データの分割

仕事で100万件、200万件という大量データを扱う仕事をしております。 大量データを受領するも、エディタで開こうとするとさすがに100万件を超えるくらいになってくると非常に時間がかかる、もしくは、固まってしまうという事態が頻発しています。 ファイルを開かずに、プログラムに食わせて、20万件ずつくらいに分割したいのですが、バッチファイル、もしくはvbスクリプトなどで作ったスクリプトに食わせて、20万件なりの一定件数ごとに分割するにはどうすればよいでしょうか? バッチファイルでもvbスクリプトでもperlでも言語は問わないので、いい方法をご教授いただきたく存じます。 よろしくお願い致します。

みんなの回答

回答No.4

こんなスクリプトがありましたが、如何でしょうか。 参考URL : http://oad.seesaa.net/article/235928222.html

  • n2pv
  • ベストアンサー率0% (0/4)
回答No.3

ググって見つけただけなんですがこれとかどうでしょう?  XPまでしか使えないっぽいですが(PCは少なくともWinですよね)。 http://w-x-w.com/2010/12/08/36  ↑100万行だとこれでは頼りないかも。やってみてダメそうだったら、   「テキストファイル」「分割」「大容量」あたりでググってみてください。 扱ってるデータは売り上げとかでしょうか?余談ですが…もしログ等であれば、 splunkってツールが解析に使えます。大きいデータ扱えるし、複雑なこともできますし、 グラフとかの表現も綺麗。使い方はちょっと(使い倒そうと思ったらたくさん)勉強が必要。 http://ja.splunk.com/

  • wpwpwpw
  • ベストアンサー率38% (57/148)
回答No.2

ご質問に対する完璧な解答ではありませんが EmEditorはいかがでしょうか。 http://jp.emeditor.com/ データの中身にもよりますが、試験した際には3GB、200万行のファイルを 10秒程で読み込みました。 お使いのPCのスペックにも左右されますので、全てがこの結果になるとは思っておりません。

回答No.1

データ形式次第ですから漠然と言われてもダメですね。 CVSであるとか固定長であるとかそのくらいの情報は開示していただかないと。

関連するQ&A

  • 抽出データの欠落

    プログラムもほとんど知らない素人ですが質問させていただきます。^^; oracle9iデータベースで、未抽出の情報があれば、「抽出済みフラグ」を立て、さらにその情報はテキストファイルに出力する処理を開発者に作ってもらいました。 しかし、データの10件に抽出済みフラグが付いたのに、テキストファイルへの出力は8件とか9件しか出力されない といった現象が頻発して困っています。 当初はSQL文のみのプログラム(?)で現象が出たのでVBプログラムで作り直してもらったのですが、同じ現象が出ます。 データ総件数は3万件ぐらいで、抽出される件数は20~100件ぐらいです。 こういったトラブルはoracleデータベースで一般的にあり得るのでしょうか? よろしくお願いします。

  • 大量のデータを分類したい

    昨年の9月からMacBook Proを使っています。 今回ある作業をしなければいけません。 その作業に使うデータは、 1ファイルあたり5万件のCSVデータで合計100万件のデータです。 このデータをソートしてexcelのデータで加工したいのですが、 データを受け渡された人から、 エクセルでは開ききれないと思いますので、 テキストエディタなどのソフト推奨です。 と言われ、この作業に適し、かつMacで使えるテキストエディタが あれば教えていただきたいです。 よろしくお願いいたします。

    • 締切済み
    • Mac
  • CSVファイルの行データを一定の大きさに分割する方法を教えて下さい。

    800Mで350万件のCSVファイルがあります。 エクセルに落したいのですが、6万件程度に分割しなければ読み込めません。 分割後、バッチファイル等で結合するソフトはあるようですが、 そのまま使用出来なければなりません。 よろしくお願い致します。

  • 音声データの分割

    音声データの分割を依頼されました。 簡単に言うと  指定時間毎に分割して複数ファイルに分割するです。 以下会議の音声データ(WAV)を項目ごとに分割したいので 「Audio Editor」で分割しました。 (分割自体は、問題なく処理できました。)  00:00:00 - 00:02:23  挨拶  00:02:23 - 00:09:25  紹介  00:09:25 - 00:25:45  グループ_A  (途中 省略)  01:12:26 - 01:15:22  結び -------------------- AudioEditor https://www.vector.co.jp/soft/win95/art/se143192.html -------------------- しかし、「Audio Editor」はインターフェースが古いのもあって  使い勝手が悪いように感じます。 コロナの昨今、この手の依頼が舞い込む事が多くなったので Win_10でも利用できる使い勝手の良い他のアプリはありますか ?

  • Access テーブルを分割してエクスポートしたい

    Access 2000のテーブルを指定した行数分に分割して、csv形式にエクスポートしたいと思っています。 例えば、100万件のデータを20万件×5ファイル、というイメージです(対象件数/分割件数ともに一定ではありません) 自分で考えてみたのですが、上位20万件をクエリ→削除クエリ→上位20万件をクエリ→削除クエリ・・・という 方法しか思い浮かばず、もっと簡単に出来る方法をお教えいただければと思います。 よろしくお願いします。

  • SqlServerにデータを大量インサートする簡単な方法

    SqlServerで大量データ(一万件とか)のインサートを行うには どんな方法がありますか? エクセルにエクスポートした後コピー(ドラッグ)して件数を増やし インポートしようとしましたが、 エクスポートした件数分しかインサートされませんでした。 みなさん、どんな方法を使ってますか? 教えてください! よろしくお願いいたします。

  • データ分割 正規表現だけで可能?

     都合のいい質問だと分かってて質問しています。  今、データの読み込みプログラムを作っています。  件数は12万件(11MB)です。 ・データはCSV形式になっており、区切りはカンマです。 ・"" で囲まれたカラムとそうでないカラムがあり、"" で囲まれたカラムの一部には、データとしてカンマが含まれていることがあります。 ・また、データにはエスケープシーケンスを含むことが許されており、 \" という文字は囲み記号であると認識してはいけません。  このようなルールのとき、    @data = split( /,/, $line );  というロジックでは分割できませんよね。  なんで、物凄い複雑なロジックで分割を行う xsplit という独自の関数を作って分割しています。  ところが、1行ごとにこの xsplit を使用しなければならないため、データが12万件もあると、読み込みだけで15~18秒もかかってしまいます。( split だと3秒で終わります)  で、少しでもこの時間を縮めるために、上記のルールを崩さずに split の /,/ の部分を変更するだけで分割を行うことはできないもんでしょうか。  何か思いついた方がいらっしゃいましたら、よろしくお願いします。 (ちなみに拡張モジュール類などの、環境によって動いたり動かなかったりするような物は使えないということでお願いします)

    • ベストアンサー
    • Perl
  • VB2008のDataGridViewにあるデータをPHP5を使ってMySQLに

    VB2008で大量のデータをサーバーにあるPHP5スクリプトにデータを送ろうと思いますが、VBとPHPで通信する何か良い方法はありますか? データベースはMySQL5です。 DataGridViewからXMLファイルにして、それをPHPに吸わせてMySQLにセットする方法を考えていますが、簡単な方法があれば知りたいです。 直接VBからMySQLへ書き込み?は可能でしょうか。

  • perlでファイルを分割するプログラム

    3Mを超える1つのテキストファイルに入っているデータある目印をもとに分割したいと思っています。分割ソフトをさがしたのですが見つけられませんでした(サイズで分割はありました)perlでテキスト処理ができると思い「テキスト処理とCGIのためのPerlプログラミング 伊藤 博康 (著) 」という本を借りてきたのですが、そのようなサンプルがなく1からperlを勉強する時間もないため、ここで質問させていただきました。ネット上にファイルを分割するperlのサンプルプログラムがありましたら教えてください。よろしくお願いします。

    • ベストアンサー
    • Perl
  • ファイルをある文字列で分割したいです。

    数百MBの1つのログファイルがあります。 これを月ごとのファイルに分割しようと思ってます。 大きすぎて既存環境のviでは開けないので、コマンドやスクリプトで分割しようと考えてます。 とりあえず今年の3月(Mar)~7月(Jul)と5つ月ファイルに分割できればいいです。 perlで1行ずつチェックしようかと思ってましたが、 間違いなくもっと簡単に処理できるかと思い投稿しました ^ ^;; シェルはcshです。 よろしくお願いいたします。

専門家に質問してみよう