SlideShare una empresa de Scribd logo
1 de 22
株式会社シーマーク
  大谷 純
u  所属:㈱シーマーク
u  氏名:大谷 純

u  twitter:@johtani

u  ブログ:
    http://johtani.jugem.jp

u  「Apache Solr入門」
     の著者の一人
u  lucene-gosenのcommitter
u    全文検索とは

u    Solrの各種機能

u    Luceneにまつわるエコシステム
u    全文検索とは

u    Solrの各種機能

u    Luceneにまつわるエコシステム
全文検索(ぜんぶんけんさく、Full text
search)とは、コンピュータにおいて、複数の文
書(ファイル)から特定の文字列を検索すること。
「ファイル名検索」や「単一ファイル内の文字列
検索」と異なり、「複数文書にまたがって、文書
に含まれる全文を対象とした検索」という意味で
使用される。
                  (Wikipediaより)
検索クエリ	
                    検索エンジン	
          	



                     インデックス	
検索結果
u    Solr:Lucene(全文検索ライブラリ)を活用した検
      索エンジンサーバ

u    ApacheプロジェクトのOSS

u    Javaで実装

u    検索補助のための機能がいっぱい

u    転置インデックス方式による全文検索
検索クエリ(HTTPリクエスト)	
                      Solr	
        	



                     インデックス	
検索結果(HTTPレスポンス)
1	
         カツオはサザエの弟
                                                 対象とする文章(ドキュメント)に
               2	
         サザエはワカメの姉	
           IDを付与	




カツオ	
 1	
 は	
 1	
 サザエ	
 1	
 の 1	
 弟 1	
                                                 文章を単語に分割し、
サザエ	
 2	
 は	
 2	
 ワカメ	
        2	
 の 2	
 姉 2	
   単語:ドキュメントIDと整理	




         の	
         1	
 2	
   ワカメ	
     2	
                                                 単語をキー、ドキュメントIDの
         は	
         1	
 2	
      弟      1	
     配列を値とする表を作成
                                                   =
     カツオ	
           1	
          姉      2	
     転置インデックス	
     サザエ	
           1	
 2
転置インデックス	

                  の	
   1	
 2	
検索クエリ	
                                検索結果	
                  は	
   1	
 2	
カツオ	
               カツオ	
    1	
              1	
 AND	
    	
                      	
               サザエ	
    1	
 2	
サザエ	
               ワカメ	
    2	

                  弟     1	

                  姉     2
u    フィールド:1転置インデックスの定義

u    スキーマ:フィールドを定義する設定

Solrは大きな1つのテーブル(スキーマ)に複数
のカラム(フィールド)
u    全文検索とは

u    Solrの各種機能

u    Luceneにまつわるエコシステム
u    AND、OR、NOTによる検索

u    範囲検索

u    スコアによるソート

u    特定フィールドによるソート
u    検索結果の分類の表示
      絞り込み検索の候補として表示

u    複数のファセットを1回の検索で
      取得可能

u    項目ごとのドキュメント数も取得
u    検索キーワードがどの部分にヒットしたか

u    検索結果の要約表示

u    キーワードの強調表示
u    マスタ/スレーブ構成

u    検索の負荷を分散

                                                検索	
                                      slave	
      登録・更新	

                master	
   レプリケート	
                                                検索	
                                      slave
u    複数のインデックスを1つのインデックスとして検索

u    大量データに対してスケールアウトで対応可能


                              Solr	


       検索	
   Solr	
              index	
                       検索	
                              Solr	

                                  index
u    スペルチェック(SpellCheck)

u    レコメンド(MoreLikeThis)

u    スコアブースト(QueryElevation)
u    マルチコア

u    類義語辞書(Synonym)

u    各種言語向け機能
      言語判定、各言語向けのTokenizer
u    全文検索とは

u    Solrの各種機能

u    Luceneにまつわるエコシステム
u    Luceneは様々なOSSに利用されている
      u    Solr(検索エンジンサーバ)、Nutch(クローラ+
            検索エンジン)


