繁体   English   中英

如何将现有的关系数据库模型转换为适合无sql数据库的模型(如Mongo DB或Amazon Dynamo DB)

[英]how to convert existing relational database model into model suitable for a no sql database (like Mongo DB or Amazon Dynamo DB)

我想修改现有的java购物车应用程序,使其可以使用像Amazon Dynamo DB或Mongo DB这样的nosql数据库......但是传统的MySQL数据库是一个关系数据库 - 它有复合键/主键/外键 - 在相比之下,在Amazon Dynamo DB中,有一个主键,或一个由2个字段组成的复合主键......

我有关系数据库的详细数据模型...现在我如何转换它,以便我在Amazon Dynamo DB中有一个能够使应用程序与Dynamo DB一起工作的数据库(即没有Sql数据库)? 这样做时是否有任何必须记住的最佳做法/预防措施? 这会涉及到重写应用程序代码的大量工作吗? 或者我可以在数据库级别自己处理所有更改,而无需修改应用程序的逻辑? 此外,是否有任何工具可以完成大部分/大部分工作?

没有自动化的方法。 像MongoDB这样的NoSQL数据库不像MySQL一样映射数据结构。 存在不同的性能特征以及存储数据的不同方式。 在某些情况下,您将两个SQL表合并到一个集合中,您只需将连接的数据包含在同一文档中。

如何以及何时这样做,一切都取决于您在逻辑上如何对数据进行分组,但同样取决于您对数据的工作量。 例如,对于大量读取和少量写入,您可能会以不同于大量写入和少量读取的情况存储数据。

除了必须重新从应用程序到数据库的接口之外,您还必须重新构建数据模型。 这将与设计SQL结构一样多,并且最好考虑如何在SQL中执行它。 NoSQL vs SQL是两个完全不同的野兽,需要同样对待它们!

这是一个开始: http//mongify.com/它不是一个“全自动”解决方案,但看起来它可能是一个有用的工具,至少可以用作逆向工程SQl应用程序的“轮廓” MongoDB应用程序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM