Database 为数百万条记录扩展数据库

Database 为数百万条记录扩展数据库,database,nosql,scalability,Database,Nosql,Scalability,我们正在开发一个应用程序,它可以处理一些代码并每次(数百万!)输出大量行。我们希望将这些行保存在数据库中,因为处理本身需要几个小时才能完成 1。保存这些记录的最佳方法是什么? 2。NoSql解决方案在这里可用吗? 假设我们每天保存500万条记录,并且可能偶尔从中检索一次。这在很大程度上取决于生成数据后您打算如何使用数据。如果您只通过主键查找,那么NoSQL可能会很好,但是如果您想要搜索或排序数据(或将行连接在一起),那么SQL数据库可能会工作得更好 基本上,NoSQL非常擅长将不透明数据填充到存

我们正在开发一个应用程序,它可以处理一些代码并每次(数百万!)输出大量行。我们希望将这些行保存在数据库中,因为处理本身需要几个小时才能完成

1。保存这些记录的最佳方法是什么?

2。NoSql解决方案在这里可用吗?


假设我们每天保存500万条记录,并且可能偶尔从中检索一次。

这在很大程度上取决于生成数据后您打算如何使用数据。如果您只通过主键查找,那么NoSQL可能会很好,但是如果您想要搜索或排序数据(或将行连接在一起),那么SQL数据库可能会工作得更好

基本上,NoSQL非常擅长将不透明数据填充到存储中并快速检索任何单个项目。关系数据库非常擅长为可能连接在一起或搜索的数据编制索引


任何现代SQL数据库每天都可以轻松处理500万行—磁盘空间更有可能成为瓶颈,这取决于行的大小。我在NoSQL方面做得不多,但如果每天有500万个项目会导致问题,我会感到惊讶。

这取决于您想要存储的数据类型,您能详细说明一下吗?如果数据被整齐地组织到表中,那么您不一定需要NoSQL方法。但是,如果你的数据有一个图形或类似网络的结构,那么你应该考虑一个NoSQL解决方案。如果后者适用于您,那么以下内容可能有助于您对某些NoSQL数据库进行概述:

从何处检索数据、从文件系统检索数据或从何处检索数据?当然,NoSQL可能是一个解决方案。常规数据库也可以。5M没有那么多。我正在从关系数据库检索输入。现在我的问题是,我们把它存储在哪里。仅仅把它放在那里,500万行并不是那么多数据,一个普通的关系数据库可以很好地处理这么多的数据。在我的台式电脑上运行的一些我的dev数据库大约有2000万行,这是没有问题的:noSQL—一个Apache Cassandra节点每天可以处理大约10亿次写入—如果这还不够,那么向集群添加更多节点;-)