Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
Masahiko Sawada
3,249 views
pg_bigmと類似度検索
MySQLとPostgreSQLの日本語全文検索勉強会3の資料です
Technology
◦
Read more
1
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 19
2
/ 19
Most read
3
/ 19
4
/ 19
5
/ 19
6
/ 19
7
/ 19
8
/ 19
9
/ 19
10
/ 19
11
/ 19
12
/ 19
13
/ 19
14
/ 19
Most read
15
/ 19
16
/ 19
Most read
17
/ 19
18
/ 19
19
/ 19
More Related Content
PDF
pg_bigm(ピージーバイグラム)を用いた全文検索のしくみ
by
Masahiko Sawada
PDF
pg_bigmを用いた全文検索のしくみ(前編)
by
NTT DATA OSS Professional Services
PDF
pg_bigm(ピージー・バイグラム)を用いた全文検索のしくみ(後編)
by
Masahiko Sawada
PDF
pg_bigmを用いた全文検索のしくみ(後編)
by
NTT DATA OSS Professional Services
PDF
pg_trgmと全文検索
by
NTT DATA OSS Professional Services
PPTX
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PDF
PostgreSQLでpg_bigmを使って日本語全文検索 (MySQLとPostgreSQLの日本語全文検索勉強会 発表資料)
by
NTT DATA OSS Professional Services
PDF
PostgreSQLの関数属性を知ろう
by
kasaharatt
pg_bigm(ピージーバイグラム)を用いた全文検索のしくみ
by
Masahiko Sawada
pg_bigmを用いた全文検索のしくみ(前編)
by
NTT DATA OSS Professional Services
pg_bigm(ピージー・バイグラム)を用いた全文検索のしくみ(後編)
by
Masahiko Sawada
pg_bigmを用いた全文検索のしくみ(後編)
by
NTT DATA OSS Professional Services
pg_trgmと全文検索
by
NTT DATA OSS Professional Services
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PostgreSQLでpg_bigmを使って日本語全文検索 (MySQLとPostgreSQLの日本語全文検索勉強会 発表資料)
by
NTT DATA OSS Professional Services
PostgreSQLの関数属性を知ろう
by
kasaharatt
What's hot
PDF
pg_bigmを触り始めた人に伝えたいこと
by
Masahiko Sawada
PPTX
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
by
Miki Shimogai
PDF
プログラムを高速化する話
by
京大 マイコンクラブ
PDF
PlaySQLAlchemy: SQLAlchemy入門
by
泰 増田
PPTX
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)
by
NTT DATA Technology & Innovation
PDF
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)
by
NTT DATA Technology & Innovation
PDF
MySQL・PostgreSQLだけで作る高速あいまい全文検索システム
by
Kouhei Sutou
PDF
「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜
by
Takahiro Inoue
PPTX
DockerコンテナでGitを使う
by
Kazuhiro Suga
PDF
[B23] PostgreSQLのインデックス・チューニング by Tomonari Katsumata
by
Insight Technology, Inc.
PPTX
レガシーコードに向き合ってみた話
by
株式会社MonotaRO Tech Team
PPTX
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)
by
NTT DATA Technology & Innovation
PDF
レコメンドエンジン作成コンテストの勝ち方
by
Shun Nukui
PDF
最近のDeep Learning (NLP) 界隈におけるAttention事情
by
Yuta Kikuchi
PDF
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
by
NTT DATA Technology & Innovation
PPTX
SQLチューニング入門 入門編
by
Miki Shimogai
PDF
MySQLとPostgreSQLと日本語全文検索 - Azure DatabaseでMroonga・PGroongaを使いたいですよね!?
by
Kouhei Sutou
PDF
Power Apps + C#
by
一希 大田
PDF
例外設計における大罪
by
Takuto Wada
PPTX
PostgreSQL 14 モニタリング新機能紹介(PostgreSQL カンファレンス #24、2021/06/08)
by
NTT DATA Technology & Innovation
pg_bigmを触り始めた人に伝えたいこと
by
Masahiko Sawada
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
by
Miki Shimogai
プログラムを高速化する話
by
京大 マイコンクラブ
PlaySQLAlchemy: SQLAlchemy入門
by
泰 増田
押さえておきたい、PostgreSQL 13 の新機能!!(Open Source Conference 2021 Online/Hokkaido 発表資料)
by
NTT DATA Technology & Innovation
pgvectorを使ってChatGPTとPostgreSQLを連携してみよう!(PostgreSQL Conference Japan 2023 発表資料)
by
NTT DATA Technology & Innovation
MySQL・PostgreSQLだけで作る高速あいまい全文検索システム
by
Kouhei Sutou
「GraphDB徹底入門」〜構造や仕組み理解から使いどころ・種々のGraphDBの比較まで幅広く〜
by
Takahiro Inoue
DockerコンテナでGitを使う
by
Kazuhiro Suga
[B23] PostgreSQLのインデックス・チューニング by Tomonari Katsumata
by
Insight Technology, Inc.
レガシーコードに向き合ってみた話
by
株式会社MonotaRO Tech Team
押さえておきたい、PostgreSQL 13 の新機能!! (PostgreSQL Conference Japan 2020講演資料)
by
NTT DATA Technology & Innovation
レコメンドエンジン作成コンテストの勝ち方
by
Shun Nukui
最近のDeep Learning (NLP) 界隈におけるAttention事情
by
Yuta Kikuchi
マネージドPostgreSQLの実現に向けたPostgreSQL機能向上(PostgreSQL Conference Japan 2023 発表資料)
by
NTT DATA Technology & Innovation
SQLチューニング入門 入門編
by
Miki Shimogai
MySQLとPostgreSQLと日本語全文検索 - Azure DatabaseでMroonga・PGroongaを使いたいですよね!?
by
Kouhei Sutou
Power Apps + C#
by
一希 大田
例外設計における大罪
by
Takuto Wada
PostgreSQL 14 モニタリング新機能紹介(PostgreSQL カンファレンス #24、2021/06/08)
by
NTT DATA Technology & Innovation
Similar to pg_bigmと類似度検索
PDF
Pgunconf ゆるいテキスト検索ふたたび - n-gram応用編
by
Toshi Harada
PDF
textsearch_jaで全文検索
by
Akio Ishida
PDF
ゆるいテキスト検索
by
Toshi Harada
ODP
mysqlftppc 紹介
by
Hiroaki Kawai
PDF
Pgunconf 20121212-postgeres fdw
by
Toshi Harada
PDF
MySQL 5.7 InnoDB 日本語全文検索(その2)
by
yoyamasaki
PDF
20171103 pg con-jp-lt-plpgsql
by
Toshi Harada
PDF
20160929_InnoDBの全文検索を使ってみた by 株式会社インサイトテクノロジー 中村範夫
by
Insight Technology, Inc.
PDF
Pgunconf14 pg13-psql
by
Toshi Harada
PDF
WordNetで作ろう! 言語横断検索サービス
by
Shintaro Takemura
PDF
Mysql+Mroongaで全文検索
by
yoyamasaki
PDF
PGroonga 2 - PostgreSQLでの全文検索の決定版
by
Kouhei Sutou
PDF
MySQLの全文検索に関するあれやこれや
by
yoku0825
PDF
MySQL・PostgreSQL上で動かす全文検索エンジン「Groonga」セミナー
by
Kouhei Sutou
PPTX
Tritonn から Elasticsearch への移行話
by
do_aki
PDF
KOF2015 PostgreSQL 9.5
by
Toshi Harada
PDF
Drupalの日本語検索
by
SachikoNitta
PDF
使ってみませんか?pg hint_plan
by
Masao Fujii
PDF
生成AI時代のPostgreSQLハイブリッド検索 (第50回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
PDF
20160929 inno db_fts_jp
by
yoyamasaki
Pgunconf ゆるいテキスト検索ふたたび - n-gram応用編
by
Toshi Harada
textsearch_jaで全文検索
by
Akio Ishida
ゆるいテキスト検索
by
Toshi Harada
mysqlftppc 紹介
by
Hiroaki Kawai
Pgunconf 20121212-postgeres fdw
by
Toshi Harada
MySQL 5.7 InnoDB 日本語全文検索(その2)
by
yoyamasaki
20171103 pg con-jp-lt-plpgsql
by
Toshi Harada
20160929_InnoDBの全文検索を使ってみた by 株式会社インサイトテクノロジー 中村範夫
by
Insight Technology, Inc.
Pgunconf14 pg13-psql
by
Toshi Harada
WordNetで作ろう! 言語横断検索サービス
by
Shintaro Takemura
Mysql+Mroongaで全文検索
by
yoyamasaki
PGroonga 2 - PostgreSQLでの全文検索の決定版
by
Kouhei Sutou
MySQLの全文検索に関するあれやこれや
by
yoku0825
MySQL・PostgreSQL上で動かす全文検索エンジン「Groonga」セミナー
by
Kouhei Sutou
Tritonn から Elasticsearch への移行話
by
do_aki
KOF2015 PostgreSQL 9.5
by
Toshi Harada
Drupalの日本語検索
by
SachikoNitta
使ってみませんか?pg hint_plan
by
Masao Fujii
生成AI時代のPostgreSQLハイブリッド検索 (第50回PostgreSQLアンカンファレンス@オンライン 発表資料)
by
NTT DATA Technology & Innovation
20160929 inno db_fts_jp
by
yoyamasaki
More from Masahiko Sawada
PDF
PostgreSQL 15の新機能を徹底解説
by
Masahiko Sawada
PDF
行ロックと「LOG: process 12345 still waiting for ShareLock on transaction 710 afte...
by
Masahiko Sawada
PDF
PostgreSQL 15 開発最新情報
by
Masahiko Sawada
PDF
Vacuum徹底解説
by
Masahiko Sawada
PDF
Transparent Data Encryption in PostgreSQL
by
Masahiko Sawada
PDF
PostgreSQL 12の話
by
Masahiko Sawada
PDF
OSS活動のやりがいとそれから得たもの - PostgreSQLコミュニティにて -
by
Masahiko Sawada
PDF
Transparent Data Encryption in PostgreSQL and Integration with Key Management...
by
Masahiko Sawada
PDF
Bloat and Fragmentation in PostgreSQL
by
Masahiko Sawada
PDF
Database Encryption and Key Management for PostgreSQL - Principles and Consid...
by
Masahiko Sawada
PDF
今秋リリース予定のPostgreSQL11を徹底解説
by
Masahiko Sawada
PDF
Vacuum more efficient than ever
by
Masahiko Sawada
PDF
Vacuumとzheap
by
Masahiko Sawada
PDF
アーキテクチャから理解するPostgreSQLのレプリケーション
by
Masahiko Sawada
PDF
Parallel Vacuum
by
Masahiko Sawada
PDF
PostgreSQLでスケールアウト
by
Masahiko Sawada
PDF
OSS 開発ってどうやっているの? ~ PostgreSQL の現場から~
by
Masahiko Sawada
PDF
PostgreSQL10徹底解説
by
Masahiko Sawada
PDF
FDW-based Sharding Update and Future
by
Masahiko Sawada
PDF
What’s new in 9.6, by PostgreSQL contributor
by
Masahiko Sawada
PostgreSQL 15の新機能を徹底解説
by
Masahiko Sawada
行ロックと「LOG: process 12345 still waiting for ShareLock on transaction 710 afte...
by
Masahiko Sawada
PostgreSQL 15 開発最新情報
by
Masahiko Sawada
Vacuum徹底解説
by
Masahiko Sawada
Transparent Data Encryption in PostgreSQL
by
Masahiko Sawada
PostgreSQL 12の話
by
Masahiko Sawada
OSS活動のやりがいとそれから得たもの - PostgreSQLコミュニティにて -
by
Masahiko Sawada
Transparent Data Encryption in PostgreSQL and Integration with Key Management...
by
Masahiko Sawada
Bloat and Fragmentation in PostgreSQL
by
Masahiko Sawada
Database Encryption and Key Management for PostgreSQL - Principles and Consid...
by
Masahiko Sawada
今秋リリース予定のPostgreSQL11を徹底解説
by
Masahiko Sawada
Vacuum more efficient than ever
by
Masahiko Sawada
Vacuumとzheap
by
Masahiko Sawada
アーキテクチャから理解するPostgreSQLのレプリケーション
by
Masahiko Sawada
Parallel Vacuum
by
Masahiko Sawada
PostgreSQLでスケールアウト
by
Masahiko Sawada
OSS 開発ってどうやっているの? ~ PostgreSQL の現場から~
by
Masahiko Sawada
PostgreSQL10徹底解説
by
Masahiko Sawada
FDW-based Sharding Update and Future
by
Masahiko Sawada
What’s new in 9.6, by PostgreSQL contributor
by
Masahiko Sawada
pg_bigmと類似度検索
1.
Copyright©2016 NTT corp.
All Rights Reserved. pg_̲bigmと類似度度検索索 2016/9/29 NTT OSSセンタ 澤⽥田 雅彦 @MySQLとPostgreSQLと⽇日本語全⽂文検索索3
2.
2Copyright©2016 NTT corp.
All Rights Reserved. 1. pg_̲bigmの特徴 + 前回の復復習 2. ⽂文字の種類を意識識しない全⽂文検索索 3. 類似度度検索索 4. デモ ⽬目次
3.
3Copyright©2016 NTT corp.
All Rights Reserved. pg_̲bigmの特徴
4.
4Copyright©2016 NTT corp.
All Rights Reserved. N-‐‑‒gram?形態素解析? 全⽂文検索索の勉強会 • 全⽂文 • ⽂文検 • 検索索 • 索索の • の勉 • 勉強 • 強会 • 全⽂文検索索 • の • 勉強会 N-‐‑‒gram (2-‐‑‒gram) 形態素解析
5.
5Copyright©2016 NTT corp.
All Rights Reserved. 前回(6/9)では、
6.
6Copyright©2016 NTT corp.
All Rights Reserved. PostgreSQL9.4以降降がおすすめ http://www.slideshare.net/hadoopxnttdata/postgresqlpgbigm-mysqlpostgresql
7.
7Copyright©2016 NTT corp.
All Rights Reserved. { “$tle” : “MySQLとPostgreSQLと⽇日本語全⽂文検索索2”, “date” : 2016-‐06-‐09, “desc” : “MySQLとPostgreSQLの⽇日本語全⽂文検索索を知っている⼈人向けの勉強会”, “url” : “h@ps://groonga.doorkeeper.jp/events/41770” “hashtag” : “#mypgL”, “venue” : { “name” : “DMM.comラボ”, “address” : “渋⾕谷区恵⽐比寿4-‐20-‐3 恵⽐比寿ガーデンプレイスタワー21F” } } JSONB型と⼀一緒に使う CREATE INDEX bigm_idx on jb using gin((col->>’title’) gin_bigm_ops);
8.
8Copyright©2016 NTT corp.
All Rights Reserved. { “$tle” : “MySQLとPostgreSQLと⽇日本語全⽂文検索索2”, “date” : 2016-‐06-‐09, “desc” : “MySQLとPostgreSQLの⽇日本語全⽂文検索索を知っている⼈人向けの勉強会”, “url” : “h@ps://groonga.doorkeeper.jp/events/41770” “hashtag” : “#mypgL”, “venue” : { “name” : “DMM.comラボ”, “address” : “渋⾕谷区恵⽐比寿4-‐20-‐3 恵⽐比寿ガーデンプレイスタワー21F” } } JSONB型と⼀一緒に使う CREATE INDEX bigm_idx on jb using gin((col->>’title’) gin_bigm_ops); WHERE (col-‐‑‒>>ʼ’titleʼ’) LIKE ʻ‘%⽇日本語全⽂文検索索%ʼ’; 列列名 属性名 検索索キーワード
9.
9Copyright©2016 NTT corp.
All Rights Reserved. 今回は、
10.
10Copyright©2016 NTT corp.
All Rights Reserved. • 表記のゆれ • 「インタフェース」と「インターフェース」 • 「ハロウィーン」と「ハロウィン」 • 「PostgreSQL」と「postgresql」 • 「①②③」と「123」 • 誤字、脱字 • 「オーケストラ」と「オーケトスラ」 • 「postgresql」と「postregsql」 表記のゆれ、誤字脱字も含めて全⽂文検索索したい
11.
11Copyright©2016 NTT corp.
All Rights Reserved. ⽂文字の種類を意識識しない全⽂文検索索
12.
12Copyright©2016 NTT corp.
All Rights Reserved. • lower()またはupper()を使⽤用した関数インデックスを 使⽤用することで、⼤大⽂文字、⼩小⽂文字を意識識しない全⽂文検 索索が可能 関数インデックスを使⽤用 =# CREATE INDEX hoge_idx ON hoge USING gin (lower(col) gin_bigm_ops); CREATE INDEX =# SELECT * FROM hoge WHERE lower(col) LIKE ‘%postgresql%’; col -‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐ postgresql PostgreSQL POSTGRESQL (3 rows) 関数インデックス次第で⽇日本語にも対応可能
13.
13Copyright©2016 NTT corp.
All Rights Reserved. 類似度度検索索
14.
14Copyright©2016 NTT corp.
All Rights Reserved. • 表記のゆれ、誤字・脱字も含めた全⽂文検索索が可能 • 設定した閾値を超える⽂文字列列を「似ている⽂文字列列」と判断 類似度度検索索 =# INSERT INTO hoge VALUES(‘ハロウィーン’) (‘ハロウィン’); =# SET pg_bigm.bigm_similarity_limit TO 0.5; =# SELECT * FROM hoge WHERE col =% 'ハロウィン'; col -‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐ ハロウィーン ハロウィン (2 rows) =# SET pg_bigm.bigm_similarity_limit TO 0.8; =# SELECT * FROM hoge WHERE col =% ‘ハロウィン’; col -‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐ ハロウィン (1 rows)
15.
15Copyright©2016 NTT corp.
All Rights Reserved. • 類似度度は0.0〜~1.0 • 共通した⽂文字が多いほど、類似度度は⾼高い 類似度度検索索 =# SELECT bigm_similarity('ハロウィン', 'ハロウィーン'); bigm_similarity -‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐ 0.714286 (1 row) =# SELECT show_bigm('ハロウィーン'); show_bigm -‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐ {ィー,ウィ,ハロ,ロウ,"ン ",ーン," ハ"} (1 row) =# SELECT show_bigm('ハロウィン'); show_bigm -‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐ {ィン,ウィ,ハロ,ロウ,"ン "," ハ"} (1 row)
16.
16Copyright©2016 NTT corp.
All Rights Reserved. • 類似度度検索索では「いくつ共通した⽂文字が含まれているか」のみを計算している • ⽂文書(⻑⾧長い)を単語(短い)で検索索する⽤用途には不不向き 類似度度検索索 =# SELECT bigm_similarity(ʻ‘全⽂文検索索勉強会ʼ’, ʻ‘全⽂文検索索の勉強会'); bigm_similarity -‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐ 0.777778 (1 row) =# SELECT bigm_similarity(ʻ‘pg_̲trgmʼ’, ʻ‘pg_̲bigmで全⽂文検索索'); bigm_similarity -‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐ 0.307692 (1 row) =# SELECT bigm_similarity(ʻ‘pg_̲trgmʼ’, ʻ‘pg_̲bigmで全⽂文検索索したい'); bigm_similarity -‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐ 0.25 (1 row) =# SELECT bigm_similarity(ʻ‘pg_̲trgmʼ’, ʻ‘pg_̲bigmで全⽂文検索索したいのである'); bigm_similarity -‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐ 0.2 (1 row) 検索索対象の⽂文字列列 の⻑⾧長さに応じて 類似度度が 下がっていってる
17.
17Copyright©2016 NTT corp.
All Rights Reserved. • PostgreSQL 9.6に⼊入ったWord Similarity Searchを利利⽤用 • 検索索キーワードを「⼀一塊の⽂文字列列」と⾒見見ることで、単語を意識識し た類似度度検索索が可能 • 現在テスト中 単語を意識識した類似度度検索索 PG9.6 New! =# SELECT bigm_similarity(‘pg_trgm’, ‘pg_̲bigmで全⽂文検索索したい'); bigm_similarity -‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐ 0.5 (1 row) =# SELECT bigm_similarity(‘pg_trgm’, ‘pg_̲bigmで全⽂文検索索したいのである'); bigm_similarity -‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐-‐ 0.5 (1 row) 検索索対象⽂文字列列の⻑⾧長さ に関係なく、類似度度が 算出される
18.
18Copyright©2016 NTT corp.
All Rights Reserved. • 関数インデックス、類似度度検索索を使うことで、柔軟な 検索索が可能 • 使⽤用する関数を⼯工夫することで、⽇日本語にも対応可能 • 類似度度検索索では、閾値以上の「似ている」⽂文字列列を⾼高 速に検索索することができる • 閾値の調整は要件次第 まとめ
19.
19Copyright©2016 NTT corp.
All Rights Reserved. ご清聴ありがとうございました
Download