我被要求创建一个简单的Java应用程序,它将从性能的角度测试MySQL和Mongodb(大学项目)。我使用的是一个非常简单的sql架构:
3张桌子:艺术家,专辑和曲目。
关系:一位艺术家有很多专辑,一张专辑有很多专辑。
如何在Mongodb中建模?
答案 0 :(得分:0)
简单的方法是让一个文档包含单个艺术家的所有信息 像这样:
class Track {
int sequence;
String title;
...
}
class Album {
String name;
List<Track> tracks = new ArrayList<>();
}
@Document
public class Artist {
@Id
private String name;
private List<Album> albums = new ArrayList<>();
}
这不是一个糟糕的方法,因为它是一个测试。它还显示了实体/关系和文档模型之间的根本区别。请注意不需要在文档模型中维护关系。另请注意,您不需要提供ID&#39;专辑和曲目。它们只是文档的一部分。
从面向对象的角度来看,这看起来更自然。