u    Luceneを発端にHadoopが作られた
      u    Nutchの仕組みを大規模対応するために実装さ
            れたのがHadoop
オープンソースソフトウェア検索サーバ Solr入門

Más contenido relacionado

Similar a オープンソースソフトウェア検索サーバ Solr入門

全文検索In着うた配信サービス
全文検索In着うた配信サービス全文検索In着うた配信サービス
全文検索In着うた配信サービス
techtalkdwango
 
2012-08-01_平成24年度学術ポータル担当者研修講義
2012-08-01_平成24年度学術ポータル担当者研修講義2012-08-01_平成24年度学術ポータル担当者研修講義
2012-08-01_平成24年度学術ポータル担当者研修講義
Yuka Egusa
 

Similar a オープンソースソフトウェア検索サーバ Solr入門 (9)

Elasticsearch入門 pyfes 201207
Elasticsearch入門 pyfes 201207Elasticsearch入門 pyfes 201207
Elasticsearch入門 pyfes 201207
 
Search on AWS - IVS CTO Night and Day 2016 Spring
Search on AWS - IVS CTO Night and Day 2016 SpringSearch on AWS - IVS CTO Night and Day 2016 Spring
Search on AWS - IVS CTO Night and Day 2016 Spring
 
CROSS 2015 全文検索群雄割拠
CROSS 2015 全文検索群雄割拠CROSS 2015 全文検索群雄割拠
CROSS 2015 全文検索群雄割拠
 
名古屋検索勉強会#3
名古屋検索勉強会#3名古屋検索勉強会#3
名古屋検索勉強会#3
 
全文検索In着うた配信サービス
全文検索In着うた配信サービス全文検索In着うた配信サービス
全文検索In着うた配信サービス
 
2012-08-01_平成24年度学術ポータル担当者研修講義
2012-08-01_平成24年度学術ポータル担当者研修講義2012-08-01_平成24年度学術ポータル担当者研修講義
2012-08-01_平成24年度学術ポータル担当者研修講義
 
識別子とスキーマ
識別子とスキーマ識別子とスキーマ
識別子とスキーマ
 
Azure Search 言語処理関連機能 〜 アナライザー、検索クエリー、辞書、& ランキング, etc
Azure Search 言語処理関連機能 〜 アナライザー、検索クエリー、辞書、& ランキング, etcAzure Search 言語処理関連機能 〜 アナライザー、検索クエリー、辞書、& ランキング, etc
Azure Search 言語処理関連機能 〜 アナライザー、検索クエリー、辞書、& ランキング, etc
 
AWS Black Belt Tech Webinar 2016 〜 Amazon CloudSearch & Amazon Elasticsearch ...
AWS Black Belt Tech Webinar 2016 〜 Amazon CloudSearch & Amazon Elasticsearch ...AWS Black Belt Tech Webinar 2016 〜 Amazon CloudSearch & Amazon Elasticsearch ...
AWS Black Belt Tech Webinar 2016 〜 Amazon CloudSearch & Amazon Elasticsearch ...
 

Más de Open Source Software Association of Japan

「コーポレートサイトにちょうどいい」baserCMS 生い立ちと今 --- 大切にしているポリシーをみなさんにお伝えします ---
「コーポレートサイトにちょうどいい」baserCMS 生い立ちと今 --- 大切にしているポリシーをみなさんにお伝えします ---「コーポレートサイトにちょうどいい」baserCMS 生い立ちと今 --- 大切にしているポリシーをみなさんにお伝えします ---
「コーポレートサイトにちょうどいい」baserCMS 生い立ちと今 --- 大切にしているポリシーをみなさんにお伝えします ---
Open Source Software Association of Japan
 

Más de Open Source Software Association of Japan (20)

オープンソースがエンドユーザーイニシアティブをもたらす!? — 「シラサギ」使ったらこんなこともあんなことも —
オープンソースがエンドユーザーイニシアティブをもたらす!? — 「シラサギ」使ったらこんなこともあんなことも —オープンソースがエンドユーザーイニシアティブをもたらす!? — 「シラサギ」使ったらこんなこともあんなことも —
オープンソースがエンドユーザーイニシアティブをもたらす!? — 「シラサギ」使ったらこんなこともあんなことも —
 
