Tag: 非关系数据库

关系数据库与非关系数据库有什么区别?

我知道像MySQL,PostgreSQL和MS SQL Server这样的解决scheme是关系型数据库系统,而NoSQL,MongoDB等是非关系型DBMS。 但是,这两种系统有什么区别呢? 外行条件是可取的。 谢谢。

基于文档和基于键/值的数据库之间的区别?

我知道有三种不同的stream行types的非sql数据库。 重点/价值:Redis,东京内阁,Memcached Column Family:Cassandra,HBase 文档:MongoDB,CouchDB 我读了很长一段时间的博客,却没有太多的理解。 我知道关系数据库,并且可以像MongoDB / CouchDB那样处理基于文档的数据库。 有人能告诉我这两个人之间的主要区别是什么?

存储时间序列数据,关系还是非关系?

我正在创build一个系统,使用SNMP以(可能)5分钟的时间间隔轮询设备以获取不同指标(如CPU利用率,磁盘利用率,温度等)上的数据。 最终目标是以时间序列图的forms向系统的用户提供可视化。 过去我使用RRDTool进行了研究,但是由于无限期地存储捕获的数据对于我的项目非常重要,所以我想要更高级别,更灵活地访问捕获的数据。 所以我的问题是: 在查询数据进行绘制时,关系数据库(如MySQL或PostgreSQL)或非关系数据库或NoSQL数据库(如MongoDB或Redis)的性能更好。 相关的 给定一个关系数据库,我会使用一个data_instances表,其中将存储为所有设备测量的每个度量捕获的每个数据实例,其中包含以下字段: 字段: id fk_to_device fk_to_metric metric_value timestamp 当我想在特定设备上为特定度量标准绘制图表时,我必须查询此单一表格以筛选出其他设备,并分析此设备的其他度量标准: SELECT metric_value, timestamp FROM data_instances WHERE fk_to_device=1 AND fk_to_metric=2 这个表中的行数是: d * m_d * f * t 其中d是设备的数量, m_d是所有设备logging的累计度量数 , f是数据被轮询的频率 , t是系统已经收集数据的总时间 。 对于每5分钟logging一次3个设备的10个指标的用户,我们只有不到500万条logging。 索引 没有fk_to_device和fk_to_metric扫描的索引,这个不断扩展的表将花费太多时间。 因此索引上述字段和timestamp (用于创build具有本地化时间段的图)是一项要求。 非关系(NoSQL) MongoDB具有集合的概念,与表格不同,这些可以在没有设置的情况下以编程方式创build。 有了这些,我可以将每个设备的数据存储分区,甚至每个设备的每个数据分区。 我对NoSQL没有经验,也不知道他们是否提供了任何查询性能增强function,如索引,但是前面的段落提出了在NoSQL中存储数据的结构中执行大部分传统的关系查询工作。 未定 具有正确索引的关系解决scheme是否会在一年内减less爬行? 还是NoSQL的基于集合的结构方法(与我存储的数据的心智模型相匹配)提供了明显的好处?

为什么我应该使用基于文档的数据库而不是关系数据库?

为什么我应该使用基于文档的数据库,如CouchDB,而不是使用关系数据库。 在基于文档的数据库比关系数据库更适合的地方是否有典型的应用程序或领域?

下一代数据库

我正在学习传统的关系型数据库(使用PostgreSQL ),并做了一些研究,我遇到了一些新的数据库types。 CouchDB , Drizzle和Scalaris等等,那么下一个将要处理的数据库技术将是什么?