• ベストアンサー

検索システムでDBを使用しない物について

商品検索、レビュー検索、仕事検索と 多くの検索サイトがあると思います。 DBを使用しないで そのようなサイトを作成した場合 情報の管理は、手入力になるのでしょうか? (CSVとかも可能かとは思いますが…) やはり、普通検索サイトの構築には DBを使用すると考えてもよいのでしょうか?

  • MySQL
  • 回答数4
  • ありがとう数4

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

  • ベストアンサー
  • JaneDue
  • ベストアンサー率75% (263/350)
回答No.4

たぶんサイト内でのデータ検索のことかと思いますので、その前提で書きますね。 >普通検索サイトの構築にはDBを使用すると考えてもよいのでしょうか? ですね。もちろんMysqlなど使わずにcsv等テキストファイルでも可能ではあります。 ただし、それだと閲覧者が検索するたびに、PHP等のプログラム側でファイルから一行づつデータを読込・分解し、たとえば商品検索なら 1万円以下かどうか、カテゴリはどうかなど確認して、該当するデータを抽出するプログラムを書く必要があります。 また、データが数百件程度ならよいのですが、数千~などとなれば、処理に時間がかかり、「なかなか検索結果が表示されない」ということになります。 Mysql等のRDBMSはデータを抽出するのが専門ですから 例えば「東京都内で、自給1,500円以上の事務または営業職」などはプログラム側ではたった1文で済みます。早くて簡単、しかも将来への変更にも適応しやすいですから使わない手はないですよ。 >情報の管理は、手入力になるのでしょうか? 手入力だと書き間違いがありますから、DBかcsvかに限らず、通常は管理用パネルを作成し、 そこで商品登録や削除などを行います。

ShiftTail
質問者

お礼

>Mysql等のRDBMSはデータを抽出するのが専門ですから 例えば「東京都内で、自給1,500円以上の事務または営業職」などはプログラム側ではたった1文で済みます。早くて簡単、しかも将来への変更にも適応しやすいですから使わない手はないですよ。 DBを使うと1行で済むのはわかるのですが、 >使わない手はないですよ。 やっぱり使った方がいいという意見が聞けてほっとしました。 情報ありがとうございました。

その他の回答 (3)

  • MARU4812
  • ベストアンサー率43% (196/452)
回答No.3

「検索サイト」って言ってしまうとNo2さんの言うようなロボットを使って サイト管理者(管理会社)が検索用のデータを用意するイメージが強くなり ますね。 会員制の「転職サイト」とか「オークションサイト」ではユーザーが 定型フォームで情報を登録しますよね?これは「検索サイト」とは 言わないですが、質問文を読むとこっち寄りのように聞こえます。 結局、サイトの仕組み、用途によって使われる技術が変わるのに そこを玉石混合で捉えているのでは、答えも出ないと思います。 誰がどんなデータを入力するのか(用意できるのか)によって効率の いいものを考える事になるでしょう。必ず何かを使わないといけない とか、使われているとか、本末転倒な考え方だと思います。 未だ世の中に存在しない技術を自分で考え出して、それが効率が いいことだってあるのだから、この質問自体ナンセンスに感じます。

ShiftTail
質問者

お礼

ナンセンスでですか…。 わかりました。 ご教授ありがとうございました。

回答No.2

No1さんの言うとおり。質問者さんは、ちょっと誤解した考え方をお持ちのようです。 まず、検索サイトでは、ロボット http://search.yahoo.co.jp/search?b=1&n=10&ei=UTF-8&fr=ie8sc&p=%E6%A4%9C%E7%B4%A2%E3%82%B5%E3%82%A4%E3%83%88%E3%80%80%E3%83%9C%E3%83%83%E3%83%88%E3%81%A8%E3%81%AF が存在し、テキスト=>インデックス作成 となります。これらをCSVとして扱うか、あなたがDBと呼んでいる、 RDBMS のMS部分ですね、そこに登録して使うかは、単なる設計思想なので、どうでもいいことです。 しかし、どちらを選んでも、使用するのが検索エンジンです。RDBMSにも検索エンジンなるものがあり、同じように検索します。 たとえば、CSVをファイルとして読み込んで、C++とか, .Netとかの検索関数<=文字列検索で、検索したとします。 その仕組み自体を検索エンジンと言うことになります。 いずれにしても、どちらもインデックスの作成と、その効率化が、速度と正確さになり、その最適化が鍵をにぎっています。 なので、DBを使うか、そうでない方法をとまよわれているなら、 インデックスの 登録、更新、削除 等の操作性とか、可用性、冗長性、を考えると、RDBMSで最初から完璧に仕上がっている物を使うか、それらの仕組みを自作するかだけの違いです。 Googleは、そのへんの部分で、最新のものを開発し、成功したわけです。つまり、検索エンジンを開発したわけです。 これは、RDBMSにも昔からDBエンジンとして呼ばれていたものです。 ちなみに、HTMLもXMLもDBとして使えます(とすればDBとよんでいい)。それらから、テキストノードだけ抽出して、2番目にヒットした文字列は? なんて言う物を作ったとすれば、それが検索エンジンです。MS DOMを、VBSなどのスクリプトエンジンで作っても、C++で作っても同じです。 ということで、 >構築にはDBを使用すると考えてもよいのでしょうか? の回答は、そうです。しかし、検索エンジンは汎用の物をつかうか、独自開発か、市販のRDBMS又は、DBMSのものを使うかは、人、物、金、コンセプト次第ということです。

