21、高级数据建模与遍历开发指南

高级数据建模与遍历开发指南

1. 高级数据建模技术

1.1 数据反规范化考量

在处理诸如 “我附近有哪些餐厅?” 这样的问题时,需要先找到用户的个人顶点,然后扫描所有餐厅顶点以确定该位置的餐厅。不同数据库虽有一些优化手段(如地理空间数据索引),但其可用性和功能因实现而异。

经过比较,在模型中对城市和州数据进行反规范化并无优势,反而可能使模型变差。不过,如果未来需要回答 “这家餐厅在哪里?” 这类问题,则需重新考虑此决策。好在反规范化数据在量化应用程序性能后易于更改。

1.2 关系转换为边

为推荐引擎用例定义边时,首先要确定概念模型中的关系。在概念数据模型中,存在以下关系:
- Person–Writes–Review
- Review(s)-Are About–Restaurant
- Restaurant–Serves–Cuisine

在逻辑数据模型中,添加了城市和州顶点类型,因此还需考虑餐厅与城市、城市与州之间的关系。为表示用户位置,添加了从个人顶点到城市顶点的关系,以表示个人居住的城市和州。整理后的所需关系列表如下:
- Person–Writes–Review
- Person–Lives In–City
- Review–Are About–Restaurant
- Restaurant–Serves–Cuisine
- Restaurant–Within–City
- City–Within–State

将这些关系转换为边标签时,去掉介词以简化图数据模型。

1.3 边的唯

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值