オープンソースの来し方行く末@OSC 2017 Hokkaido
オープンソースの来し方行く末@OSC 2017 Hokkaidoオープンソースの来し方行く末@OSC 2017 Hokkaido
オープンソースの来し方行く末@OSC 2017 Hokkaido
 
「コーポレートサイトにちょうどいい」baserCMS 生い立ちと今 --- 大切にしているポリシーをみなさんにお伝えします ---
「コーポレートサイトにちょうどいい」baserCMS 生い立ちと今 --- 大切にしているポリシーをみなさんにお伝えします ---「コーポレートサイトにちょうどいい」baserCMS 生い立ちと今 --- 大切にしているポリシーをみなさんにお伝えします ---
「コーポレートサイトにちょうどいい」baserCMS 生い立ちと今 --- 大切にしているポリシーをみなさんにお伝えします ---
 
オープンソースの来し方行末@OSC 2017 Osaka
オープンソースの来し方行末@OSC 2017 Osakaオープンソースの来し方行末@OSC 2017 Osaka
オープンソースの来し方行末@OSC 2017 Osaka
 
オープンソースの来し方行く末@OSC 2016 Tokyo/Fall
オープンソースの来し方行く末@OSC 2016 Tokyo/Fallオープンソースの来し方行く末@OSC 2016 Tokyo/Fall
オープンソースの来し方行く末@OSC 2016 Tokyo/Fall
 
オープンソースの来し方行く末@OSC 2016 Nagaoka
オープンソースの来し方行く末@OSC 2016 Nagaokaオープンソースの来し方行く末@OSC 2016 Nagaoka
オープンソースの来し方行く末@OSC 2016 Nagaoka
 
オープンソースの来し方行く末@OSC 2016 Okinawa
オープンソースの来し方行く末@OSC 2016 Okinawaオープンソースの来し方行く末@OSC 2016 Okinawa
オープンソースの来し方行く末@OSC 2016 Okinawa
 
オープンソースの来し方行く末@OSC 2016 Hokkaido
オープンソースの来し方行く末@OSC 2016 Hokkaidoオープンソースの来し方行く末@OSC 2016 Hokkaido
オープンソースの来し方行く末@OSC 2016 Hokkaido
 
振り返ってみようOSS
振り返ってみようOSS振り返ってみようOSS
振り返ってみようOSS
 
もういちどOSSのことを思い出してみよう
もういちどOSSのことを思い出してみようもういちどOSSのことを思い出してみよう
もういちどOSSのことを思い出してみよう
 
日本発の日本語全文検索システム – Namazu を美味しく Kabayaki にするためにしたあれこれ
日本発の日本語全文検索システム – Namazu を美味しく Kabayaki にするためにしたあれこれ日本発の日本語全文検索システム – Namazu を美味しく Kabayaki にするためにしたあれこれ
日本発の日本語全文検索システム – Namazu を美味しく Kabayaki にするためにしたあれこれ
 
上海OSS事情
上海OSS事情上海OSS事情
上海OSS事情
 
コモン・オープンソース 10
コモン・オープンソース 10コモン・オープンソース 10
コモン・オープンソース 10
 
コモンパラダイムシステムのご紹介
コモンパラダイムシステムのご紹介コモンパラダイムシステムのご紹介
コモンパラダイムシステムのご紹介
 
コモンパラダイムシステム(Common Paradigm - COPAS)のご紹介
コモンパラダイムシステム(Common Paradigm - COPAS)のご紹介コモンパラダイムシステム(Common Paradigm - COPAS)のご紹介
コモンパラダイムシステム(Common Paradigm - COPAS)のご紹介
 
自由な地図をみんなで作るOpenStreetMap
自由な地図をみんなで作るOpenStreetMap自由な地図をみんなで作るOpenStreetMap
自由な地図をみんなで作るOpenStreetMap
 
オープンソースで開くビッグデータの扉
オープンソースで開くビッグデータの扉オープンソースで開くビッグデータの扉
オープンソースで開くビッグデータの扉
 
