在关系数据库RDBMS如何存储树形结构。

13-07-14 banq
         

Storing the tree structures in the RDBMS认为虽然存储树形机构的最好方式是使用Neo4j等图库方式或FlockDB,但是还是提出了关系数据库存储树形结构的几种模式:父子Parent-child Materialized Path和Nested Sets

当对树形结构的元素进行新增或去除父子Parent-child方式比较简单,也就是适合树形结构频繁更新的情况,付出的代价是性能问题。

而如果很少变动树形结构情况下,Materialized Path能获得频繁查询的高性能。当然还有Nested Sets方式,适合各种目录表达,比如产品目录等等,但是难于理解,