簡體   English   中英

在Solr中存儲類別信息

[英]Store category information in Solr

我的solr數據庫中存儲了產品信息。 產品可以屬於多個類別。

現在,我想將有關這些類別的信息存儲在屬於這些類別的產品中。 (還有其他方法嗎?)

因此,假設產品A屬於類別C1和C2,且ID為I1和I2。 現在如何在產品A中存儲I1到C1的映射? 這樣做的模式應該是什么?

但是,如果僅存儲ID,名稱和其他數據(例如URL)的列表,則每個ID到名稱或URL的映射都將丟失。 像這樣:

<field name="category_ids" type="tints" indexed="true" stored="true"/>
<field name="category_names" type="strings" indexed="true" stored="true"/>

那么我應該如何存儲文件呢?

您所描述的工作方式-Solr將保持字段之間的順序相同,因此您可以假定字段category_ids中的第一個值與字段category_names的第一個值相對應。 我們使用它在幾個多值字段中為更復雜的對象建立索引。

第二種解決方案是使用類別ID在中間件中查找實際的類別信息,並在數據庫中查詢相關信息。 如果名稱更改,這將避免必須為一個類別的所有文檔重新編制索引(除非您使用名稱進行查詢,否則無論選擇哪種解決方案,都需要重新編制索引)。

第三種解決方案是讓一個字段同時包含ID,名稱和序列化名稱(例如3;Laptops或JSON),並且僅存儲該字段而不對其建立索引(並使用經過索引的未存儲字段進行實際搜索)。

您也可以將子文檔用於此類操作,但我個人認為這會給您帶來不必要的復雜性。

暫無
暫無

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

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