2014-03-19 45 views
2

我有一个数据密集型项目,我最近编写了代码,数据和sp住MS SQL数据库。我最初的估计是数据库将增长到50TB,那么它的增长将会相当稳定。最终的应用程序将执行大量的行级查找和读数,并有很小的db回写百分比。从sql服务器移动到cassandra

考虑到上述情况,建议我应该看一下NoSQL选项,以便扩展到大量的数据和事务处理,并且经过一些研究之后,通向Cassandra的道路(在考虑MongoDB的同时作为第二选择)

我很感激下列一组初始问题的指导意见:

-Does卡桑德拉支持专卖店特效的概念?

- 我能够在单个节点(单个Windows Server)上安装并运行50 TB数据库吗?如何支持/利用单个服务器中的多个CPU(例如:4个CPU)?

- 开源版本能够支持50TB分贝吗?或者我需要购买耳鼻喉科版本?

问候, -r

回答

3

是否卡桑德拉支持专卖店特效的概念?

Cassandra不支持存储过程。但是,有一个称为“准备语句”的功能,允许您提交一次CQL查询,然后使用不同的参数执行多次。但是,您可以使用预准备语句完成的一些事情仅限于常规CQL。特别是你不能做循环,条件语句或其他有趣的事情。但是,您确实获得了一些防范注入攻击的措施,并节省了多次编译。

我可以在单个节点(单个Windows Server)上安装并运行50 TB数据库吗?

我不知道任何会阻止你运行一个节点上的一个50TB的数据库,但你RAM /存储比你可能需要大量的内存来让事情变得比较顺利,很可能是非常低从而影响您有意缓存磁盘数据的能力。但是,不建议在Windows上运行生产设置。 Cassandra使用一些Linux特定的IO优化,并在Linux上进行了更彻底的测试。像你这样的建议很可能在Windows上未经测试。

Cassandra是否支持/利用单个服务器中的多个CPU(例如:4个CPU)?

将开放源码的版本能够支持50TB的数据库?或者我需要购买耳鼻喉科版本?

Apache发行版没有任何使用限制(如果您仔细想想,它在开源项目中没有任何意义)。Community Edition的DataStax免费版本也没有。

+0

来自另一个论坛的DBA向我提供了以下评论,这些评论对Cassandra(et al)有效吗? “按照这种方式分解,大多数NoSQL解决方案在收集数据方面非常出色,但并不擅长报告。因此,如果您主要关注的是集合,NoSQL可能是一种可行的替代方案,尤其是在我们收集数据的过程中到50tb阶段的操作,但在此之后,只要您希望运行一个以除HADOOP的ID /值对或其他NoSQL解决方案之外的任何方式切换数据的查询,您都会非常卡住“。 – user3435782

+0

这似乎是正确的。什么是真实的是,你不能运行任意查询。通过主键选择一行总是很快;您还可以通过设计表模式以使特定搜索快速运行(您也可以在多个表中存储相同的数据以支持多个查询),从而使每个表可以快速运行一个特定的非主键查询(有时候是一对)。然后,如果你想要执行连接或做更复杂的切片,你必须使用Hadoop,这是糖蜜慢。 –

+0

谢谢你的澄清丹尼尔。 – user3435782

相关问题