計算機実験での出力データの形式について

このQ&Aのポイント
  • 時空間を対象とした物理数値シミュレーションの結果を出力すると大量のデータが生成されます。
  • データの出力形式は以前はバイナリだったが、図化ソフトウェアはテキスト形式を多く使用しています。
  • テキスト形式でデータを出力すると冗長なテキストになりますが、データ量の増加に伴いテキスト形式の利用も増えています。
回答を見る
  • ベストアンサー

計算機実験での出力データの形式について

時空間を対象とした物理数値シミュレーションの結果を出力するといくらでも大量のデータを出力することができます。空間メッシュを細かくしてかつ頻繁に(細かい時間ステップで)出力するだけですぐにギガバイト単位に至ります。そのようなデータの出力形式は以前はバイナリだったと思います。そうしない(テキスト形式)とハードディスクがすぐに満杯になってしまいました。 しかしそのようなデータを図化するソフトウェアはテキスト形式に出力する場合が多いように思います。特にParaviewとかTecplot, MicroAVSというようなソフトウェア群です(たいへん高性能)。しかもそれらのソフトウェアは格子の座標値までも出力させるのですが、動かない格子の場合はいつも同じ値です(同じデータを何度も出力)。つまりテキストでかつ冗長ということになります。以前はバイナリではなくテキストでやっていたらバカにされたというトラウマがあり、冗長なテキスト(しかも数値の間に空白とかある)で大量のデータを出力することに気持的に抵抗ができているのです。ビッグデータの時代でもありますが、このようなデータは昨今はテキストでやるのもアリということなのでしょうか。テキストの方が時間的な面では有利かもしれませんが。またディスクの大容量化と価格の低下でそういうことになるのかもとは思っているのですが。 どのような事情なのでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

テキスト化したほうがわかりやすいだろうことは今も昔も変わらない 以前はテキスト化できるほどの容量がなかっただけ そんな無駄遣いしていたらバカにされるのは当たり前の時代だった 現在はテキスト化できるほどの十分な容量が確保できるだけの性能が得られたということ そんな時代にわざわざバイナリデータのみで扱うような時代遅れの方がバカにされる

skmsk1941093
質問者

お礼

回答ありがとうございます。心強いご助言です。基本はやりやすいようにやるけれど、その時その時の事情に従っていればよいということですね。

