本节书摘来自华章出版社《大数据系统构建:可扩展实时数据系统构建原理与最佳实践》一书中的第2章,第2.4节,南森·马茨(Nathan Marz) [美] 詹姆斯·沃伦(JamesWarren) 著 马延辉 向 磊 魏东琦 译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
2.4 SuperWebAnalytics.com的完整数据模型
本节旨在用SuperWebAnalytics.com示例将本章的所有内容联系起来。我们将从图2-17开始,它包含了适合我们目标的一个图模式。
图2-17 SuperWebAnalytics.com的图模式,其中有两种节点类型:人和页面。人节点和它们的属性是有阴影的,用以区分这两类节点
在该模式中有两种类型的节点:人和页面。正如你所看到的,这里有两种截然不同类别的人节点,用以区分有已知标识的人和只能使用Web浏览器cookie识别的人。
该模式中的边相当简单。页面浏览的边发生在人和页面之间的每次独立访问,而当两个人节点代表了相同的一个人时,他们之间就产生了等效边。当一个最初只能通过cookie确认的人在稍后的时间内被完全识别时,就会发生等效边的情况。
属性也是不需要加以说明的。页面有总浏览数,人有基本的人口统计信息(姓名、性别和位置)。
基于事实的模型和图模式的优点之一是,它们可以改变不同类型的数据使其变得可用。图模式为任意不同的数据提供了一个一致的接口,所以很容易吸收新类型的信息。通过定义新的节点、边和属性类型来完成模式添加。由于事实的原子性,这些增加不会影响之前存在的事实类型。