Questions tagged «nosql»

5
关系DBMS中的数据越来越大,是时候迁移到NoSQL了吗?
我们创建了一个用于电子学习的社交网络应用程序。这是我们正在实验室中研究的实验项目。在某些案例研究中已经使用了一段时间,并且关系DBMS(SQL Server 2008)中的数据越来越大。现在只有几千兆字节,并且表之间相互连接紧密。性能仍然不错,但是什么时候应该考虑其他选择呢?是性能问题吗?




1
什么是最有效的数据索引技术
众所周知,有一些数据索引技术,被著名的索引应用程序使用,例如Lucene(对于Java)或Lucene.NET(对于.NET),MurMurHash,B + Tree等。对于No-Sql / Object面向数据库(我尝试使用C#编写/试用),您建议使用哪种技术? 我读到有关MurMurhash-2的信息,特别是v3的评论说Murmur非常快。Lucene.Net对此也有很好的评论。但是,它们的内存占用量一般如何?是否有任何有效的解决方案比Lucene或Murmur占用更少的空间(当然,如果更快的话更可取)?还是应该编写特殊的索引结构以获得最佳结果? 如果我尝试编写自己的索引,那么是否存在可接受的良好索引编制规模,例如数据节点的1%或数据节点的5%?任何有用的提示将不胜感激。

2
Neo4j与RDBMS执行时间的比较是否正确?
背景:以下是《图形数据库》一书,其中涵盖了《Neo4j in Action》一书中提到的性能测试: 图中的关系自然形成路径。查询或遍历图涉及以下路径。由于数据模型的本质是面向路径的,因此大多数基于路径的图数据库操作与数据的布局方式高度一致,从而使其极为高效。Partner和Vukotic在他们的《行动中的Neo4j》一书中使用关系存储和Neo4j进行了实验。 比较结果表明,图数据库比关联存储要快得多。Partner和Vukotic的实验试图在社交网络中查找朋友的朋友,最大深度为5。给定随机选择的任何两个人,是否存在连接他们的路径(最多五个关系)?对于包含1,000,000人(每个人约有50个朋友)的社交网络,结果强烈表明,图数据库是连接数据的最佳选择,如表2-1所示。 表2-1。在关系数据库中查找扩展的朋友与Neo4j中的有效查找 Depth RDBMS Execution time (s) Neo4j Execution time (s) Records returned 2 0.016 0.01 ~2500 3 30.267 0.168 ~110,000 4 1543.505 1.359 ~600,000 5 Unfinished 2.132 ~800,000 关系数据库和图形数据库在两个方面(朋友的朋友)都表现良好,足以让我们考虑在在线系统中使用它们。虽然Neo4j查询的运行时间是关系查询的三分之二,但最终用户几乎不会注意到两者之间的毫秒差。但是,到了深度三(朋友的朋友)时,很明显关系数据库不再能够在合理的时间范围内处理查询:完成这三十秒将是完全不可接受的用于在线系统。相比之下,Neo4j的响应时间却相对平稳:执行查询只需几分之一秒,对于在线系统而言绝对足够快。 在深度四处,关系数据库表现出严重的延迟,这使其几乎对在线系统毫无用处。Neo4j的时间安排也略有恶化,但此处的延迟处于响应型在线系统可接受的范围之内。最后,在深度五处,关系数据库仅花费很长时间才能完成查询。相反,Neo4j在大约两秒钟内返回结果。在深度5处,它几乎渗入整个网络,这是我们的朋友:对于许多实际的用例,我们可能会调整结果和时间安排。 问题是: 这是一种合理的测试,可以模拟在社交网络中除了可以找到的东西以外的其他东西吗?(例如,实际的社交网络通常具有大约50个朋友的节点;对于社交网络,“ 富人致富 ”模型似乎更自然,尽管可能是错误的。) 不管模拟的自然性如何,是否有任何理由相信结果不正确或无法再现?
10 databases  nosql  neo4j 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.