【发布时间】:2021-07-28 18:22:14
【问题描述】:
我有一个工作负载,我需要将表迁移到 BigTable 并包含以下信息:
- 社会安全号码 (SSN)
- 每个 SSN 的 600 个分数值。 Scote 的这一数量在未来几年可能会增加。
我们有大约 2.4 亿个 SSN。
必须为在 1000 到数百万个 SSN 范围内寻找 1 到 10 分的查询准备表格。
哪种设计适合这种解决方案?:
选项 A:
- 仅使用 SSN 作为 RowKey
- 将每个分数创建为一列
例子:
行键列
123456789 S1:100 S2:200 S3:300 S4:400 ..... S600:600
234567890 S1:101 S2:201 S3:301 S4:401 ..... S600:601
选项 B:
- 使用 SSN 和 Score 作为 RowKey
- 作为一个Column,我只有一个Score的值
例子:
行键列
123456789#S1 得分:100
123456789#S2得分:200
123456789#S3得分:300
123456789#S4得分:400
.....
123456789#S600 分数=600
234567890#S1 得分:101
234567890#S2 得分:201
234567890#S3 得分:301
234567890#S4 得分:401
.....
234567890#S600 得分:601
【问题讨论】: