【Elasticsearch】【基礎(chǔ)入門

      網(wǎng)友投稿 787 2025-03-31

      一、elasticsearch是什么


      elasticsearch是基于ApacheLucene全文搜索引擎庫實現(xiàn)的一個實時的開源分布式搜索引擎。

      Elasticsearch是一個分布式文檔存儲。Elasticsearch存儲已序列化為JSON文檔的復(fù)雜數(shù)據(jù)結(jié)構(gòu),而不是將信息存儲為列形數(shù)據(jù)行。當(dāng)您在集群中擁有多個Elasticsearch節(jié)點時,存儲的文檔會分布在集群中,并且可以從任何節(jié)點訪問。

      二、Elasticsearch能做什么

      支持實時高效全文檢索,支持實時高效結(jié)構(gòu)化檢索、分析

      支持分布式實時文檔存儲

      支持PB級的結(jié)構(gòu)化或非結(jié)構(gòu)化數(shù)據(jù)

      支持拓展,Elasticsearch可配置并且靈活。

      支持通過RestAPI與應(yīng)用程序進行通信

      三、Elasticsearch怎么安裝(windows環(huán)境)

      需要安裝最新的java版本,因為ES也是java語言編寫的,需要JVM的支持

      下載最新版的Elasticsearch并解壓(選擇適合的操作系統(tǒng)版本,本次選擇windows)

      進入解壓目錄,cd到bin目錄,運行elasticseach.bat文件,查看運行結(jié)果是否成功。

      運行elasticsearch文件成功后,瀏覽器訪問http://localhost:9200/,響應(yīng)結(jié)果如下:

      {

      "name" : "主機名",

      "cluster_name" : "elasticsearch",

      "cluster_uuid" : "yqQn9A1fTzKfR064ypqT9w",

      "version" : {

      "number" : "7.3.2",

      "build_flavor" : "default",

      "build_type" : "zip",

      "build_hash" : "1c1faf1",

      "build_date" : "2019-09-06T14:40:30.409026Z",

      "build_snapshot" : false,

      "lucene_version" : "8.1.0",

      "minimum_wire_compatibility_version" : "6.8.0",

      "minimum_index_compatibility_version" : "6.0.0-beta1"

      },

      "tagline" : "You Know, for Search"

      }

      收到上面的響應(yīng)之后,證明已經(jīng)啟動并運行一個Elasticsearch節(jié)點了。

      如果想搭建一個集群啟動多個節(jié)點則可以修改config目錄下的elasticsearch.yaml文件,文件里面都有詳細的配置說明,修改完yaml配置文件之后重啟elasticsearch就會生效。

      exit退出即可停止elasticsearch服務(wù)

      四、如何在應(yīng)用程序中使用Elasticsearch

      【Elasticsearch】【基礎(chǔ)】入門

      Elasticsearch安裝后,應(yīng)用程序客戶端都可以通過Elasticsearch提供等RestAPI進行與ES通信交互,如通過curl向ES發(fā)送請求;不區(qū)分語言,同時官方也提供了很多不同語言的客戶端庫和插件。比如提供了java相關(guān)的客戶端庫,在寫java程序的時候,只需要依賴這些庫

      一個Elasticsearch請求curl組成:

      curl -X '://:/?' -d ''

      verb:適當(dāng)?shù)膆ttp方法:GET,POST,PUT,HEAD,DELETE

      protocol: http或者https

      host:Elasticsearch集群中任意節(jié)點的主機名,或者使用localhost表示本機

      port: 運行Elasticseach HTTP服務(wù)的端口號,默認是9200

      path:API的終端路徑(例如_count路徑表示返回集群中文檔數(shù)量),path可能包含多個組件,例如_cluster/stats或_nodes/stats/jvm

      query_string:查詢字符串參數(shù)

      body:一個json格式的請求體(如果需要的話)

      配合kibana可視化操作Elasticsearch,簡單高效

      官網(wǎng)下載kibana

      解壓到指定目錄,根據(jù)需要在config目錄下修改kibana.yaml配置文件,如server.port,server.host和連接es的elasticsearch.hosts等參數(shù)

      進入解壓的bin目錄下,執(zhí)行啟動文件,如windows的啟動kibana.yaml

      使用設(shè)置的host+port在瀏覽器上訪問,如http://localhost:5601

      瀏覽器訪問/status路徑可查看狀態(tài),如http://localhost:5601/status

      打開路徑,連接上es服務(wù)后,在kibana頁面上就可以創(chuàng)建es的索引,就可以分析探索你的數(shù)據(jù)了

      對es數(shù)據(jù)進行命令的直接操作可以使用Dev Tools控制臺,通過命令行與es進行操作交互。

      五、Elasticsearce基本概念

      索引index:每個索引是一系列文檔優(yōu)化的集合,相當(dāng)于關(guān)系數(shù)據(jù)庫中的database

      文檔document:每個文檔都是字段的集合,相當(dāng)于關(guān)系數(shù)據(jù)庫中表的行數(shù)據(jù)rows

      類型type:表示一類類似的文檔,相當(dāng)于關(guān)系數(shù)據(jù)中的表table

      字段field:每個字段都是包含key-value鍵值對的數(shù)據(jù),相當(dāng)于關(guān)系數(shù)據(jù)庫中表的列columns

      映射mapping:類似于DB的schema,描述這一個類型type中的所有文檔可能具有的字段或?qū)傩?,以及這些字段的類型,并且描述如何索引和存儲這些字段

      分片shards:是指將索引劃分成多份,每一份就是一個分片,也叫主分片;分片分為兩類:主分片和復(fù)制分片,這些分片都是一個獨立的索引,可以被放置在集群中的任何節(jié)點上,方便數(shù)據(jù)拓展和平衡集群,同時可以復(fù)制分片,復(fù)制分片不會被分配在與主分片所在的節(jié)點上,復(fù)制分片主要作用于故障轉(zhuǎn)移機制。

      節(jié)點node:一個節(jié)點就是一個ES實例,第一個啟動的節(jié)點默認就是master節(jié)點,其余節(jié)點都可以是候選節(jié)點(通過node.master設(shè)置),當(dāng)master節(jié)點崩了,這些候選節(jié)點就有機會選取為master節(jié)點;每個節(jié)點都保存了集群信息的狀態(tài),只有master節(jié)點才能修改集群的狀態(tài)信息。

      Elasticsearch是面向文檔(document oriented)的,它可以存儲整個對象或文檔(document)。然而它不僅僅是存儲,還會索引(index)每個文檔的內(nèi)容使之可以被搜索。在Elasticsearch中,你可以對文檔(而非成行成列的數(shù)據(jù))進行索引、搜索、排序、過濾。

      在Elasticsearch中,文檔歸屬于一種類型(type),而這些類型存在于索引(index)中,我們可以簡單的對比傳統(tǒng)關(guān)系型數(shù)據(jù)庫:

      Relational DB -> Databases -> Tables -> Rows -> Columns

      Elasticsearch -> Indices?? -> Types? -> Documents -> Fields

      六、使用場景

      在應(yīng)用程序或者網(wǎng)站中添加搜索框的場景

      存儲和分析日志、指標(biāo)和安全事件數(shù)據(jù)的場景

      使用機器學(xué)習(xí)實時自動建模的行為數(shù)據(jù)的場景

      使用es作為存儲介質(zhì)自動執(zhí)行業(yè)務(wù)工作流

      使用es作為地理信息系統(tǒng)(GIS)管理、集成和分析空間信息

      使用es作為生物信息學(xué)研究工具存儲和處理遺傳數(shù)據(jù)

      Elasticsearch Java 實時流計算服務(wù) CS

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:Excel怎么做Xbar-R控制圖?Excel中制做SPC Xbar-R控制圖教程
      下一篇:增加版式
      相關(guān)文章
      亚洲人成色7777在线观看| 亚洲AV无码一区二区三区牲色| 亚洲一区二区三区免费在线观看| 亚洲国产成人高清在线观看| 国产亚洲精品第一综合| 久久亚洲AV成人无码国产最大| 亚洲欧洲AV无码专区| 亚洲综合av一区二区三区不卡 | 亚洲国产精品人人做人人爽| 亚洲爆乳大丰满无码专区| 亚洲国产精品自在自线观看| 亚洲av无码专区在线观看下载| 亚洲色成人WWW永久在线观看| 中文字幕亚洲精品无码| 亚洲精品第一国产综合亚AV| 亚洲AV无码一区二区一二区| 国产亚洲精品国产福利在线观看 | 国产精品亚洲五月天高清| 男人的天堂av亚洲一区2区| 亚洲AV成人一区二区三区在线看| 亚洲丰满熟女一区二区v| 国产精品亚洲精品青青青| 亚洲欧好州第一的日产suv| 亚洲熟伦熟女专区hd高清| 亚洲精品国产高清在线观看| 国产产在线精品亚洲AAVV| 精品国产亚洲一区二区在线观看| 亚洲中文字幕久久精品无码APP| 亚洲AV午夜成人片| 亚洲精品国产福利片| 一区二区亚洲精品精华液| 亚洲爆乳无码精品AAA片蜜桃| 国产亚洲视频在线| 国产亚洲精品无码拍拍拍色欲| 亚洲国产成人片在线观看无码| 久久综合亚洲色一区二区三区| 亚洲精品在线播放视频| 亚洲中文无码卡通动漫野外| 国产亚洲成在线播放va| 亚洲热妇无码AV在线播放| 久久精品国产亚洲av高清漫画|