主题:使用NOSQL将非常复杂的遗留客户端服务器应用程序迁移到启用SAS的web版本。
我们计划将我们的两个系统从RDBMS迁移到NOSQL产品。我们正处于决定是采用完整的NOSQL还是混合实现的阶段?
由于系统当前系统的表计数很大,在表、许多触发器、存储过程和约束之间存在着复杂的关系。我们知道,迁移是不容易的,因为很多特定于DB或SQL的函数、组按、聚合函数、复杂联接、子/内部查询、限制、排序(order )以及未使用的内容也在使用!所以这是个艰难的局面。
数据可以在几百个结核病中增长,而且还会继续增长,我们需要以下几点:
我遇到了一个RDBMS,它与NOSQL竞争,也就是VOLTDB,你们有人试过吗?
我认为Neo4j、Cassandra或HBase可以完成这项工作,我已经读过,它将在应用程序级别上增加大量代码行,以取代SQL,但我们同意它,但在实现SQL/RDBMS方面,它不应该降低性能,因为它是我们的KSF (关键成功因素),而没有单一的失败点是Hygine因素。:)
轻松地添加节点来管理可伸缩性也会有帮助。
考虑迁移ERP、CRM或EMR这样的系统,WEB上有几十万用户。
您的投入将是宝贵的,谢谢提前。
发布于 2011-11-01 21:58:33
使用用Erlang编写的NoSQL (例如,Riak,CouchDB),就像Erlang多年来的可靠性一样
不存在使用SQL或不带SQL的零停机时间。
通过对分布节点(在不同的电网中)进行法定量读写,不会很容易地实现单个故障点。
没有任何NoSQL功能集将取代ACID事务。VoltDB不是NoSQL,它是内存DB中的SQL,所以请准备好内存的TBs。
大多数现代NoSQL解决方案将允许您完成您可以使用关系数据库管理系统执行的大部分仓库任务。但你会付出没有酸和痛苦的聚集。再说一遍,看看Riak和CouchDB,因为它们本质上也是容错的,所以至少您不必担心这一点。
的更快性能
快er比什么?如果进行复杂聚合,SQL将比任何NoSQL快99.99%。如果有合适的缓存量,并且取决于您的仲裁量(有多少节点应该在一次写入中返回成功),NoSQL的写入速度可能相当快。例如,Riak做了一个谷歌的LevelDB可插拔后端,这是疯狂的快速写。
说了那么多。除非真的有必要,否则不要迁移到NoSQL。如果您真的需要,首先从最不重要的(最好是小的)组件开始,因为这是一个思想转变,并且需要重新开发。
https://stackoverflow.com/questions/7963740
复制相似问题