这使用什么类别/过滤器结构?嵌套间隔?

时间:2012-11-01 20:05:20

标签: matrix hierarchical-data categories nested-sets websphere-commerce

你可以在他们的类别链接上看到很明显,他们的URL中唯一重要的部分是URL本身末尾附近的小哈希。

例如,在加热/冷却下找到的热水器类别是: http://www.lowes.com/Heating-Cooling/Water-Heaters/_/N-1z11ong/pl?Ns=p_product_avg_rating|1

在Pumbing下找到的热水器类别是: http://www.lowes.com/Plumbing/Water-Heaters/_/N-1z11qhp/pl?Ns=p_product_avg_rating|1

话虽如此,显然他们的结构可能是许多不同的东西...... 但我唯一能想到的是它是一个十六进制字符串,它被解码成一个数字和分母,但我无法弄明白......

显然,由于某些原因,对他们进行模糊处理很重要吗?

有什么想法吗?

更新
起初我以为它是标准数字/ denom之类的某种base16 / hex转换?或节点的ID和它的邻接?

有没有人有足够的经验来帮助你?

1 个答案:

答案 0 :(得分:0)

他们正在IBM WebSphere Commerce之上。但是,这里没有任何幻想。字母数字标识符N-xxxxxxx是简单的节点标识符,它们本身不捕获层次结构;结构(父节点和直接子节点)在节点数据本身内编码,并且有这种效果的迹象(见下文)。它们不需要嵌套间隔(集合),它们的用户界面不会暴露正常导航期间一次超过一个级别。

以Lowe's为例。

如果您查看cookie(WC_xxx)并查看它们从(.../wcsstore/B2BDirectStorefrontAssetStore/...)提供的内容,您知道它们正在WebSphere Commerce上运行。在其列表页面上,/_/之前的所有内容都用于SEO目的。字母数字标识符是固定长度的base-36(尽管在应用过滤器时会添加其他Zxxxx个组 - 但是大写Z之后的所有内容都只记录过滤状态。 )

假设您写了一个小脚本来清点Lowe目前在其网站上的所有3600个左右类别。你会得到这样的东西:

N-1z0y28t /Closet-Organization/Wood-Closet-Systems/Wood-Closet-Kits
N-1z0y28u /Closet-Organization/Wood-Closet-Systems/Wood-Closet-Towers
N-1z0y28v /Closet-Organization/Wood-Closet-Systems/Wood-Closet-Shelves
N-1z0y28w /Closet-Organization/Wood-Closet-Systems/Wood-Closet-Hardware
N-1z0y28x /Closet-Organization/Wood-Closet-Systems/Wood-Closet-Accessories
N-1z0y28y /Closet-Organization/Wood-Closet-Systems/Wood-Closet-Pedestal-Bases
N-1z0y28z /Cleaning-Organization/Closet-Organization/Wood-Closet-Systems
N-1z0y294 /Lighting-Ceiling-Fans/Chandeliers-Pendant-Lighting/Mix-Match-Mini-Pendant-Shades
N-1z0y295 /Lighting-Ceiling-Fans/Chandeliers-Pendant-Lighting/Mix-Match-Mini-Pendant-Light-Fixtures
N-1z0y296 /Lighting-Ceiling-Fans/Chandeliers-Pendant-Lighting/Chandeliers
...
N-1z13dp5 /Plumbing/Plumbing-Supply-Repair
N-1z13dr7 /Plumbing
N-1z13dsg /Lawn-Care-Landscaping/Drainage
N-1z13dw5 /Lawn-Care-Landscaping
N-1z13e72 /Tools
N-1z13e9g /Cleaning-Organization/Hooks-Racks
N-1z13eab /Cleaning-Organization/Shelves-Shelving/Laminate-Closet-Shelves-Organizers
N-1z13eag /Cleaning-Organization/Shelves-Shelving/Shelves
N-1z13eak /Cleaning-Organization/Shelves-Shelving/Shelving-Hardware
N-1z13eam /Cleaning-Organization/Shelves-Shelving/Wall-Mounted-Shelving
N-1z13eao /Cleaning-Organization/Shelves-Shelving
N-1z13eb3 /Cleaning-Organization/Baskets-Storage-Containers
N-1z13eb4 /Cleaning-Organization
N-1z13eb9 /Outdoor-Living-Recreation/Bird-Care
N-1z13ehd /Outdoor-Living
N-1z13ehn /Appliances/Air-Purifiers-Accessories/Air-Purifiers
N-1z13eho /Appliances/Air-Purifiers-Accessories/Air-Purifier-Filters
N-1z13ehp /Appliances/Air-Purifiers-Accessories
N-1z13ejb /Appliances/Humidifiers-Dehumidifiers/Humidifier-Filters
N-1z13ejc /Appliances/Humidifiers-Dehumidifiers/Dehumidifiers
N-1z13ejd /Appliances/Humidifiers-Dehumidifiers/Humidifiers
N-1z13eje /Appliances/Humidifiers-Dehumidifiers
N-1z13elr /Appliances
N-1z13eny /Windows-Doors

注意条目大部分是顺序的(它是顺序标识符,而不是散列),大多数情况下并不总是组合在一起(标识符反映了时间顺序而不是结构,它捕获插入顺序,这发生在单个或多个批次中,有时几年和成千上万的标识符,在数据库的另一端),并注意“父”节点总是他们的孩子之后,有时是在洞之后。这些都是告诉我们,当添加和/或删除类别时,会重写其相应父节点的新版本,并最终删除旧的,取代的或删除的版本。

如果您认为还有更多需要了解的信息,您可能需要进一步向WebSphere Commerce专家询问Lowe可能专门用于其N-xxxxxxx目录的内容(尽管我怀疑它不是90%) + custom。)FWIW我相信今年早些时候Home Depot(他们似乎也在使用WebSphere)upgraded to version 7


更新约书亚提到了Endeca,在这种情况下,确实是Endeca(那些N-xxxxxxx标识符)在Websphere背后使用(尽管我相信自从收购Endeca Oracle之后SUN ^ H ^ H ^ Htheir拥有自己的Java EE“Endeca Server”平台。)所以尽管外表不是真正的90%定制工作(演示文稿和他们的javascripts都是大量定制的,但这是冰山一角。)你应该是能够use Solr as a substitute