日韩小视频-日韩久久一区二区三区-日韩久久一级毛片-日韩久久久精品中文字幕-国产精品亚洲精品影院-国产精品亚洲欧美云霸高清

下載吧 - 綠色安全的游戲和軟件下載中心

軟件下載吧

當(dāng)前位置:軟件下載吧 > 技術(shù)開(kāi)發(fā) > 數(shù)據(jù)庫(kù) > 教你PostgreSQL如何進(jìn)行中文全文檢索

教你PostgreSQL如何進(jìn)行中文全文檢索

時(shí)間:2024-02-05 12:47作者:下載吧人氣:38

開(kāi)始

安裝

首先是安裝 PgSQL,這里我使用的是 PgSQL 9.6,PgSQL 10 也剛發(fā)布了,有興趣的可以嘗下鮮。

PgSQL 的安裝可以說(shuō)非常復(fù)雜了,除了要安裝 Server 和 Client 外,還需要安裝 devel 包。為了實(shí)現(xiàn)空間索引功能,我們還要安裝最重要的 PostGIS 插件,此插件需要很多依賴(lài),自己手動(dòng)安裝非常復(fù)雜而且很可能出錯(cuò)。

推薦自動(dòng)化方式安裝,Yum 一定要配合 epel 這樣的 Yum 源,保障能將依賴(lài)一網(wǎng)打盡。當(dāng)然最好的還是使用 docker 來(lái)運(yùn)行,找個(gè)鏡像就行了。

插件

由于 PgSQL 的很多功能都由插件實(shí)現(xiàn),所以還要安裝一些常用的插件,如:

postgis_topology(管理面、邊、點(diǎn)等拓?fù)鋵?duì)象)

pgrouting(路徑規(guī)劃)

postgis_sfcgal(實(shí)現(xiàn)3D相關(guān)算法)

fuzzystrmatch(字符串相似度計(jì)算)

address_standardizer/address_standardizer_data_us(地址標(biāo)準(zhǔn)化)

pg_trgm(分詞索引)

這些插件在安裝目錄 /path/extensions 下編譯完畢后,在數(shù)據(jù)庫(kù)中使用前要先使用 create extension xxx 啟用。

啟動(dòng)

1.切換到非 root 用戶。(PgSQL 在安裝完畢后會(huì)創(chuàng)建一個(gè)名為 postgres 的超級(jí)用戶,我們可以使用這個(gè)超級(jí)用戶來(lái)操作 PgSQL,后期建議重新創(chuàng)建一個(gè)普通用戶用來(lái)管理數(shù)據(jù));

2.切換到 /installPath/bin/ 目錄下,PgSQL 在此目錄下提供了很多命令,如 createdb、createuser、dropdb、pg_dump 等;

3.使用 createdb 命令初始化一個(gè)文件夾 dir_db (此目錄不能已存在)存放數(shù)據(jù)庫(kù)物理數(shù)據(jù),使用 -E UTF8 參數(shù)指定數(shù)據(jù)庫(kù)字符集為 utf-8;

4.使用 pg_ctl -D dir_db 指定數(shù)據(jù)庫(kù)啟動(dòng)后臺(tái)服務(wù);

5.使用 psql -d db 在命令行登陸 PgSQL;

配置

安裝完畢后還要配置一些比較基本的參數(shù)才能正常使用。

Host權(quán)限

PgSQL需要在 pg_hba.conf 文件中配置數(shù)據(jù)庫(kù) Host 權(quán)限,才能被其他機(jī)器訪問(wèn)。

# TYPE  DATABASE        USER            ADDRESS                 METHOD

local   all             all                                     trust

host    all             all             127.0.0.1/32            md5

host    all             all             172.16.0.1/16            md5

文件中注釋部分對(duì)這幾個(gè)字段介紹得比較詳細(xì), 我們很可能需要添加 host(IP) 訪問(wèn)項(xiàng), ADDRESS 是普通的網(wǎng)段表示法,METHOD 推薦使用 md5,表示使用 md5 加密傳輸密碼。

服務(wù)器配置

服務(wù)器配置在 postgresql.conf中,修改配置后需要 使用 pg_ctl restart -D dir_db 命令重啟數(shù)據(jù)庫(kù);

此外,我們也可以在登陸數(shù)據(jù)庫(kù)后修改配置項(xiàng):使用 SELECT * FROM pg_settings WHERE name = ‘config’; 查詢(xún)當(dāng)前配置項(xiàng),再使用 UPDATE 語(yǔ)句更新配置。但有些配置如內(nèi)存分配策略是只在當(dāng)前 session 生效的,全局生效需要在配置文件中修改,再重啟服務(wù)器。

