我对NoSQL领域还比较新。我试图理解不同图形数据库的功能和差异。我的理解是Orient和Arango使用文档作为顶点(以及边,对吧?)。我知道在Titan和Neo中,顶点和边可以有属性,这些属性是键值对。我认为限制值为原始类型很有道理(虽然我不确定是否严格如此)。我想知道你可以将什么作为值。您的值可以是原始数组吗?它可以是另一个哈希吗?等等。如果值相当自由,则我想知道Titan或Neo在数据结构方面与Orient和Arango之间的区别。
编辑:人们问我的用例-我的公司开发了一套工具链,可以从UML模型中创建工作应用程序(GUI和数据库)...在几秒钟内。我们使用这些工具来模拟许多不同的域(无论客户要求什么)并为其开发解决方案。现在,工具使用ORDBM。这有其缺点,其中一些是致命的,如果我对我们应该如何发展的想法有任何意义的话。我正在尽职调查探索替代方案。我可以接受没有完美的东西,并且我们选择的任何内容都不会成为每个客户用例的最佳选择。由于涉及自动化,我们可能不会在每个案例中完全利用特定数据库所提供的每个功能。因此,我想决定哪个数据库适合我们的工具链。(还要注意,这里提出的原始问题只是许多决定因素之一。)哦,是的,FWIW,我们使用Ruby。我们可以转移到Python或Groovy或其他一些东西,但这将远非易事。
编辑:人们问我的用例-我的公司开发了一套工具链,可以从UML模型中创建工作应用程序(GUI和数据库)...在几秒钟内。我们使用这些工具来模拟许多不同的域(无论客户要求什么)并为其开发解决方案。现在,工具使用ORDBM。这有其缺点,其中一些是致命的,如果我对我们应该如何发展的想法有任何意义的话。我正在尽职调查探索替代方案。我可以接受没有完美的东西,并且我们选择的任何内容都不会成为每个客户用例的最佳选择。由于涉及自动化,我们可能不会在每个案例中完全利用特定数据库所提供的每个功能。因此,我想决定哪个数据库适合我们的工具链。(还要注意,这里提出的原始问题只是许多决定因素之一。)哦,是的,FWIW,我们使用Ruby。我们可以转移到Python或Groovy或其他一些东西,但这将远非易事。