php es使用,PHP的ES入门(一)—— Index的创建和删除
大神請(qǐng)看
本文不一定寫(xiě)的全部都對(duì),如果有哪里寫(xiě)得不好或者不對(duì),可以提但請(qǐng)不要噴,不喜勿看繞道走就是了,雖然有可能在一些小知識(shí)點(diǎn)上會(huì)誤導(dǎo)小白,但是還是可以看看基礎(chǔ)的ES操作,對(duì)于使用還是一點(diǎn)幫助的
ES簡(jiǎn)介
這里不對(duì)ES進(jìn)行介紹,哈哈哈哈哈哈
PHP的ES使用
PHP中使用ES主要通過(guò)官方提供的包 elasticsearch/elasticsearch 進(jìn)行開(kāi)發(fā),但這個(gè)教程不直接使用這個(gè)包,用另外一個(gè)親身實(shí)踐覺(jué)得還不錯(cuò)的包 ruflin/elastica 進(jìn)行開(kāi)發(fā)。
ES版本
本教程的ES版本為7.2,已經(jīng)沒(méi)有了type的概念,不一定適用于小于7.2的版本,簡(jiǎn)單點(diǎn)說(shuō)就是,把ES比喻成Mysql數(shù)據(jù)庫(kù),有type的時(shí)候,index就是一個(gè)數(shù)據(jù)庫(kù),type就是數(shù)據(jù)庫(kù)的一個(gè)個(gè)表,這種情況下一個(gè)項(xiàng)目中一般只有一個(gè)index,多個(gè)type;沒(méi)有type之后,可以把index理解成一個(gè)個(gè)表,一個(gè)項(xiàng)目變成了多個(gè)index。
入門步驟
一般來(lái)說(shuō),我們用ES就是為了做搜索,做搜索我們用得更多的其實(shí)是數(shù)據(jù)庫(kù),所以就涉及到以下這些搜索:模糊匹配,精確匹配,類數(shù)據(jù)的In查詢,And查詢,Or查詢,復(fù)合查詢,Between查詢等等等等....因?yàn)镋S的查詢語(yǔ)法肯定跟Mysql完全不一樣,所以我們要看學(xué)習(xí)一下,還有相關(guān)的基礎(chǔ)搜索相關(guān)的知識(shí)。
此處我們先簡(jiǎn)要介紹一下教程的步驟
先簡(jiǎn)要介紹一下Index的創(chuàng)建與刪除,對(duì)ES相關(guān)的API進(jìn)行簡(jiǎn)要介紹并使用 ruflin/elastica 進(jìn)行代碼實(shí)現(xiàn)
介紹數(shù)據(jù)(document)與Index的增刪改查,也是對(duì)ES相關(guān)的API進(jìn)行簡(jiǎn)要介紹并用代碼實(shí)現(xiàn)
有數(shù)據(jù)之后,我們要進(jìn)行查詢,第三步就進(jìn)行簡(jiǎn)單的查詢講解,這一步通過(guò)API來(lái)理解整個(gè)查詢的代碼實(shí)現(xiàn)是比較簡(jiǎn)單的,我就是這么搞的
介紹一下ES的一些查詢認(rèn)知誤區(qū),講一下分詞器和基礎(chǔ)的查詢規(guī)則
介紹一下Index的mapping和setting的相關(guān)配置,真 · 簡(jiǎn)單介紹,不會(huì)復(fù)雜,只教如何配置和修改
ES的官方文檔
PHP開(kāi)發(fā)包ruflin/elastica的官方文檔
直接使用composer安裝ruflin/elastica
composer install "ruflin/elastica" -vvv
復(fù)制代碼
創(chuàng)建Index,只創(chuàng)建,不進(jìn)行任何配置
相關(guān)的文檔
PUT /index名稱
不傳參
復(fù)制代碼代碼實(shí)現(xiàn)
// 創(chuàng)建ES客戶端
$config = [
'host' => '127.0.0.1',
'port' => 9200,
];
$client = new Client($config);
// 創(chuàng)建Index
$indexName = 'test';
$index = $client->getIndex($indexName);
// 如果Index不存在則創(chuàng)建
if (!$index->exists()) {
$index->create();
}
// 到這里就完成了一個(gè)最簡(jiǎn)單的Index創(chuàng)建,tips:插入數(shù)據(jù)時(shí),如果Index沒(méi)有創(chuàng)建則會(huì)自動(dòng)創(chuàng)建,后續(xù)說(shuō)到數(shù)據(jù)插入時(shí)再講一次
復(fù)制代碼
刪除Index
相關(guān)的文檔
DELETE /index名稱
不傳參
復(fù)制代碼代碼實(shí)現(xiàn)
// 縮略客戶端連接代碼
$index = $client->getIndex($indexName);
// 如果Index存在則刪除
if ($index->exists()) {
$index->delete();
}
復(fù)制代碼
本節(jié)完
是不是感覺(jué)很簡(jiǎn)單,哈哈哈哈哈哈
關(guān)于找一找教程網(wǎng)
本站文章僅代表作者觀點(diǎn),不代表本站立場(chǎng),所有文章非營(yíng)利性免費(fèi)分享。
本站提供了軟件編程、網(wǎng)站開(kāi)發(fā)技術(shù)、服務(wù)器運(yùn)維、人工智能等等IT技術(shù)文章,希望廣大程序員努力學(xué)習(xí),讓我們用科技改變世界。
[PHP的ES入門(一)—— Index的創(chuàng)建和刪除]http://www.zyiz.net/tech/detail-125721.html
總結(jié)
以上是生活随笔為你收集整理的php es使用,PHP的ES入门(一)—— Index的创建和删除的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 利用七参数进行CGCS2000坐标系到西
- 下一篇: 51单片机2个按钮逻辑设计http://