日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

elasticsearch 索引存储深入详解

發布時間:2024/9/20 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 elasticsearch 索引存储深入详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、關于ES index存儲在內存的問題?

(1)早期ES1.X版本對ES索引存儲介紹:

原文地址:?
https://www.elastic.co/guide/en/elasticsearch/reference/1.4/index-modules-store.html?
ES1.X存儲模塊可以控制索引數據的存儲方式,索引可以存儲在內存和磁盤上。使用內存方式可以得到更好的性能,但受限于實際的可用的物理內存大小。?
早期ES1.X版本有選項將索引存儲到內存中,但是相比基于mmap的存儲方式,這種方式并沒有改善性能,所以在ES2.X版本中Memory存儲類型已經被刪除。

(2)最新的ES2.X版本(截止:2016-08-08)索引存儲介紹:

原文地址:?
https://www.elastic.co/guide/en/elasticsearch/reference/current/index-modules-store.html?
ES2.X版本中該Memeory選項已經被刪除。?
現在ES2.X中在內存中映射索引使用mmap 系統調用。?
并且ES的大牛也都推薦就索引存儲而言,使用缺省默認值default_fs。

2、ES2.X文件系統存儲類型

基于文件系統的存儲是默認索引存儲方式。有不同的實現或存儲類型。最好的一個操作系統的自動選擇是:mmapfs使用在Windows的64bit系統上,simplefs使用在windows的32bit系統上,除此之外默認是用(hybrid niofs 和 mmapfs)。

可以通過修改配置文件elasticsearch.yml來指定存儲類型:?
index.store.type: niofs

當然也可以在創建索引的時候指定:

curl -XPUT localhost:9200/my_index -d '{"settings": {"index.store.type": "niofs"} }';
  • 1
  • 2
  • 3
  • 4
  • 5

下面是所有支持的不同存儲類型:

(1) Simple FS(簡單文件系統)

Simplefs類型是一個簡單的實現隨機訪問文件的文件存儲系統(映射到Lucene SimpleFsDirectory的)。該實現的并發性能較差(多線程是個瓶頸)。當你需要將索引持久化,最好使用niofs。

(2) NIO FS(NIO文件系統)

niofs類型是通過NIO將分片索引文件寫到文件系統上(映射到Lucene NIOFSDirectory)。它允許多線程同時讀取文件。不建議在Windows系統上使用,由于SUN JAVA實現上的一個錯誤。

(3) MMap FS(內存映射文件系統)

mmapfs類型存儲分片索引到文件系統上(映射到Lucene MMapDirectory)通過映射文件到內存中(MMAP)。?
內存映射的過程中將劃分出與被映射文件大小一樣的虛擬內存空間。使用這個類之前,請確保您有足夠的虛擬地址空間。

Linux下虛擬內存設置:

# sysctl -w vm.max_map_count=262144
  • 1

永久生效:

update the vm.max_map_count setting in /etc/sysctl.conf.# echo "vm.max_map_count=262144" >> /etc/sysctl.conf && sysctl -p
  • 1
  • 2

(4)Hybrid MMap / NIO FS(缺省值, default_fs)

default_fs默認的類型是NIO FS和MMapFS,它將為每個類型的文件選擇最好的文件系統。 目前,只有Lucene的term 路徑和DOC值的文件被存儲器映射,以降低運行系統的影響。所有其他文件都使用Lucene NIOFSDirectory打開。如果你的term字典很大,地址空間設置(部分叫做“虛擬內存編輯“)也可能適用,。

3、ES索引存儲小結

一句話總結:?
在2.X版本,用戶無需關注索引存儲在內存中還是存儲在硬盤中。使用默認的存儲設置default_fs,以達到最優性能?
在Windows的64bit系統上使用 mmapfs ;?
在windows的32bit系統上使用 simplefs ;?
除此之外默認使用 default_fs (hybrid niofs 和 mmapfs),如Linux系統。

4、細節討論

https://discuss.elastic.co/t/how-to-set-elasticsearch-index-store/57556/2

——————————————————————————————————?
更多ES相關實戰干貨經驗分享,請掃描下方【銘毅天下】微信公眾號二維碼關注。?
(每周至少更新一篇!)


來源:http://blog.csdn.net/laoyang360/article/details/52166095

總結

以上是生活随笔為你收集整理的elasticsearch 索引存储深入详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。