Solr:将类别数据和产品数据拆分为不同 cores/instances?

Solr: split category data and product data over different cores/instances?

我有一个网上商店,有多个不同的产品类别。 对于每个类别,我都有描述、元数据、图像和一些更多类别特定数据。 现在,我的数据-config.xml 如下所示。

但是,我认为通过这种方式我可以为每个产品单独索引所有类别特定数据,因此占用的 space 比需要的多得多。 我现在正在考虑将类别特定数据的索引和存储移动到单独的 solr core/instance,这样我基本上将产品特定数据和类别数据分开了。

这个推理正确吗?将特定于类别的数据移出此 core/instance 是否更好?

<document name="shopitems">
    <entity name="shopitem" pk="id" query="select * from products" >        
        <field name="id" column="ID" />
        <field name="articlenr" column="articlenr" />           
        <field name="title" column="title" />

        <entity name="catdescription" query="select 
            pagetitle_de as cat_pagetitle_de,pagetitle_en as cat_pagetitle_en
            ,description as cat_description
            ,metadescription as cat_metadescription 
            FROM products_custom_cat_descriptions where articlegroup = '${shopitem.articlegroup}'">
        </entity>
    </entity>
</document>

一般来说,如果像您所做的那样扁平化(去规范化)所有内容,您的实施会更容易。如果您在不同的核心中分离类别,Solr 将变得更难使用——您将需要额外的查询、额外的客户端代码、分面将不会那么容易工作,等等——所有这些都会导致性能下降,最重要的是额外的实施困难。

从你给出的数字来看(保持在 1GB 索引大小?它不是那么大),我肯定不会采用拆分类别数据的方式,这会让你的生活更加艰难,而且没有太大的实际收益。