ShiftTail
質問者

お礼

>>構築にはDBを使用すると考えてもよいのでしょうか? >の回答は、そうです。しかし、検索エンジンは汎用の物をつかうか、独自開発か、市販のRDBMS又は、DBMSのものを使うかは、人、物、金、コンセプト次第ということです。 これを確認させていただけただけでも助かりました。 情報ありがとうございました。

回答No.1

たぶんDBとして想像されているのは、RDBMSのことだと思いますが、 データを蓄積したCSVもDBのひとつです。 >> やはり、普通検索サイトの構築には >> DBを使用すると考えてもよいのでしょうか? データは規則性を持っていたほうが扱いやすいので、自然とそうなります。

ShiftTail
質問者

お礼

情報ありがとうございます。 >> DBを使用すると考えてもよいのでしょうか? >データは規則性を持っていたほうが扱いやすいので、自然とそうなります。 やはりそうなのですね。 参考になりました。 ありがとうございました。

関連するQ&A

  • DBをマーケティングに使いたい

    現在ネットビジネスをしております 顧客情報を構築したいのでDBの導入を検討しております 今後展開していきたいDBの導入方法ですが お客さんが申し込みをする際、(クレジット決済) フォームに個人情報を入力してもらっております その際、フォームに入力された情報をDBに書き込みつつ、 クレジット決済も同時に行い、 後ほどDBにアクセスし、指定する条件に合う顧客情報を CSVで書き出すという機能が欲しいです このようなDBは実現可能ではありますが これを一から作るとなると数十万円の費用がかかります どうにか費用を安く抑えたいのですが 何か良いアイディアはありますでしょうか? あるいはこのようなシステムを販売しているサービスなどは ありますでしょうか? 既にこのようなシステムが構築されていて、 それが販売されていれば一から作るよりはずっと安くなると思いますので よろしくお願いします

    • ベストアンサー
    • MySQL
  • 検索システムについて

    通販サイト:amazon、楽天 転職サイト:doda、リクナビ 等 ユーザーの入力された条件をもとに、適切なページを表示させる。 上記サイトはいずれも可能だと思っております。 私は「ユーザーの入力された情報をもとに、適切なページを表示させるWEBシステム」を作成するには php等で作られているのではないかと思っておりました。 よって、今回は先程の上記サイト4つで、 「まずphpファイルが使用されているか?確認したいと思いました。 (aタグの href。formタグのaction属性のリンク先の確認) ところが、 dodaにしろ。リクナビにしろ「php」というファイルをソースで探そうとしたのですが 見つかりませんでした。 また、色々なアドレスからも情報を得れないかと確認しましたが、 「http://rikunabi-next.yahoo.co.jp/kanto/?vos=drnnrikunabitop00000013 リクナビ」 「http://doda.jp/DodaFront/View/JobSearchList.action?op=1&so=20&tp=1&pic=1&ss=1&ds=0 DODA」 とのことで、ファイル名の拡張子がない? htmlやphpで終わっていないことにも気づきました。 質問1: 一体、最近のユーザーが入力した情報をもとに、動的なページを作り出すシステムは 「ある部分を見れば、php(別言語も含む)で作られている。」 とか判別することは不可能なのでしょうか? (DODAは、フレームワークみたいな感じがするのですが…) 例) 「http://www.goo-net.com/php/search/bodytype_search.php (クーペ車検索)」 このように、アドレスの最後にphpとついていれば、検索システムに私もphpを使ってるんだな」 というのはわかるのですが…。 質問2: あまり私は情報を持っておらず、webシステムを作成し、DBを連携させるには、 「phpとDB」しか知りません。  php以外の言語でも、DBと連携させWEBシステムを作ることの可能なものがあれば教えて頂けないでしょうか? (リクナビは、JSP?) 以上よろしくお願いします。

    • ベストアンサー
    • PHP
  • JavaScriptで検索

    html+JavaScriptで簡単な検索システムの構築 (CDROMコンテンツ)考えております。 JavaScriptのみで構築するため、サーバサイド スクリプトもDBも使用しません。 (ajaxでサーバと通信しない感じです。) 例えば商品名、金額等で検索できるシステムを 想定するとします。 DBとしてデータファイル作成し、JavaScriptでその ファイルを開き検索するという方式しか思いつかない のですが、このやり方が一般的なのでしょうか。 ご存知の方、おられましたらご教授下さい。

  • ASCCESSのDB検索について

    今 フォームでカード型DBを作成し コード呼び出し機能をつけて編集作業をしたいのですが、 やり方を教えて下さい 現在は編集→検索→入力の順でやっていますが 検索画面が出てくるとうれしいです。

  • PHP 検索結果のCSVダウンロード

    PHPを使用しています。 管理画面で検索結果を「ダウンロード」ボタン押下で CSV出力させたいのですが、 一度表示させた「検索結果」のみを後からCSV出力させるロジックが不明で困っております。 例えば、ボタン押下で入力フォームの内容でもう一度DBを検索させる? などが 考えられるのですが・・・

    • ベストアンサー
    • PHP
  • 検索サイトの作り方

    MIDI専用検索サイトを作るには、何が必要なのでしょうか?今私が所有しているのは、プロバイダと契約した普通のHP容量ですが、HTMLの記載だけで、そのような検索サイトが作れるものなのでしょか?それとも他に必要なものがあるとしたら、何が必要なのでしょうか?(自分でDBを構築してデータを入力する必要性はやはりあるのでしょうか?)

    • ベストアンサー
    • HTML
  • 携帯で使用できる検索システム

    自社サイトで、携帯サイトを構築しております。 ですが、クライアントの要望で、絞り込みでプルダウン式でジャンプできる、検索システムを作らなければいけません。 まことに恥ずかしい話なのですが、サイトを3キャリア表示まではできたものの、検索システムが作成できず、大変こまっております。 とほほのwww?でがんばってみましたが、携帯サイトにも表示ができるのか?が問題です。 どなたか、親切な方がいらっしゃいましたら、ご伝授お願いします。 できれば、PHPが好ましいです。フリーワード検索はいりません。 教えていただけませんでしょうか?本当に困っています。

    • 締切済み
    • PHP
  • DBソフト比較

    初めまして、先日突然に上司からmobile対応のwebサイトを構築しろとの業務命令が下り、慌てて勉強を始めました。APIとして「JAVA、XML」を使用して開発することは決定したのですが、DBソフトに対する知識がなく困っております。「sybase、oracle、SQLserver、DB2」のメリット、デメリットをご教授いただけないでしょうか。 サイトのコンセプトとしては、携帯端末対応の商品受発注及び顧客管理システムがメインとなります。 また、上記以外でお勧めのDBソフトがあればぜひ教えてください。 宜しくお願い致します。

  • Lotus NotesのDBに外部からアクセスしたい

    Lotus Notes R6.5(Windows)で商品情報を管理していますが、このDBの情報の一部をMy SQL(これから構築)に毎日一回コピーしたいと考えています。しかしNotesのDBに外部アプリケーションからアクセスする方法が分からず困っております。どのような方法があるか教えていただけないでしょうか。 よろしくお願いします。

  • PHP 検索 システム with CSV file 

    いつもお世話になっています。 早速ですが、 現在、データベース(DB)を使用しないで、PHPとCSVファイルで簡易データベースを作成しています。 (DBは、それだけでも使い方を覚える必要があり、簡易的に作るにはCSVが良いと考えました。) 一通り、CSVファイルの読み込み、保存をするプログラムを完成させました。 (参考 http://ponk.jp/php_file/index.php?page=5) が、ここで検索機能をつけたいと思い、いろいろ調べていました。 しかし、DBを用いる方法は見つかりますが、なかなかCSVファイルを用いた検索方法がみつかりません。 現在想定しているのは、CSVファイルからデータ(table)を読み込み、その中から検索ワードにヒットするデータ(Column)を見つけるといった感じです。 簡易的には、 <?php $list = array('a','b','c','d','e','f'); $search = "d"; foreach ($list as $value){ if ($search == $value) {print "発見!";} } ?> という感じで作れましたが、今想定しているのは、 <?php $list = array('abcd','1234','xyz','日本'); $search = "y"; foreach ($list as $value){ : : (検索方法) : print "xyz を 発見!"; } ?> という感じです。 なにやら、DBを用いる場合では直接検索できる方法があるみたいですが、DBを用いると今後プログラム引渡しを行う際に、PHP以外にもやることが増えてしまうため、また、規模も小さいため、CSVファイルで済ませることができないかと考えています。 ご教授よろしくお願いします。

    • ベストアンサー
    • PHP