我们的应用程序的简短描述:我们分析.NET程序集并检测它们之间的依赖关系(例如方法调用)。我们将这些依赖项保存在MSSQL服务器数据库中。从代码中的类/方法,我们现在可以找到所有直接和间接依赖关系,并且能够在我们更改接口或实现时找出可能会破坏的代码。
虽然我们充分利用了指数(降低了我们的导入性能,但无论如何都是隔夜运行),但我们仍然存在性能问题。当我们导入同一个程序集的许多版本时,我们有相当多的数据和查询需要几秒钟,这只是不够快(<1.5s是目标)。
由于依赖关系是一种类似图形的结构,我们想知道从MSSQL切换到NoSQL图形数据库是否有帮助。这需要一些时间,所以我们首先希望得到一些外部输入。
如果是,您当然也可以发布推荐的.NET图形数据库: - )
答案 0 :(得分:0)
叫我一个古老的模范,但我会非常小心地进行这样的技术转换 - 正如SO question所示,技术选择相当有限,我认为你冒着将项目转变为“Neo4J”项目,而不是“依赖管理”项目。如果你真的打了缓冲区,那值得考虑,但听起来你应该和你正在讨论的数据量不一样。
我要考虑的第一件事是查看"nested set" model - 这特别解决了在检索给定节点的所有子节点时的性能问题。