関連するQ&A

  • テキストファイルのデータからバイナリを作りたい

    現在、テキストデータとしてCSVファイル1つあたり8バイトのデータが1000個ほどのデータが書かれているファイルがあります。このデータをバイナリファイルへ数値も変換して行きたいと思っています。 たとえば1個目のデータ”12345678”というテキストデータをバイナリの"12345678"に変換したらそれを0x00番地に並べて、そして2個目のデータ”87654321”というデータをバイナリにしたらそれを0x90離れた場所に置いていき、それを1000回繰り返して、結果をバイナリファイルで出力したいのですが、何か簡単にできるフリーソフトなどありませんでしょうか? また、プログラムとかでも簡単にできるのならそうしたいのですが、どうしたらよいか教えていただけないでしょうか?

  • バイナリデータとテキストデータの違いについて

    宜しくお願いします。 バイナリデータを用語辞典で調べると 「テキスト形式(文字データ)以外のデータ形式全般のこと。 実行可能形式のコンピュータプログラムや、画像や音声、 動画などのデータなどがバイナリデータにあたる。」 (http://e-words.jp/w/E38390E382A4E3838AE383AA.html) とあります。 これでは、バイナリデータとテキストデータの違いが分かりません。 テキストデータはコードの集まりで、 さらに細かくすると0と1の集まり(?)だから・・・ と考えるとバイナリデータとテキストデータの 違いが分かりません。 Q1.私は何が分かっていないのでしょうか? Q2.バイナリデータとテキストデータの違いを教えてください。 宜しくお願い致します。

  • VC++2010のCSV形式の出力についての質問

    VC++2010のCSV形式の出力についての質問なんですが、 シリアル通信でデータ(数値)を受信するんですが そのデータをCSV形式で出力したいんですが調べてみた結果ちょっとわからなく質問させていただきました。やはりデータベースとか使用しないとできないんでしょうか? よろしくお願いします。

  • Java ソフトウェア制作 テキストデータ保存形式

    Javaで顧客管理のソフトウェアを設計しています。 顧客を新規登録したりする際に、テキストデータを保存することになると思いますが、そのテキストデータ出力して保存するファイル形式を何にすればいいのか迷っています。 例えば、.txt .csv などに出力して保存とかです。 自分が扱いやすいものでいいのでしょうか? 因みに、ソフトウェアは一台のコンピューターで使用します。 後、MYSQLとかはWebだけの使用なのでしょうか? 基本的なこととは思いますが、どうぞご回答宜しくお願いします。

    • ベストアンサー
    • Java
  • 画像データやCADデータをテキスト形式でよめますか?

    画像データ(BMPやJpegやGif)をテキスト形式で出力して読みたいんです。 出きるんでしょうか? 出きるのであれば、必要なソフトはありますか? それと、CADデータ(CATIAやI-deas、UG)なんかのCADデータをテキスト形式で読むには、どうしたらいいんでしょうか? 少し、素人では難しくて、どうしたら良いかわからないんです。 どなたか詳しい人、いたら教えてください。

  • snortでパケット内容(ヘッダ&データ)のテキスト形式でのフル出力の仕方は?

    こんにちは。 RedHat9 | vine3.1 としています。 RedHat9のディレクトリをvine3.1にてNFSマウントする時に RedHat9のportmapからvine3.1に与えられるランダムのポートが何番なのか RedHat9のsnortで知りたく思っています。 tcpdumpはバイナリでしか出力されなくて、snortはテキスト形式でも出力してくるらしいのです。 (パイプ処理やテキストファイルにリダイレクトしたいのでsnortの方がいいかなと思います) snort 2.0.4 をRedHat9で使用しています。 [root@rh9]# snort -A cmd としたのですが(snort2.0.1についての参考書にて) 「ERROR: Unknown commnd line alert options:cmd Fatal Error,Quitting...」 となっています。 どうすれば、テキスト形式にフル出力させれるのでしょうか?

  • テキストデータをバイナリデータに変換したい

    テキストファイルに以下のデータがあるとします。 テキストデータの中身、 「 000E6D4181AA,1234567890ABCDEF 0123456789AB,0100000000000000 050505AAAAAA,0200000000000000 070707BBBBBB,0300000000000000 012345CCCCCC,0400000000000000 cdef01DDDDDD,0500000000000000  ・  ・  ・ 」 12桁の数値(16進数)と16桁の数値(16進数)を「,」で区切ります。1行の終端は改行しています。 このテキストファイルにあるデータを以下のバイナリ形式に変換させたいのです。バイナリ形式の各行の16バイト目は、テキストデータにはデータがないので、「00」とします。「,」で区切ったバイナリ形式は「2C」になると思います。 テキストデータの左上から順に「00」は以下の、左上から順の「00」に対応します。 バイナリデータの中身、 「 00 0E 6D 41 81 AA 2C 12 34 56 78 90 AB CD EF 00 01 23 45 67 89 AB 2C 01 00 00 00 00 00 00 00 00 05 05 05 AA AA AA 2C 02 00 00 00 00 00 00 00 00 07 07 07 BB BB BB 2C 03 00 00 00 00 00 00 00 00 01 23 45 CC CC CC 2C 04 00 00 00 00 00 00 00 00 CD EF 01 DD DD DD 2C 05 00 00 00 00 00 00 00 00  ・  ・  ・ 」 ソースコードでの例、 テキストデータ1行目の1つ目の「,」までのデータ「000E6D4181AA」を、メモリ領域に読み込む。2桁の数値を1バイトで格納する。 つまり、 char buf[6]とすると、 buf[0]=0xAA buf[1]=0x81 buf[2]=0x41 buf[3]=0x6D buf[4]=0x0E buf[5]=0x00 とこのようにメモリに格納したいのです。 格納するバイトオーダーはリトルエンディアン方式とします。 以上で、質問を終わりますが、質問が上手くできていないと思いますので、説明に不備があるかもしれません。その時はお手数ですが、連絡下さい。

  • ShapeFileからメッシュデータを作る

    地理情報システム(GIS)間で標準として用いられる「ShapeFile」のファイル形式があるかと思います。 (地理情報システム (GIS) のソフトウェアに強い、  ESRI(Environmental Systems Research Institute, Inc.)という会社が作ったデータ形式らしいですが) これをメッシュデータに変換したいです。 そのために、まずはShapeFileがどんなものなのかを確認しようと、 エディタにて開けるかなと思って開いたのですが どうやらテキストデータではなさそうでした。 ◆質問  (1)ShapeFile のデータにアクセスするにはどうすればよいのでしょうか?  (※テキスト形式のファイルではなかったわけなので、    なんらかのAPIをコールして値のGETができるのでしょうか)  (2)ShapeFile データからメッシュデータを作成したいシチュエーションは   結構ありそうですが   何か有名なアルゴリズムやフリーソフトはありますでしょうか?   (※自前で、難しいアルゴリズムを作らなければならないでしょうか?) 宜しくお願い致します。

  • SQLからデータのDL

     SQLサーバからブラウザを介し、外部出力したいと思います。  少ないデータでしたら、「SqlDataSource」から「SPREAD」にデータを渡した後、エクスポートできたのですが、大量のデータ「120列*5000件」だと、流石に無理があります。  出来るだけ軽く外部出力(テキスト形式。出来ればエクセル形式)する方法があるでしょうか?

  • 有限要素法のためのデータ構造について

    物理数値計算手法である有限要素法のデータ構造は普通は非構造格子でランダムな格子で領域を分割していくわけですが、その場合、データ構造としては、 1.節点番号とその座標 2.要素番号とその要素を構成する節点番号 になるはずですね。この2つがあれば計算領域の情報がすべてわかるはずです。 ランダムな格子のメッシュについてはgmshというGNUのソフトを使っています。 そのソフトでは1の節点番号とその座標は出ますが、2の要素情報が理解できないものになっています。ただ、gmshではメッシュは思ったように出力されています。 gmshのデータの考え方を理解していないからなのか、それとも私のFEMに対する理解が間違っているからなのかと自問しています。 このあたりの考え方について教えて頂きたいのですが。よろしくお願いします。