有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

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

我想修改现有的java购物车应用程序,使其能够与nosql数据库(如Amazon Dynamo DB或Mongo DB)一起工作。。。但是传统的MySQL数据库是一个关系数据库——它有复合键/主键/外键——相反,在Amazon Dynamo数据库中,要么只有一个主键,要么有一个由两个字段组成的复合主键

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


共 (2) 个答案

  1. # 1 楼答案

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

    如何以及何时这样做,完全取决于您在逻辑上如何对数据进行分组,但同样取决于您对数据施加的工作负载种类。例如,对于大量读取和少量写入,存储数据的方式可能与大量写入和少量读取不同

    除了必须重做从应用程序到数据库的接口外,还必须重新构建数据模型。这将是与设计SQL结构一样多的工作,而且它最有效而不是思考如何在SQL中实现它。NoSQL和SQL是两个完全不同的野兽,需要区别对待

  2. # 2 楼答案

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