• ベストアンサー

1つのフォルダに入れられるファイル数

CGIなどで、1つのフォルダに非常に多くのファイルを生成していった場合 OSが混乱してしまうといった風の噂を聞いたことがあるのですが、 フォルダにファイルを生成するだけならまだしも、それぞれのファイルを読み込んだり、書き込んだりといったファイル操作もともなってくると、 どのくらいのファイル数なら支障なく操作できるでしょうか。(処理速度も含め) 例えば、データベースにバイナリデータごと格納してしまったほうがよいのか ファイルへのリンク情報のみを格納してバイナリデータはフォルダに入れて 利用したほうがよいのかといったことです。

  • CGI
  • 回答数2
  • ありがとう数2

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

  • ベストアンサー
noname#25358
noname#25358
回答No.2

 ありえません(笑)  きっぱりと。  どういう意味での混乱かは分かりませんが、ファイルが増えただけで処理できなくなるなんてことはありえません。  あと、速度の低下についても、構造上、10万個あってもそれほど苦にはならないはずです(最近のHDDは特に)。  ただし、MS-DOS形式でフォーマットされたディスクの場合(フロッピー等)には、ルートフォルダに限り、伝統的に144個までしか入れられない仕様になっています。  また、いくつものプログラムが同時に動くことによって起こる混乱は、これは複数のプログラムがいっせいに同じファイルにアクセスしようとするために起こるのであり、これはプログラマーの責任です。

shunet
質問者

お礼

なるほど、10万個でもですか よくわかりました。ありがとうございました。

その他の回答 (1)

  • terra5
  • ベストアンサー率34% (574/1662)
回答No.1

