database - NoSQL/DynamoDB : attribute or object?

标签 database amazon-dynamodb nosql

我想知道以下情况之间是否存在任何性能差异:

案例一

{
  id: 1,
  backgroundColor: 'red',
  font: 'Arial' 
}

案例二

{
    id: 1,
    style: {
        backgroundColor: 'red',
        font: 'Arial'
    }
}

我更喜欢第二种情况的结构:item.style.font。与第一种情况相比,它有什么缺点吗?

此外: 使用快捷方式(bgColor 而不是 backgroundColor)是否有所不同,还是 DynamoDB 生成哈希?

提前致谢!

最佳答案

它们之间有很大的区别:

本地和全局二级索引

您只能使用顶级属性创建索引。所以如果你想在 font 上放置一个索引,你应该使用解决方案一。

项目大小

Dynamodb 不会散列属性名称。因此,您的属性名称会直接影响项目的大小。但是,保留有意义的名称很重要。所以不要过多地减少属性名称...


关于扫描和查询过滤器,您可以在子属性上创建条件。

看看这个页面:http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html .它包含有用的信息。

关于database - NoSQL/DynamoDB : attribute or object?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42507189/

相关文章:

sql - 数据库模式的可视化表示

amazon-web-services - 如何更新 DynamoDB 中的所有记录?

nosql - 如何连接 n1ql 中的两个字段?

mysql - MongoDB 或 MySQL

database - 为什么 Swift 2 无法将数据保存到 SQLite 数据库?

database - 在存储过程中动态填充 Oracle 游标

javascript - 返回 Promise.all 不执行提供的 Promise

python-3.x - dynamo 根据条件 boto3 插入或更新

android - Firebase 在线到 Android 离线数据存储

java - 自 API 26 起,如何从现有文件 URI 保存/覆盖文件?