タグ

DBと検索に関するsuperrush4xのブックマーク (8)

  • テキスト検索の方法とインデックス — Let's Postgres

    板垣 貴裕 テキスト検索にもさまざまな方法があります。大量のテキストを検索するにはインデックスを使って検索したいところですが、どんな検索にも応えられるインデックスというものは、さすがに存在しません。それぞれのアプリケーションの条件に適したテキスト検索方法やインデックスの張り方を選んで行きましょう。 今回説明するテキスト検索の方法の一覧を以下に挙げます。PostgreSQL ユーザが「全文テキスト検索」というと「単語単位の検索」を指すことが多いようです。また、「中間一致検索」が「あいまい検索」と呼ばれることもあるようです。用語が厳密な意味で使われないことも多いようなので、文脈には注意して解釈してください。 「単語単位の検索」と「中間一致検索」では、追加のモジュールを導入することで日語全文検索が可能なインデックスを作成できます。こちらは説明の後半で紹介します。以下、記事の内容です。 テキス

    superrush4x
    superrush4x 2011/11/25
    PostgreSQL 9.1 以降はpg_trgm で、LIKEでの中間一致検索もインデックスできる/英数字以外を含む文書検索はpg_trgm の KEEPONLYALNUM オプションをOFFに
  • 全文検索

    目次12.1. 導入12.1.1. 文書とは何か?12.1.2. 基的なテキスト照合12.1.3. 設定12.2. テーブルとインデックス12.2.1. テーブルを検索する12.2.2. インデックスの作成12.3. テキスト検索の制御12.3.1. 文書のパース12.3.2. 問合わせのパース12.3.3. 検索結果のランキング12.3.4. 結果の強調12.4. 追加機能12.4.1. 文書の操作12.4.2. 問合わせを操作する12.4.3. 自動更新のためのトリガ12.4.4. 文書の統計情報の収集12.5. パーサ12.6. 辞書12.6.1. ストップワード12.6.2. simple辞書12.6.3. 同義語辞書12.6.4. 類語辞書12.6.5. Ispell辞書12.6.6. Snowball辞書12.7. 設定例12.8. テキスト検索のテストとデバッグ12.8.1

    superrush4x
    superrush4x 2011/11/25
    PostgreSQLマニュアル
  • Ywcafe.net

    Ywcafe.net This Page Is Under Construction - Coming Soon! Why am I seeing this 'Under Construction' page? Related Searches: Accident Lawyers 10 Best Mutual Funds Healthy Weight Loss Top 10 Luxury Cars All Inclusive Vacation Packages Trademark Free Notice Review our Privacy Policy Service Agreement Legal Notice Privacy Policy

  • MeCab と textsearch_ja を使って高速な全文検索を実現しよう - PowerGres 体験記 第 4 回

    対象バージョン: PowerGres 7 以降 / PostgreSQL 8.3 以降 文では Microsoft Windows 7 (64 ビット版) において PowerGres on Windows 7.2 を使用して解説しています。 データベースを使用するからには目的のデータを高速に検索したいと誰もが考えるでしょう。 高速な検索を実現する最も簡単な方法は適切な列 (例えば、検索条件に指定されている列) にインデックスを作成することです。 インデックス (索引) とは、その名のとおり書籍の索引と同じく目的のページ (データ) をすばやく探すための仕組みです。 もし、書籍に索引がなければ目的のページを探すのに最初から最後まで 1 ページずつ読んで探していく必要があります。 しかし、通常のインデックス (B-Tree インデックス) は「WHERE c = 'word' (列 c

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • mysql4.0系でfulltextを利用したマルチバイト全文検索1 ← Neo Inspiration

    とりあえずさくらのサーバに 全文検索も実装しようかなーと思ってsennaとか調べてたんですが、 色々と制約にヒットしてめんどくさくなったんで、 既存の範囲で全文検索ができないかと考えてメモ ここらへんを参考に MySQL 全文検索 MySQL FULLTEXT + Ngram : LIKE検索より数十倍高速な、お手軽 日語全文検索 について mysql の fulltext型のインデックスを使って実装するのが一般的らしい。 で このfulltext型ってのが何をやってるかといえば MySQL では、非常に単純なパーサを使用してテキストをワード(語)に分割します。“ワード” とは、文字、数字、‘’’、‘_’ で構成される文字列です。 だそうで。 ただ、 MySQL 4.1.1 以降はマルチバイト文字も対応。 ただし Unicode は utf8 のみ対応 (ucs2はNG)。 えーっと さ

  • phpでマルチスレッド ← Neo Inspiration

    またまた自作フレームワーク用に組み込みたかった機能の話 特にfile_get_contentsなどの相手側の応答いかんで処理時間がかわるような場合 同時にだーって流しておきたいなーとはおもったんですが、 考えていたやりかたはモジュール版だと使えないということが発覚・・ (pcntl_forkって関数) で今回みっけたのは curl_multi PHP curl_multi example of parallel GET requests 注意点としては、各ハンドラが独自にキャッシュしてるから ハンドルを変更せず再度 curl_multi_exec しても トライせずにキャッシュを返すことかなぁ (その場合一旦ハンドラを解除して再セットすればOKらしい) なので、こんな感じでクラスを作って localhostphpファイルを呼び出せば 簡単にマルチスレッドでプログラムが動かせると。 まあよ

  • PostgreSQL 8.3の全文検索機能(TSearch2)を日本語で利用する

    (Last Updated On: 2018年8月13日)PostgreSQL 8.3.0から、ユーザから提供されている追加機能(contrib)として利用できた全文検索機能(TSearch2)が体に取り込まれました。 体に取り込まれたため、PostgreSQL 8.3.0以降ではソースから構築する場合に ./configure make make install と実行するだけで全文検索機能が利用できるようになりました。 TSearch2は単語単位で全文検索できます。しかし、日語のように単語に区切りがない場合、単語に分解(形態素解析)してからインデックス化する必要があります。 # N-gramは使えません。 残念ながら日語をそのまま扱える機能はPostgreSQL 8.3では実装されていません.しかし、TSearch2(textsearch)を日語で利用するための追加機能がpg

    PostgreSQL 8.3の全文検索機能(TSearch2)を日本語で利用する
  • 1