Amazon web services Amazon DynamoDB中是否有类似文件夹的层次结构
我是Amazon DynamoDB的新用户,当我使用DynamoDB时,我发现我只能创建表,而不能创建数据库(就像MySQL中的数据库)Amazon web services Amazon DynamoDB中是否有类似文件夹的层次结构,amazon-web-services,amazon-dynamodb,Amazon Web Services,Amazon Dynamodb,我是Amazon DynamoDB的新用户,当我使用DynamoDB时,我发现我只能创建表,而不能创建数据库(就像MySQL中的数据库) AmazonDynamodb中是否有类似于文件夹或数据库的层次结构系统,以便我可以将一组表放入一个文件夹(或数据库)中,从而使DynamoDB组织良好? 实际上,DynamoDB中没有文件夹,您的AWS将按每个帐户拥有它。但是您可以在不同的区域创建表 如果您计划将DynamoDB用于多个应用程序 创建新帐户(此方法的优点是,如果帐户是新的,您将获得两个应用程序
AmazonDynamodb中是否有类似于文件夹或数据库的层次结构系统,以便我可以将一组表放入一个文件夹(或数据库)中,从而使DynamoDB组织良好?
实际上,DynamoDB中没有文件夹,您的AWS将按每个帐户拥有它。但是您可以在不同的区域创建表 如果您计划将DynamoDB用于多个应用程序
DynamoDB本身没有这种层次结构。 无论如何,如果它适合您的目的,您可以将表名设置为“$foldername_$tablename”。如果您以自动化的方式管理表,这是非常容易的,但是我认为如果您需要手动执行此操作,这可能会很麻烦 例如:
从boto.dynamodb2导入连接\u到\u区域
从boto.dynamodb2.table导入表
用户\表=表(用户+表名,方法1有些不切实际,在使用其他AWS服务(如CloudWatch)来监控资源的使用情况时会引起头痛,尤其是在您有多个应用程序的情况下。方法2会导致不同应用程序之间出现不同的延迟,如果应用程序多于区域。更好的方法是@matteo所描述的方法:根据表的用途命名表,如“TestUsers”、“ProdUsers”等@PavelSafronov,这是我在第三点中提到的。问题不是这些方法的优缺点……我看不出有任何理由投反对票。。
from boto.dynamodb2 import connect_to_region
from boto.dynamodb2.table import Table
users_table = Table(user+'_'+table_name, # <---this is what I mean
connection = connect_to_region(db_region,
aws_access_key_id=id,
aws_secret_access_key=key))