azure - Azure 表存储数据建模注意事项
问题描述
我有一个用户列表。用户可以使用用户名或电子邮件地址登录。
作为 azure 表存储的初学者,这就是我为快速索引扫描的数据模型所做的。
PartitionKey RowKey Property
users:email jacky@email.com nickname:jack123
users:username jack123 email:jacky@email.com
因此,当用户通过电子邮件登录时,我会PartitionKey eq users:email
在 azure 表查询中提供。如果是username
,Partition eq users:username
。
由于似乎无法模拟contains
或like
在天蓝色表查询中,我想知道这是否是为 1 个用户存储多行数据的正常做法?
解决方案
由于似乎不可能在天蓝色表查询中模拟包含或类似,我想知道这是否是为 1 个用户存储多行数据的正常做法?因为似乎不可能模拟包含或类似天蓝色表查询,我想知道这是否是为 1 个用户存储多行数据的正常做法?
这是一个完全有效的做法,实际上是推荐的做法。本质上,您必须确定可能查询表存储的属性,并以某种方式将它们用作 和 的PartitionKey
组合RowKey
。
请参阅Guidelines for table design
以获取更多信息。从这个链接:
考虑存储实体的重复副本。表存储很便宜,因此请考虑多次存储相同的实体(使用不同的键)以实现更高效的查询。
推荐阅读
- sql - 如何在 sql 中分组并显示最小和最大时间而不在分组字段上显示不同的结果
- python - 我在 python opp 中的多重继承中遇到类型错误
- azure - 为 ARM 中的生产 Azure 函数槽保留当前 AppSettings
- django - 如何优化我的代码和数据库访问?
- algorithm - 汽车加油问题(贪心算法),O(n) 复杂度的嵌套 while 循环
- kubernetes - 如何限制普罗米修斯中的目标数量
- javascript - 在 Sequelize 中将 then promise 用于链式 promise 时未定义对象
- coq - 这个 Coq 证明正确吗?
- python - 没有OpenCV库函数如何在浏览器中显示和修改本地存储的视频?
- html - 如何不获取由换行符引起的空白