2012-07-10 58 views
0

任何人只要有代表最佳的方式帮助建模过滤/查询以下问题域使用图形数据库

  1. 产品可以在商店中出售,P1 - > S1,P2 - > S1,P1 - > S2 ...
  2. 产品只能在商店里根据对存储器的一个例子地理位置(北,南,东...)和位置尺寸(小,中,大)或存储/产品性能的组合销售。这些是限制哪些产品将在商店中销售。

我希望能问,我是店s1我可以卖什么产品?

欣赏的好方法,没有为解决这个问题,我在想一个图形数据库,如Neo4j的是适当的,但使用这些所谓的指针将是有价值的经验有限。

回答

1

你很可能建模的位置和尺寸为节点,商店连接到这些,那么你可以做查询过他们的Cypher,http://docs.neo4j.org/chunked/snapshot/cypher-query-lang.html,看到http://tinyurl.com/d8lnvbm为例

START p=node(1) match p-[:SOLD_IN]->store-[:LOCATED]->l, store-[:CATEGORY]->c 
WHERE l.name="north" AND c.name="big" 
RETURN store 
+0

对不起,延迟回到你身边Peter!感谢这个例子,看起来非常棒,几乎和我们想到的一样:-) – kevj 2012-07-20 17:23:01