簡體   English   中英

我可以使用 elasticsearch 僅存儲非結構化數據嗎?

[英]Can I use elasticsearch to store only unstructured data?

沒什么可問的,但對 Elasticsearch 來說是新的。 我遇到的大多數材料,人們首先創建一個客戶端,然后通過提供映射來創建索引。

我可以在沒有任何映射的情況下做到這一點嗎? 例如,如果我有一個Twitter索引。

我有 3 種不同的結構,一種用於推文,一種用於用戶,一種用於私人消息。 我可以將所有文檔(可能屬於這三種類型中的任何一種)存儲在同一個索引下嗎?

注意:這是一個幫助我理解的假設示例。 我不想要任何代碼。

你能行的。 如果你這樣做會發生什么? ES 根據數據對字段進行默認類型轉換。

如果你有一個字符串數據,它將被存儲為text 在這種情況下,默認分析器將應用於數據。 如果您想了解更多, 默認分析器

  1. 你的數據中可能there are amazing creatures 但是當您搜索 doc contains amaze 時,您可能會期望這些數據也是其中的一部分。 你不會得到它。
  2. 語音處理
  3. 號碼處理
  4. IP處理
  5. Url 搬運
  6. Email處理

更多的案件無法妥善處理。 如果您的用例滿足默認映射,那么您可以提前使用 go 並使用。

稍后要更新映射,您需要重新索引數據。

首先,您可以只添加一個文檔,ES 會為您創建索引和映射。 但這只有在您的集群級別設置時才有可能

 "action.auto_create_index": "false"

設置為 true,默認情況下為 true,除非有人明確將其更新為 false

PUT _cluster/settings
{
  "persistent": {
    "action.auto_create_index": "false"
  }
}

此外,即使您計划擁有一些特定的數據類型,也可能存在一些問題,例如擁有通用數據類型。

我有一篇關於這些設置和自動映射如何工作以及它的優缺點的詳細文章

https://xyzcoder.github.io/2020/08/03/elastic-search-mapping-and-index-creation.ZFC35FDC70D5FC69D26E8883A822C7A

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM