我一直在使用mongodb在电子商务应用程序中工作。现在我计划将我现有的电子商务基础设施与solr集成,以管理产品目录的显示。我的主要想法是结合以下功能: - 分类导航 - 分面 - 地理定位 - 自动建议
这是我想要重新创建的应用程序布局的示例:
目前我在mongodb中有以下收藏:
SetProcessAppId
分类收集:
ctypes
分类
Products: {
"_id" : ObjectId("568887fc14a9962460fbbcbd"),
"date_created" : "2014-10-01T00:00:00Z",
"date_updated" : "2014-10-01T00:00:00Z",
"name" : "Iphone 6 64gb",
"price" : "100",
"summary" : "Iphone 6 64gb",
"delivery" : "Shipment",
"shipment_location" : "USA",
"shipment_weight" : "1",
"shipment_package_quantity" : "1",
"options" : {
"id" : "price-1234567890",
"value" : "111",
"stock_level" : "1",
"currency" : "usd"
},
"attributes" : {
"id" : "atr_1",
"name" : "memory",
"values" : "64gb"
},
"images" : {
"id" : "price-1234567890",
"caption" : "image",
"file" : [
{
"id" : "price-1234567890-1",
"date_uploaded" : "2014-10-01T00:00:00Z",
"length" : "123",
"md5" : "hasg",
"filename" : "price-1234567890-1",
"content_type" : "PNG",
"metadata" : "price-1324567890-1",
"data" : "price-1234567890-1",
"url" : "/images/folder/mongodb/a.png"
}
]
},
"category_id" : "65",
"category_index" : {
"id" : "111",
"sort" : "price"
},
"stock" : {
"id" : "price-1234567890",
"date_created" : "2014-10-01T00:00:00Z",
"date_updated" : "2014-10-01T00:00:00Z",
"parent_id" : "",
"parent" : "111",
"number" : "111",
"quantity" : "11",
"variant_id" : "1",
"variant" : "11",
"last" : "1",
"prev_id" : "1",
"prev" : "1",
"level" : "1",
"reason" : "1",
"description" : "1",
"order_id" : "11",
"order" : "1"
},
"quantity_min" : "1",
"quantity_inc" : "1",
}
Taxonomyterms集合:
{
"_id" : 3,
"date_created" : "2016-01-01T00:00:00Z",
"date_updated" : "2016-01-01T00:00:00Z",
"name" : "Computers",
"slug" : "Computers",
"description" : "Computers",
"meta_description" : "Computers",
"meta_keyword" : "Computers",
"navigation" : "true",
"top_id" : 3,
"top" : "true",
"parent_id" : 2,
"parent" : "Default",
"active" : "y",
"productype" : "simple",
"path" : "Computers",
"categoryids" : "2,3",
"children" : "yes",
}
分类学术语是指分类学。在第一个中,您可以定义主要名称,并在术语中定义与分类法(选项)有关系的术语。例如:分类:名称。分类术语:bob-jose-pedro
有没有人能够阐明我必须做些什么来处理与mongo中提议的集合模式的集成,以便在solr中进行设计:
如何使用分类导航来映射类别。 如何将分类法术语与分面图进行映射。 solr是否为facet提供了一个设置配置区域?
或您认为可能更好的任何不同方法。
答案 0 :(得分:1)
听起来这个电子商务应用程序是定制开发的,而不是托管在可能有Solr连接器的平台上,所以这需要学习很多关于Solr的知识,并且需要进行大量的自定义开发。这个搜索页面。
您的Solr Products集合至少需要包含以下字段:
将您的收藏视为搜索所需的所有产品(及相关)数据的旧式非规范/展平视图。
(a)分类导航:整个虚拟店面中的产品,带有导航导航。
查看Solr的Hierarchical Faceting页面
(b) Faceting :自动提取产品信息,以便客户按颜色,尺寸,品牌,当地可用性和价格进行过滤。
对于所请求的字段的所有值(显示在搜索结果中),Solr将generate facet counts。这意味着您需要为集合中的每个facet-able属性都有一个字段。你必须直接定义/映射这些。