亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python使用elasticsearch的過程詳解

 更新時間:2024年03月05日 11:53:11   作者:酷愛碼  
Elasticsearch 是一個開源的搜索引擎,建立在一個全文搜索引擎庫 Apache Lucene基礎之上,這篇文章主要介紹了python使用elasticsearch的詳細過程,需要的朋友可以參考下

一. 什么是 Elasticsearch

想查數(shù)據(jù)就免不了搜索,搜索就離不開搜索引擎,百度、谷歌都是一個非常龐大復雜的搜索引擎,他們幾乎索引了互聯(lián)網上開放的所有網頁和數(shù)據(jù)。然而對于我們自己的業(yè)務數(shù)據(jù)來說,肯定就沒必要用這么復雜的技術了,如果我們想實現(xiàn)自己的搜索引擎,方便存儲和檢索,Elasticsearch 就是不二選擇,它是一個全文搜索引擎,可以快速地儲存、搜索和分析海量數(shù)據(jù)。

Elasticsearch是一個基于Lucene的搜索服務器。它提供了一個分布式多用戶能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java語言開發(fā)的,并作為Apache許可條款下的開放源碼發(fā)布,是一種流行的企業(yè)級搜索引擎。Elasticsearch用于云計算中,能夠達到實時搜索,穩(wěn)定,可靠,快速,安裝使用方便。官方客戶端在Java、.NET(C#)、PHP、Python、Apache Groovy、Ruby和許多其他語言中都是可用的。根據(jù)DB-Engines的排名顯示,Elasticsearch是最受歡迎的企業(yè)搜索引擎,其次是Apache Solr,也是基于Lucene。

二. 為什么要用 Elasticsearch

Elasticsearch 是一個開源的搜索引擎,建立在一個全文搜索引擎庫 Apache Lucene™ 基礎之上。

那 Lucene 又是什么?Lucene 可能是目前存在的,不論開源還是私有的,擁有最先進,高性能和全功能搜索引擎功能的庫,但也僅僅只是一個庫。要用上 Lucene,我們需要編寫 Java 并引用 Lucene 包才可以,而且我們需要對信息檢索有一定程度的理解才能明白 Lucene 是怎么工作的,反正用起來沒那么簡單。

那么為了解決這個問題,Elasticsearch 就誕生了。Elasticsearch 也是使用 Java 編寫的,它的內部使用 Lucene 做索引與搜索,但是它的目標是使全文檢索變得簡單,相當于 Lucene 的一層封裝,它提供了一套簡單一致的 RESTful API 來幫助我們實現(xiàn)存儲和檢索。

所以 Elasticsearch 僅僅就是一個簡易版的 Lucene 封裝嗎?那就大錯特錯了,Elasticsearch 不僅僅是 Lucene,并且也不僅僅只是一個全文搜索引擎。 它可以被下面這樣準確的形容:

一個分布式的實時文檔存儲,每個字段可以被索引與搜索
一個分布式實時分析搜索引擎
能勝任上百個服務節(jié)點的擴展,并支持 PB 級別的結構化或者非結構化數(shù)據(jù)
總之,是一個相當牛逼的搜索引擎,維基百科、Stack Overflow、GitHub 都紛紛采用它來做搜索。

使用Python連接Elasticsearch的詳細過程如下:

安裝elasticsearch-py庫:
在命令行中使用pip安裝elasticsearch-py庫:

$ pip install elasticsearch

導入elasticsearch庫:
在Python腳本中導入elasticsearch庫:

from elasticsearch import Elasticsearch

連接到Elasticsearch:
使用Elasticsearch類創(chuàng)建一個連接到Elasticsearch集群的對象:

es = Elasticsearch(hosts=[{'host': 'localhost', 'port': 9200}])

創(chuàng)建索引:
使用create_index方法創(chuàng)建一個新的索引:

es.indices.create(index='my_index', ignore=400)

索引文檔:
使用index方法將文檔插入到索引中:

es.index(index='my_index', doc_type='my_type', id=1, body={'name': 'John', 'age': 30})

搜索文檔:
使用search方法搜索文檔:

result = es.search(index='my_index', body={'query': {'match': {'name': 'John'}}})

刪除索引:
使用delete_index方法刪除索引:

es.indices.delete(index='my_index', ignore=[400, 404])

以上是連接和使用Elasticsearch的基本步驟。你可以根據(jù)需要進行更高級的操作,例如更新文檔、刪除文檔等。具體的操作可以參考elasticsearch-py庫的文檔。

到此這篇關于python使用elasticsearch的詳細過程的文章就介紹到這了,更多相關python使用elasticsearch內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Flask搭建虛擬環(huán)境并運行第一個flask程序

    Flask搭建虛擬環(huán)境并運行第一個flask程序

    這篇文章主要介紹了Flask搭建虛擬環(huán)境并運行第一個flask程序,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04
  • keras實現(xiàn)VGG16 CIFAR10數(shù)據(jù)集方式

    keras實現(xiàn)VGG16 CIFAR10數(shù)據(jù)集方式

    這篇文章主要介紹了keras實現(xiàn)VGG16 CIFAR10數(shù)據(jù)集方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • 在Python的Django框架中編寫錯誤提示頁面

    在Python的Django框架中編寫錯誤提示頁面

    這篇文章主要介紹了在Python的Django框架中編寫錯誤提示頁面,包括傳統(tǒng)的404頁面和設置連接中斷警告等,需要的朋友可以參考下
    2015-07-07
  • 介紹Python中的一些高級編程技巧

    介紹Python中的一些高級編程技巧

    這篇文章主要介紹了介紹Python中的一些高級編程技巧,包括推導師和裝飾器等重要的進階知識點,皆為深入學習Python開發(fā)的必備基本功,需要的朋友可以參考下
    2015-04-04
  • Python之os操作方法(詳解)

    Python之os操作方法(詳解)

    下面小編就為大家?guī)硪黄狿ython之os操作方法(詳解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • python函數(shù)的兩種嵌套方法小結

    python函數(shù)的兩種嵌套方法小結

    這篇文章主要介紹了python函數(shù)的兩種嵌套方法小結,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-01-01
  • PyTorch環(huán)境安裝的圖文教程

    PyTorch環(huán)境安裝的圖文教程

    本文主要介紹了PyTorch環(huán)境安裝的圖文教程,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-04-04
  • 淺析Python的命名空間與作用域

    淺析Python的命名空間與作用域

    這篇文章主要介紹了Python的命名空間與作用域的相關資料,幫助大家更好的理解和學習python,感興趣的朋友可以了解下
    2020-11-11
  • Python基礎教程之名稱空間以及作用域

    Python基礎教程之名稱空間以及作用域

    變量是擁有匹配對象的名字(標識符),命名空間是一個包含了變量名稱們(鍵)和它們各自相應的對象們(值)的字典,下面這篇文章主要給大家介紹了關于Python基礎教程之名稱空間以及作用域的相關資料,需要的朋友可以參考下
    2022-01-01
  • Python中np.where()的使用方式

    Python中np.where()的使用方式

    這篇文章主要介紹了Python中np.where()的使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-02-02

最新評論