パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

データをすべてファイル名扱いにして高速検索を実現?」記事へのコメント

  • by Anonymous Coward on 2008年01月21日 12時31分 (#1283877)
    コンピュータ上のデータ整理をしたいと思って、見積もりを取ったら
    ・あるメーカーは数千万円
    ・HOWSは数百万
    の回答があったので、同じことが出来るのであれば安いほうがよいから発注した
    というのがクライアント側のアクションでは。
    そして、この方法がうまくいったら数千万円コストダウンできて万歳と。

    詳しい見積もりしようが分からないので何とも言えないかもしれないけど、この方法の欠点ってどこにあるのでしょう。
    ・Microsoftが推奨してない:でも問題なく動いてるから
    ・Windowsのバージョンアップ or アップデートに対応できない:そんなこと普通では
    ・スケーラビリティがない:普通の方法に比べて1桁安いので、仕様追加してもそんなに高くつかないだろう
    • by okky (2487) on 2008年01月21日 13時37分 (#1283914) ホームページ 日記
      ・データを見つけるのと、ファイルを見つけるのが等価になってしまっている。

      に尽きるのではないかと。

      1) Security 上の問題がある。
        普通なら「ファイルが open できなきゃ安全」なはずのデータが全部曝されている。何しろ、ファイル名を変更できればデータ変更は出来るわけですから。

      2) PATH 名検索が死ぬほど遅いと思う。
        例えば、データ中に "fjの教祖様" が入っているレコードが欲しければ、
        "*fjの教祖様*" という PATH を探すことになるのだろう。が、
        それは結局 O(n) の検索になるんじゃないのか?

        完全一致ならば HASH とか NTFS の path 名が平衡木管理になっているのとかで
        DBMSでindex を張った状態と同じになるのだろうが、任意の
        「真ん中のデータ」が一致しているのを探すのに必要な処理は、
        馬鹿正直なサーチぐらいしか実装されていないと思うんだ、NTFSには。

        これは根本原理に問題があると言うことなので、救いがたい。

      3) Transaction 処理ができないのでは…
        いや、これは VB で書いている部分で頑張るのかもしれないが…。
        重たそうだな。

      4) で、実際のところ、ファイルを open して中身を検索して close して…を繰り返すのとどっちが早いのさ??!
        ここで比較するべきなのは、ファイルを open/close する部分を
        非同期 システムコールで実装して、同時に複数走らせた場合。
        旧来の同期型 open/close だと一度に1つのファイルしか開けない/閉じれない
        のでそこが重たくなるが…。うーむ。本当に早いか?? これ…

      と言うわけで、大いに疑問だ。DBMSの事もファイルシステムの事も本質的に判っているとは思えない…。
      --
      fjの教祖様
      親コメント
      • 画期的な (スコア:3, すばらしい洞察)

        by pam (35548) on 2008年01月21日 14時45分 (#1283941)
        情報漏洩の手段
        親コメント
      • Re:安けりゃよい (スコア:2, 参考になる)

        by Stealth (5277) on 2008年01月21日 18時38分 (#1284104)

        んー、どうでしょうね。

        1) Security 上の問題がある。

        ACL でフォルダに対して適切な制限が与えられていれば、ディレクトリリストの一覧は取れません。

        ただ、OS 側がインデックス化しているためインデックスの問い合わせ権限があると情報が取れる可能性はあり。

        2) PATH 名検索が死ぬほど遅いと思う。

        そこは Windows Index Search が頑張るところなので。

        3) Transaction 処理ができないのでは…

        それは用途が違うからどうでもいいんです。

        4) で、実際のところ、ファイルを open して中身を検索して close して…を繰り返すのとどっちが早いのさ??!

        これって locate や find と grep のどっちが早いの? って話ですよ。

        親コメント
    • Re:安けりゃよい (スコア:2, すばらしい洞察)

      by Offtopics (34135) on 2008年01月21日 13時09分 (#1283899)
      例で出てる中で言うと、スケーラビリティは後からはどうしようもない場合が多く、仕様追加という話ではないってのはあると思う。
      親コメント

ソースを見ろ -- ある4桁UID

処理中...