>OSが混乱してしまうといった風の噂を聞いたことがあるのですが、 混乱してしまうようでは、OSとしては問題でしょう(^^; OSとしてはそれぐらい正しく動くのが当然ですし、 そうでないなら、OS等の選択に問題がありと考えます. >どのくらいのファイル数なら支障なく操作できるでしょうか。(処理速度も含め) いろんなケースが考えられるので、これだけの情報では回答は無理と思います。 ただ、ファイル数が多ければ、ファイルのオープン等で速度は低下してくるはずです。 ただ、それがどこから問題になるかと言われても,利用形態等もありますから、簡単にいくつとは言えないでしょう。 もちろんOSやら、デバイスやら、ファイルシステムにも影響受けますし。 あとは、ファイル数が多くなると問題になりそうなのは、ファイルのオープン、クローズの手間でしょう。 一度にオープンできるファイルの数は上限がありますから、ファイル数が多いと頻繁にファイルのオープン,クローズが必要になることが考えられますが, これは処理的には重い部類になると思いますので、 少ない方がいいでしょう。

shunet
質問者

お礼

ありがとうございました。

関連するQ&A

  • お気に入りのフォルダ「リンク」の用途は?

     お気に入りにおいて、何度も自動生成されるフォルダ「リンク」は、何を格納するためのフォルダなのでしょうか?

  • バイナリファイルのアップロードに関して

    今回質問させて頂くことに関連した問題を、現在MySQLのカテゴリで質問させていただいているのですが、 バイナリファイルをアップロードし、そのファイルのバイナリデータを変数($img)に格納し、それをDBに格納するという形を目指しています。しかし、DBにどうしても格納できません。もしやバイナリデータを変数に格納する時点で、既におかしいのかと思いまして、その部分についてこちらでご教授頂きたく書き込ませていただきました。 #!C:\Perl use CGI; use DBI; $PCMOJPATH='C:\パス名'; #ディレクトリ指定 my ($buffer); my $query = new CGI; $uniqid = time . "_" . $$; $newfile = "upload_$uniqid"; #ファイル名 print "Content-type: text/html\n\n"; print "<html><body>\n"; my $fH = $query->upload('filename'); my $mimetype = $query->uploadInfo($fH)->{'Content-Type'}; open (OUT, ">$PCMOJPATH/$newfile"); binmode (OUT); while(read($fH, $buffer, 1024)){ print OUT $buffer; $img .= $buffer;   #バイナリデータを$imgに格納 } close (OUT); close ($fH) if ($CGI::OS ne 'UNIX'); chmod (0666, "$PCMOJPATH/$newfile"); ------------------------- と書いているのですが、$imgにはバイナリデータがちゃんと入っていないのでしょうか?間違っているところがあれば、どのように直したらいいか教えてください。どうぞよろしくお願いします。

  • フォルダ構造のような仕組みの作り方について

    添付ファイルのようなフォルダ構成の追加・更新・並び替え・削除をデータベースで実現したいと思います。 そのため、データベースに下記の項目を格納すれば良いのではと思いました。 1. フォルダID 2. フォルダ名 3. 親フォルダID 4. 並び順 ただ上記では並び替えの際に、多くのレコードの更新が必要になりそうで、 考え方として間違っているのではないかと思いました。 そのため、添付ファイルのようなフォルダ構成をデータベースで実現する場合、 どのようにするのが良いかご教示いただければと思います。 以上、よろしくお願いします。

    • ベストアンサー
    • MySQL
  • バイナリファイルの扱いについて

    お世話になります。MYSQLのカテゴリーにするか迷いましたが、こちらで質問させていただきます。 アップロードしたバイナリファイルをデータベースに格納したいのですが、データベースの中は空になってしまいます。 ファイルの中身を変数にバイナリとして取り込み、その変数をINSERT文で挿入するというのは、どう書いたらいいのでしょうか? #!C:\Perl\bin\perl use CGI; use DBI; $PCMOJPATH='C:パス名; my $form = CGI->new; print $form->header(-type => "text/html"); $form->charset('Shift_JIS'); my($filename) = $form->param('uploadFile'); $time = time . $$; $newfile = "upload_$time";  :  : という感じで書いているのですが、変数にバイナリとして取り込むのができません。 どうぞよろしくお願いします。

    • ベストアンサー
    • Perl
  • iso形式のファイルがフォルダになってしまいました

    娘の成長記録のDVDをiso形式に変換して保存しておいたものを一時的に外付けHDDに退避させておいたところ、そのisoデータがフォルダになってしまっていました。 しかも、もとのデータはそのことに気付かずに消して(フォーマット)しまいましたので、そのフォルダになってしまったデータをiso形式のファイルに戻すしか復旧させる方法が残っていません。 バイナリエディタ(Stirling)で開いてみようとしましたが、アクセスを拒否されてしまい、バイナリレベルでの変更もできませんでした。 ちなみにそのフォルダになってしまったデータの中には1とか2とかっていうファイルが入っていて4GBとかのデータがありました。 元々はiso形式のファイルがフォルダになってしまった場合のデータの戻し方を教えてください。 PCはXP Homeです。 宜しくお願い致します。

  • SSL対応フォルダからの、データ書き出しについて

    現在、外注で作成したHPを修正中です。 SSL非対応の登録フォーム(cgiで作成)からのデータは、別フォルダ(dataフォルダの)CSVファイルに書き込むようにしています。 これと同じ方法でSSL対応の登録フォーム(cgiで作成)からのデータについても、CSVに書き出したいのですが、やり方がわかりません。 SSL対応のファイルは、全てSSL非対応へのリンクについて、絶対パスで記述してあったので、 絶対パスで、CSVを指定しましたが、ダメでした。 SSL対応というくらいなので、無理なのでしょうか? それとも、SSLフォルダの中で完結すえば、OKなのでしょうか? どなたか、知識のある方、教えてください。 パスについては、下記のように構成しています。 |-SSL(SSL対応フォルダ) | |-cgi | |-WWW   |-cgi(SSL非対応)   |-data(SSL非対応)     |-**.csv(データ格納ファイル)

    • ベストアンサー
    • CGI
  • 【ファイルメーカーPro5.5】 指定のフォルダを開く

      当方看板屋なのですが、仕事の案件を管理するデータベースをファイルメーカーPro5.5(MacOS9.2)にて作成しています。 質問ですが、ファイルメーカーのデータベースから、その案件の製作データなどを格納したフォルダ(OS内のフォルダ)を開くというような操作をしたいのですが・・・ 1、ダイアログでフォルダを指定して、テキストフィールドにフォルダのパスを書き出す方法 2、書き出されたパスからフォルダを開く方法 を、それぞれ知りたいのですが、ご存知の方おられるでしょうか。 先日、別の質問(http://oshiete1.goo.ne.jp/qa2506230.html)にて、オブジェクトフィールドを使って画像データを開く方法を教えていただいたのですが、今度は同じようなことをフォルダでやれないかと考えまして・・・ ウインドウズなら「URLを開く」で、開くことは可能らしいのですが、Macで試してみましたができないみたいです。アップルスクリプトを使えば可能なような気がしてるのですが、当方、アップルスクリプトは勉強中でして、まだ実用するほどの知識がありません。 1のところで「ダイアログで指定」と書きましたが、入力が楽だろうと思ったからなんですが、別の方法でもかまいません。 ただ、パスを毎回手入力するのは避けたいです。(膨大な量なので) よろしくお願い致します。  

  • perlでファイルが作成できません

    初めて質問させていただきます。 perlに関しては素人でうまくいかず悩んでおります。 皆様のお知恵を拝借できればと思います。 linuxで下記のようにamezo.cgiからファイルを作りたいのですが、 ファイルを生成したい場所だけ作成することが出来ません。 amezo.cgiと同じフォルダや上位フォルダ(htmlフォルダ)にはhtmlファイルを作成できるのですが、 testbbsフォルダを指定したら生成できなくなってしまいます。 なんらかの環境変数なり指定する必要があるのでしょうか? ご教授よろしくお願いいたします。 html-------testbbs------ファイルを生成したい場所     |     |     -----cgi-bin-----amezo.cgi | .....

    • ベストアンサー
    • Perl
  • Tempフォルダー内のフォルダーとファイル

    インターネット一時ファイルの格納先をF:\Temp\Temporary Internet Files\にしています。 F:\Tempのフォルダーを開けると、Temporary Internet Filesと言うフォルダーはありません。 また、一切、ファイルもありません。 しかし、F:\Tempのフォルダーのプロパティーを開けると、それなりの容量のデータがあるのです。 隠しフォルダー、隠しファイルも表示にするに設定しても、何も出てきません。 これはいったい、どう言うことなのでしょうか? お手数をお掛けいたしますが、お教え下さい。

  • C# ファイル→バイナリ→ファイルの変換

    いつもお世話になっています。 只今、エクセルやワードなどのファイルをバイナリデータに変換し DBへ格納するプログラムを作成しています。 使用しているDBはSQLServerです バイナリデータに変換して格納することは出来ました ですが、そこから元のファイルに戻す方法が分かりません やりたいことは  1:バイナリデータを復元  2:ダウンロードする  3:ダウンロードすることなく開く の3つです 調べ方が悪いのか、全く見つからず困っています。 WebではなくWindowsフォームがベースのプログラムです サンプルや手順などがわかる方、よろしくお願いします。

専門家に質問してみよう