我們可以修改配置并用客戶端驗(yàn)證 SQL 語(yǔ)句的優(yōu)化,使用 timing on 開(kāi)啟查詢(xún)計(jì)時(shí),使用 EXPLAIN ANALYSE 語(yǔ)句 分析查詢(xún)語(yǔ)句效率。 下面介紹兩個(gè)已實(shí)踐過(guò)的配置參數(shù):

  • shared_buffers:用于指定共享內(nèi)存緩沖區(qū)所占用的內(nèi)存量。它應(yīng)該足夠大來(lái)存儲(chǔ)常使用的查詢(xún)結(jié)果,以減少物理I/O。但它也不能太大,以避免系統(tǒng) 內(nèi)存swap 的發(fā)生, 一般設(shè)置為系統(tǒng)內(nèi)存的 20%。
  • work_mem:一個(gè)連接的工作內(nèi)存,在查詢(xún)結(jié)果數(shù)據(jù)量較大時(shí),此值如果較小的話,會(huì)導(dǎo)致大量系統(tǒng) I/O,導(dǎo)致查詢(xún)速度急劇下降,如果你的 explain 語(yǔ)句內(nèi) buffer 部分 read數(shù)值過(guò)大,則表示工作內(nèi)存不足,需要調(diào)整加此參數(shù)。但此值也不能太大,需要保證 work_mem * max_connections + shared_buffers + 系統(tǒng)內(nèi)存 < RAM,不然同樣可能會(huì)導(dǎo)致系統(tǒng) 內(nèi)存swap。

這樣,PgSQL 就能作為一個(gè)正常的關(guān)系型數(shù)據(jù)使用了。

分詞

全文索引的實(shí)現(xiàn)要靠 PgSQL 的 gin 索引。分詞功能 PgSQL 內(nèi)置了英文、西班牙文等,但中文分詞需要借助開(kāi)源插件 zhparser;

SCWS

要使用 zhparser,我們首先要安裝 SCWS 分詞庫(kù),SCWS 是 Simple Chinese Word Segmentation 的首字母縮寫(xiě)(即:簡(jiǎn)易中文分詞系統(tǒng)),其 GitHub 項(xiàng)目地址為 hightman-scws,我們下載之后可以直接安裝。

安裝完后,就可以在命令行中使用 scws 命令進(jìn)行測(cè)試分詞了, 其參數(shù)主要有:

  • -c utf8 指定字符集
  • -d dict 指定字典 可以是 xdb 或 txt 格式
  • -M 復(fù)合分詞的級(jí)別, 1~15,按位異或的 1|2|4|8 依次表示 短詞|二元|主要字|全部字,默認(rèn)不復(fù)合分詞,這個(gè)參數(shù)可以幫助調(diào)整到最想要的分詞效果。

zhpaser

1.下載 zhparser 源碼 git clone https:github.com/amutu/zhparser.git;

2.安裝前需要先配置環(huán)境變量:export PATH=$PATH:/path/to/pgsql;

3.make && make install編譯 zhparser;

4.登陸 PgSQL 使用 CREATE EXTENSION zhparser; 啟用插件;

5.添加分詞配置

CREATE TEXT SEARCH CONFIGURATION parser_name (PARSER = zhparser); // 添加配置
ALTER TEXT SEARCH CONFIGURATION parser_name ADD MAPPING FOR n,v,a,i,e,l,j WITH simple; // 設(shè)置分詞規(guī)則 (n 名詞 v 動(dòng)詞等,詳情閱讀下面的文檔)

標(biāo)簽MySQL,技術(shù)文檔,數(shù)據(jù)庫(kù),PostgreSQL

相關(guān)下載

查看所有評(píng)論+

網(wǎng)友評(píng)論

網(wǎng)友
您的評(píng)論需要經(jīng)過(guò)審核才能顯示

熱門(mén)閱覽

最新排行

公眾號(hào)

主站蜘蛛池模板: 亚洲精品欧美精品一区二区 | 她也啪在线视频精品网站 | 香蕉成人在线视频 | 久久久久久久久网站 | 在线观看人成网站深夜免费 | 亚洲在线一区二区三区 | 亚洲国产成人久久一区www | 欧美日韩国产高清一区二区三区 | 最新69成人精品毛片 | 亚洲激情自拍 | 亚洲欧美一区二区视频 | 999热成人精品国产免 | 日本人的色道www免费一区 | 精品国产一区二区三区不卡在线 | 国产女主播在线 | 92精品国产自产在线 | 男女交性拍拍拍高清视频 | 中国成人在线视频 | 黄色作爱| 一区二区三区欧美 | 欧美一级毛片大片免费播放 | 国产成人精品亚洲2020 | 日本在线视频不卡 | 波多野结衣在线视频观看 | 91久久精一区二区三区大全 | 综合亚洲欧美日韩一区二区 | 爽死你个放荡粗暴小淫货双女视频 | 美女视频很黄很a免费国产 美女视频黄.免费网址 | 这里只有久久精品视频 | 亚洲影院在线 | 欧美日韩亚洲成色二本道三区 | 在线观看不卡一区 | 免费一级成人免费观看 | 久草视屏| 在线亚洲v日韩v | a国产片| 日韩中文字幕在线观看视频 | 精品国产杨幂在线观看福利 | 成人区精品一区二区不卡亚洲 | 免费一级α片在线观看 | 精品欧美一区二区三区免费观看 |