質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.35%

  • データベース

    901questions

    データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます

SNSやネットショッピングなどにおける検索機能の仕組みについて

受付中

回答 1

投稿

  • 評価
  • クリップ 0
  • VIEW 740

Turtle

score 36

表題に関して質問がございまして、投稿いたしました。

SNSやネットショッピングサイトなどで、個人のマイページや個々の商品上のすべての情報を検索可能にし、あらゆる面からそのページに飛ぶことができるという機能があるかと思いますが、その機能に関する質問でございます。

質問は3つございます。
1つ目が、検索対象である個々の情報はどこにあるのでしょうか。
ユーザーが持っている個々の端末に保管されているのか、もしくはインターネットのサーバ上に保管されているのでしょうか。

2つ目が、付随する形になってしまうのですがデータベースを保管する技術として、web上に保管する技術とユーザーの端末上に保管する技術の両方が存在するのでしょうか。
その技術があるのであれば、可能であれば技術の詳細の名前をお教えいただけると幸いでございます。
また、端末上に保管する技術に関して、存在するのであればそのデータの更新はどのように行われているのでしょうか。

3つ目が、アプリケーションに存在する情報を検索する機能を追加する際に必要になる技術についてなのですが、どのような技術が必要になるのでしょうか。現状あるjavaやpythonなどのプログラミング言語に関する知識でどうにかなるものなのでしょうか。

上記3点に関して、webアプリ、androidアプリ、iphoneアプリで違いがあるようでしたら、よろしければ、それぞれに関する情報をご教授いただければ幸いでございます。
不適切なご質問でしたら誠に申し訳ございません。また、一度に多くのご質問申し訳ございません。
プログラミング中で困っている現状でございます。
ご回答いただけると幸いでございます。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

+1

1つ目が、検索対象である個々の情報はどこにあるのでしょうか。

通常、「インターネットのサーバ上に保管」されています。


データベースを保管する技術として、web上に保管する技術

そのままデータベースやサーバの管理というジャンルになります。
インフラ(エンジニア)」などと言ったり、いろいろな呼び方があります。
今流行の「クラウド」とか、プラットフォームで呼んだりもします。

端末上に保管する技術に関して、
そのデータの更新はどのように行われているのでしょうか。

画像はサーバにありますが、それがクライアント側のブラウザで見れる、
ということは端末側にもデータは来ています。それはネットワーク
は普通そうなっていて、HTMLのみのサイトを閲覧してもそうです。

端末側にデータを持ってこなければ、単純にないものは見れませんから。
ユーザ側で見られるデータというのは、基本的にダウンロードしています。
キャッシュなどユーザ側に残す仕組みもありますが、それも初回はDLして作成します。


アプリケーションに存在する情報を検索する機能を追加する際に必要になる技術

検索アルゴリズム」というジャンルになります。

たとえば、Webサービスに全文検索を導入する際は、
検索用のインデックスを作成しておいたりします。

検索アルゴリズムは自然言語処理に近い分野です。
なぜなら、ショッピングサイトにしろSNSにしろ、
検索対象の多くは自然言語(日本語など)で書かれているからです。

現状あるjavaやpythonなどの
プログラミング言語に関する知識でどうにかなるものなのでしょうか

結局、検索などを実装する必要があるので、言語の知識は基本になります。
しかし、アルゴリズムを自力で発見するのは難しいです。普通は学習します。

言語の基本知識も必要、アルゴリズムの応用知識も必要、結局どっちも必要です。


webアプリ、androidアプリ、iphoneアプリで違い

プラットフォームが違えば、JavaScript、Java、Swiftなど、
開発言語は違ってきます。Xamarinなどクロスプラットフォームの
フレームワークもありますが、それ自体の習得はやはり必要です。

その一方で、検索などのアルゴリズムは変わりません
日本語でも英語でも、数学の構造は変わらないようなものです。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.35%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

同じタグがついた質問を見る

  • データベース

    901questions

    データベースとは、データの集合体を指します。また、そのデータの集合体の共用を可能にするシステムの意味を含めます