Skip to Content
Neo4j: The Definitive Guide
book

Neo4j: The Definitive Guide

by Luanne Misquitta, Christophe Willemsen
July 2025
Intermediate to advanced
410 pages
6h 21m
Japanese
O'Reilly Media, Inc.
Content preview from Neo4j: The Definitive Guide

第7章 検索 検索

この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com

冬休みが近づいてきた。ElectricHarmonyのあなたのチームは、ユーザのエンゲージメントを促進するために、12月いっぱいのチャレンジを実施することに決めた。ブレーンストーミングのワークショップを開き、ベストアイデアに投票する。今年の優勝アイデアは、30日間の歌のチャレンジである(図7-1を参照)!

図7-1. 30日間の楽曲チャレンジ

このチャレンジのゴールは些細なもので、毎日テーマタグがあり、ユーザはそれに関連した曲をソーシャルメディアで共有する。チャレンジは楽しいが、曲の意味は人によって違うので、チームはユーザの個性を理解することを望んでいる。また、"子供時代 "などのタグが、音楽との個人的な関連性を明らかにすることも興味深い。ある人は、レッド・ツェッペリンの曲をそのようにタグ付けするかもしれないが、それはその曲がいつリリースされたかに関係なく、彼らの初期の思い出の一部だったからだ。

このアイデアをテストするために、あなたは社内でチャレンジを実行することにした。すぐに、データベース内の楽曲発見に関連するいくつかの問題に遭遇する。例えば、次のようなことだ:

  • heaven のように部分的なトラック名を検索しても、"天国への階段 "は見つからない。

  • 英語の方言の違い:colour を検索しても、color は発見できない。

  • 検索は大文字と小文字を区別するので、ユーザはトラック名がデータベースにどのように保存されているかを正確に知る必要がある。最初の文字は大文字か?小文字?すべて小文字?多くのバリエーションが考えられる!

この章では、検索結果の関連性を最大化するために、テキストデータをどのようにストアし、クエリするかについて、その全容を学ぶ。なぜなら、単純なテキスト入力に基づいてユーザに正確で関連性のある結果をプロバイダーすることは、非常に挑戦的であり、非常にやりがいのある取り組みだからである。この章では、検索に使われる様々な種類のデータ構造とアルゴリズム、そしてそれらが強力な検索システムにどのような付加価値を与えるかについて説明する。本書はNeo4jに関するものであるが、コンテンツの多くはSolrやElasticsearchのようなApache Luceneベースの検索技術の基礎となるものであるため、これらの技術のユーザはここでおなじみの概念を見つけることができるだろう。

検索とは何か?

レコード店にいる自分を思い浮かべてほしい。ラックにはそれぞれアルファベットが書かれていて、そのアルファベットで始まる名前のアーティストのレコードが入っていることを示している。あなたは "letter "の "L "ラックに向かい、お気に入りのバンドを発見するまでレコードを探し始める:レッド・ツェッペリンだ。

この一連の体験は、一種の検索体験である!クエリを持って店に入ったとしよう。店には効率よく発見できるようなシステムがある。目的のレコードを発見するか、手ぶらで帰るかだ。もしそのアーティストを発見したら、同じバンドの他のアルバムに気づくかもしれない。

テキスト

どのような要素を検索可能にしたいのか?検索とは対照的に、すべてのテキストが検索の対象になるわけではない。あなたのチームが探しているのは、ノードやリレーションシップのプロパティとして保存されているテキストである。対照的に、グラフ内のトラック識別子は、おそらく検索可能にしたいものではないだろう。ユーザは、検索バーに3文字か4文字だけ入力して、 ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Elasticsearch in Action, Second Edition

Elasticsearch in Action, Second Edition

Madhusudhan Konda
Fluent Python ―Pythonicな思考とコーディング手法

Fluent Python ―Pythonicな思考とコーディング手法

Luciano Ramalho, 豊沢 聡, 桑井 博之, 梶原 玲子

Publisher Resources

ISBN: 9798341664760