MySQLとオープンソースビジネスの10年、そして未来へ
MySQLとオープンソースビジネスの10年、そして未来へMySQLとオープンソースビジネスの10年、そして未来へ
MySQLとオープンソースビジネスの10年、そして未来へ
 
OSSで構築した被災者管理システム
OSSで構築した被災者管理システムOSSで構築した被災者管理システム
OSSで構築した被災者管理システム
 
A dempiereビジネスと団体設立の必要性
A dempiereビジネスと団体設立の必要性A dempiereビジネスと団体設立の必要性
A dempiereビジネスと団体設立の必要性
 

オープンソースソフトウェア検索サーバ Solr入門

  • 2. u  所属:㈱シーマーク u  氏名:大谷 純 u  twitter:@johtani u  ブログ: http://johtani.jugem.jp u  「Apache Solr入門」  の著者の一人 u  lucene-gosenのcommitter
  • 3. u  全文検索とは u  Solrの各種機能 u  Luceneにまつわるエコシステム
  • 4. u  全文検索とは u  Solrの各種機能 u  Luceneにまつわるエコシステム
  • 6. 検索クエリ 検索エンジン インデックス 検索結果
  • 7. u  Solr:Lucene(全文検索ライブラリ)を活用した検 索エンジンサーバ u  ApacheプロジェクトのOSS u  Javaで実装 u  検索補助のための機能がいっぱい u  転置インデックス方式による全文検索
  • 8. 検索クエリ(HTTPリクエスト) Solr インデックス 検索結果(HTTPレスポンス)
  • 9. 1 カツオはサザエの弟 対象とする文章(ドキュメント)に 2 サザエはワカメの姉 IDを付与 カツオ 1 は 1 サザエ 1 の 1 弟 1 文章を単語に分割し、 サザエ 2 は 2 ワカメ 2 の 2 姉 2 単語:ドキュメントIDと整理 の 1 2 ワカメ 2 単語をキー、ドキュメントIDの は 1 2 弟 1 配列を値とする表を作成   = カツオ 1 姉 2 転置インデックス サザエ 1 2
  • 10. 転置インデックス の 1 2 検索クエリ 検索結果 は 1 2 カツオ カツオ 1 1 AND サザエ 1 2 サザエ ワカメ 2 弟 1 姉 2
  • 11. u  フィールド:1転置インデックスの定義 u  スキーマ:フィールドを定義する設定 Solrは大きな1つのテーブル(スキーマ)に複数 のカラム(フィールド)
  • 12. u  全文検索とは u  Solrの各種機能 u  Luceneにまつわるエコシステム
  • 13. u  AND、OR、NOTによる検索 u  範囲検索 u  スコアによるソート u  特定フィールドによるソート
  • 14. u  検索結果の分類の表示 絞り込み検索の候補として表示 u  複数のファセットを1回の検索で 取得可能 u  項目ごとのドキュメント数も取得
  • 15. u  検索キーワードがどの部分にヒットしたか u  検索結果の要約表示 u  キーワードの強調表示
  • 16. u  マスタ/スレーブ構成 u  検索の負荷を分散 検索 slave 登録・更新 master レプリケート 検索 slave
  • 17. u  複数のインデックスを1つのインデックスとして検索 u  大量データに対してスケールアウトで対応可能 Solr 検索 Solr index 検索 Solr index
  • 18. u  スペルチェック(SpellCheck) u  レコメンド(MoreLikeThis) u  スコアブースト(QueryElevation)
  • 19. u  マルチコア u  類義語辞書(Synonym) u  各種言語向け機能 言語判定、各言語向けのTokenizer
  • 20. u  全文検索とは u  Solrの各種機能 u  Luceneにまつわるエコシステム
  • 21. u  Luceneは様々なOSSに利用されている u  Solr(検索エンジンサーバ)、Nutch(クローラ+ 検索エンジン) u  Luceneを発端にHadoopが作られた u  Nutchの仕組みを大規模対応するために実装さ れたのがHadoop