如何将MS SQL表转换为DynamoDB表?

4

我是亚马逊DynamoDB的新手,我有八个MS SQL表需要迁移到DynamoDB。

我应该使用哪个过程来转换和迁移数据库架构和数据?


1
一般来说,将为关系型数据库系统设计的表转换为适合基于NoSQL的系统的表需要通过去规范化(至少)重新设计系统的某些方面,这不适合自动转换。 - JaredHatfield
@JaredHatfield 有没有什么好的参考资料可以学习如何做到这一点? - Mauricio Gracia Gutierrez
2
可能会有所帮助,请查看:https://d0.awsstatic.com/whitepapers/migration-best-practices-rdbms-to-dynamodb.pdf - Johnny Wu
@JohnnyWu,这是一个很好的资源,请将其发布为答案以便给你信用。谢谢。 - Mauricio Gracia Gutierrez
1
AWS在其YouTube频道上发布了许多优质视频,我建议您去看一下:https://www.youtube.com/user/AmazonWebServices - JaredHatfield
@JaredHatfield 非常感谢,如果您发布一个带有特定链接的答案,我会给您积分/信用。谢谢。 - Mauricio Gracia Gutierrez
1个回答

7
我在一年前开始将应用程序从 SQL 迁移到 DynamoDB 时遇到了同样的问题。我不确定是否有自动化工具,但我可以分享我们为迁移所做的内容:
1. 检查您现有的数据类型是否可以映射 / 需要更改为 DynamoDB。您可以将一些需要较少更新的表合并为带有 List 和 Map 类型的单个项目,或者如果需要,则使用 Set。 2. 最重要的是检查所有现有查询。这将是您设计 DynamoDB 表时需要的核心信息。 3. 确保适当分配散列键。 4. 为搜索和排序目的使用 GSI 和 LSI(仅投影所需的属性,这将节省费用)。
以下是一些可以节省费用的要点:
  1. 如果您的表格读取频率较高,请尝试使用一些缓存机制;否则,请准备增加表格吞吐量。

  2. 如果您的表格写入频率较高,请实现队列机制,例如SQS。

  3. 保持在管理控制台中检查所有重要表格的状态。他们提供了不同的矩阵,可以帮助您管理表格的吞吐量。

我撰写了一篇博客文章,其中包括从关系型数据库迁移到NoSQL数据库时遇到的所有挑战。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接