Questions tagged «nosql»

笼统的术语,描述了使用各种非关系模型的数据库系统。通常将此类系统设计为高性能。

5
为什么RDBM的集群不能像NoSQL那样?
Nosql DBMS的一大优点是它们可以更轻松地集群。假设使用NoSQL,您可以创建数百个便宜的计算机,这些计算机存储不同的数据并立即查询所有数据。 我的问题是,为什么关系型DBMS不能像mysql或sql server那样?是仅仅是供应商还没有找到一种技术方法来解决现有产品的问题,还是关系模型存在一些问题导致这种情况不可行?NoSQL存储和访问数据(键/值,文档等)的方式有什么好处,可以简化群集操作(如果确实如此)?

5
哪个数据库可以处理数十亿/万亿记录的存储?
我们正在研究开发一种捕获和分析Netflow数据的工具,我们从中收集了大量的数据。每天我们都会捕获大约14亿条流记录,这些记录以json格式显示如下: { "tcp_flags": "0", "src_as": "54321", "nexthop": "1.2.3.4", "unix_secs": "1352234521", "src_mask": "23", "tos": "0", "prot": "6", "input": "105", "doctets": "186", "engine_type": "0", "exaddr": "2.3.4.5", "engine_id": "2", "srcaddr": "9.8.7.6", "dst_as": "12345", "unix_nsecs": "752265174", "sysuptime": "2943529544", "dst_mask": "24", "dstport": "80", "last": "2943523241", "srcport": "52672", "dpkts": "4", "output": "111", "dstaddr": "6.5.4.3", "first": "2943517993" …

5
数十亿行数据的最佳数据库和表设计
我正在编写一个需要存储和分析大量电气和温度数据的应用程序。 基本上,我需要存储过去几年以及成千上万个位置以后很多年的每小时小时用电量测量值,然后以一种不太复杂的方式分析数据。 我现在需要存储的信息是位置ID,时间戳(日期和时间),温度和用电量。 关于需要存储的数据量,这是一个近似值,但遵循以下原则: 20000多个位置,每月720条记录(每小时测量,每月大约720小时),120个月(十年前) )以及未来的很多年。简单计算得出以下结果: 20 000个位置x 720条记录x 120个月(10年前)= 1 728 000 000条记录。 这些是过去的记录,新记录将每月导入,因此大约每月20000 x 720 = 14400 000新记录。 总地点也将稳定增长。 对于所有这些数据,将需要执行以下操作: 检索某个日期和时间段内的数据:某个特定位置ID的所有记录,这些记录介于日期01.01.2013和01.01.2017之间以及07:00和13:00之间。 在特定日期和时间范围内进行简单的数学运算,例如,在07:00至13:00之间的5年中,某个位置ID的MIN,MAX和AVG的温度和用电量。 数据将每月写入一次,但会(至少)不断被数百个用户读取,因此读取速度显得尤为重要。 我没有使用NoSQL数据库的经验,但是从我的经验来看,它们是在此处使用的最佳解决方案。我已经阅读了最流行的NoSQL数据库,但是由于它们完全不同,并且还允许非常不同的表体系结构,因此我无法决定使用哪种最佳数据库。 我的主要选择是Cassandra和MongoDB,但由于我的知识非常有限,并且在涉及大数据和NoSQL方面没有实际经验,因此我不确定。我还阅读到PostreSQL也可以很好地处理此类数据。 我的问题如下: 我是否应该将NoSQL数据库用于如此大量的数据。如果不能,我可以坚持使用MySQL吗? 我应该使用哪个数据库? 我应该将日期和时间保留在单独的索引索引(如果可能)列中,以便在特定的时间和日期期限内快速检索和处理数据,还是可以通过将时间戳记保留在单个列中来完成此操作? 时间序列数据建模方法在这里是否合适,如果不合适,您能否为我提供良好表设计的指导? 谢谢。

6
NoSQL和传统的RDBMS有什么区别?
NoSQL和传统的RDBMS有什么区别? 在过去的几个月中,NoSQL在技术新闻中经常被提及。与传统的RDBMS相比,它最重要的功能是什么?差异发生在什么级别(物理的,逻辑的)? 在哪里使用NoSQL的最佳位置?为什么?

5
什么是键/值存储数据库?
我一直在看NoSQL的维基百科页面,它列出了键/值存储数据库的几种变体,但是在这种情况下,我找不到关于键/值存储的含义的任何详细信息。有人可以向我解释或链接解释吗?另外,什么时候可以使用这样的数据库?
56 nosql 

2
时间序列:SQL还是NoSQL?
我不在乎SQL和NoSQL之间的一般差异(或它们的传统差异)。 我目前正在研究更改内部时间序列的存储方式。它们都包含来自许多不同来源的财务数据。当前,我们将数据存储在专有数据库中。它非常类似于NoSQL,具有自己的查询语言。 我对社区的意见很感兴趣:您如何将数据存储在SQL数据库中?通过NoSQL使用SQL有什么优点,特别是针对时间序列?我为考虑将其存储在SQL中而疯狂吗? 我们的数据集包含数百万个时间序列,其中约10%包含数百万个记录。时间序列是按层次结构组织的:/ Market / Instrument / Value / Frequency,其中: 市场是证券交易所等,基本上是工具的集合,通常是类似的工具。 仪器是一种仪器。这可能是指标(布伦特原油),股票(GOOG)等 值是仪器的多种数据类型之一。可能是收盘价,高价,低价等 频率是特定时间序列值的频率。每周,每天,每月,滴答,任意等 数据如何存储在SQL数据库中?一张大桌子(可能被某些东西隔开),每个市场或工具一张桌子,每个时间序列一张桌子。 先感谢您。
33 nosql 


2
CouchDB与MongoDB [关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 评估面向文档的存储,CouchDB与MongoDB的优缺点是什么?

1
数据库如何存储可变长度字段的索引键值(在磁盘上)?
语境 这个问题与SQL和NoSQL数据库系统中索引的低级实现细节有关。索引的实际结构(B +树,哈希,SSTable等)无关紧要,因为该问题专门涉及存储在任何这些实现​​的单个节点内的键。 背景 在SQL(如MySQL的)和NoSQL(CouchDB的,MongoDB的,等等)数据库,如果您在列或数据的JSON文档字段建立索引,你实际上是导致数据库做的就是创建本质上所有的排序列表这些值以及与该值有关的记录所在的主数据文件中的文件偏移量。 (为简单起见,我可能会手动放弃特定展示的其他深奥细节) 简单经典SQL示例 考虑一个标准的SQL表,该表具有一个简单的32位int主键,我们可以在该主键上创建索引,我们最终将获得一个排序后的整数键的索引在磁盘上的索引,并与数据文件中的64位偏移量相关联,其中记录的生命,例如: id | offset -------------- 1 | 1375 2 | 1413 3 | 1786 索引中键的磁盘上表示形式类似于以下内容: [4-bytes][8-bytes] --> 12 bytes for each indexed value 坚持使用文件系统和数据库系统优化磁盘I / O的标准经验法则,假设您将密钥存储在磁盘上的4KB块中,这意味着: 4096 bytes / 12 bytes per key = 341 keys per block 忽略索引的整体结构(B +树,哈希,排序列表等),我们一次将341个键的块读写到内存中,然后根据需要返回到磁盘。 查询范例 使用上一部分中的信息,假设有一个查询“ id …
16 mongodb  index  nosql  couchdb 

3
从未使用过该技术的人可以使用哪些规范的NoSQL资源?
我对NoSQL技术越来越感兴趣,并且可以阅读有关SE的工作原理和可用的不同产品的几篇文章。 但是,我想知道是否有一些规范的参考文献,书籍或文章,例如我们可以在研究论文中找到这些参考文献,书籍或文章,并且可以阅读这些书籍,文章或文章以对以下内容有一个很好的概述: 优点/缺点是什么? 怎么运行的?
15 nosql 

2
无模式/灵活+ ACID数据库?
我正在考虑将基于本地(本地安装)的VB应用程序(发票+库存)重写为面向小型企业客户的基于Web的Clojure应用程序。我打算将此作为SaaS应用程序提供给类似行业的客户。 我正在查看数据库选项:我的选择是RDBMS:Postgresql / MySQL。我可能会在第一年扩大到400位用户,通常每位用户每天20-40个页面浏览量/每天-主要用于非静态视图交易。每个视图将涉及获取数据和更新数据。必须符合ACID(或我认为)。因此交易量并不大。 毫无疑问,根据我的喜好选择这两种方法,但是对于这一要求,我认为这是SaaS应用程序的典型要求:随着我添加更多的客户/用户以及每个客户的需求,架构将发生变化。不断变化的业务需求(刚开始我会提供一些有限的灵活性)。由于我不是数据库专家,根据我的想法和所读的内容,我可以通过多种方式来处理: 在MySQl / Postgresql中进行传统的RDBMS模式设计,其中一个DB托管多个租户。并在每个表中添加足够的“自由浮动”列,以允许将来随着我添加更多客户或现有客户的更改而进行更改。每次对模式进行小的更改时,将更改传播到数据库中可能会有不利之处。我记得读过一篇文章,在Postgresql模式中更新可以实时完成而无需锁定。但是不确定,在这个用例中它有多痛苦或有多实用。而且,由于架构更改可能还会引入新的/次要的SQL更改。 有一个RDBMS,但是以灵活的方式设计数据库模式:具有接近实体属性值或仅作为键值存储。(例如,工作日为FriendFeed) 将整个事物作为对象存储在内存中,并定期将它们存储在日志文件中。(例如,edval,lmax) 选择NoSQL数据库,例如MongoDB或Redis。但是根据我的收集,它们不适合此用例,也不完全符合ACID。 寻找一些新的SQL Db,例如VoltDb或JustoneDb(基于云),它们保留SQL和ACID兼容行为,并且是“新一代” RDBMS。 我看了neo4j(graphdb),但不确定是否适合此用例 在我的用例中,除了可伸缩性或分布式计算之外,我还在寻找一种更好的方法来实现“模式中的灵活性+ ACID +一些合理的性能”。我在网上可以找到的大多数文章都谈到模式的灵活性,这是导致性能(在NoSQL DB的情况下)和可伸缩性的原因,而忽略了ACID /事务。 这是“模式灵活性与ACID”事务的“或”案例,还是有更好的出路?

1
Neo4j中每个节点的数据量
我需要在Neo4j中为每个节点存储大量数据。数据是Unicode文本块。实际上,并非每个节点都会有很大的块,但其中很多会。 我仔细阅读了文档,但未发现有关节点大小的任何内容-单个节点可包含的数据量。 有人有什么主意吗?
14 nosql  neo4j 

2
NoSQL和RDBMS在一起?
我想知道是否有什么好的解决方案可以在NoSQL数据库中记录数据,然后将其转换为RDBMS? 例如,如果您想快速捕获一些数据(例如会话日志),但是希望以后能够为其创建报​​告。 我最喜欢的数据库是Postgres,因此,如果您的答案与Postgres相关,那将很棒。
13 nosql  rdbms 

3
针对社交网络/知识库社区的数据库建议?
我正在为一个想在夏天开始的新项目研究各种数据库类型和DBMS。 我已经在MySQL和postgreSQL中构建了系统,现在我想扩展我在数据库中的知识和经验。 我的项目将是一种社交网络/聚合知识的事物。(还没有开发出一个描述它的术语)。 我一直在看: Cassandra(使用自己的查询语言类型);对于功能丰富的内容并提供高性能的查询执行来说,这似乎是一件好事。但是我不太热衷于此,因为它需要Java环境才能工作,而且我希望与Oracle无关。 MongoDB(noSQL类型的DBMS);强大的可伸缩性,但是您将失去经过验证的SQL语言上已经可用的所有功能,例如业务信息查询。 系统要求: 数据文本,日期,时间,xml,小整数,blob, 结构/行为:标准化3NF,非实时,关系,可伸缩,健壮 环境: unix / linux,没有JAVA !,最好在C上运行 我想知道您是否可以指出我应该研究的任何其他数据库系统。 我也看过对象关系数据库,我很喜欢它们与PHP对象(PDO)一起工作的想法,但是它们的性能似乎有点差。 看到这里将有DBA,您对这些系统的任何反馈都将不胜感激。 谢谢

1
高并发存储系统
想象一下您的需求是,您有3个巨大的表(结构化数据),每个表有300亿行(总大小为4TB),并且许多并发用户(远程LAN机器上的并行os线程)将需要读取一部分通过他们的SELELCT WHERE GROUPBY查询和高度并发的数据,例如,同时进行10,000次并发读取,并且用户也需要将这些数据高度并发地插入(不更新)数据到这些表中,例如2000个并发写入器(遍及数据中心LAN网络) 。用户可能希望尽快从该存储中读取和插入数据,每次读取和写入将发生在毫秒到1秒范围内。 您推荐什么技术来满足这种要求?是否有任何数据存储或键值存储可以做到这一点?不能选择云。 一些说明: 用户不必立即查看数据,最终的一致性是可以接受的。数据可以通过存储可以提供的任何驱动程序进行访问,而用户又仅仅是在数据中心的远程计算机上运行的线程。查询大多类似于SELECT WHERE GROUPBY。 数据采用表格格式,每行约60个字节。 我无法使用DynamoDB或类似解决方案的无云选项。我必须能够在数据中心内部托管它。 可以一直读取表中的所有数据,并且使用模式是不可预测的。没有联接或超长查询。不需要DR,但是需要合理的HA,但是不必花哨。每个读者都基于其where子句获得了一批行,而这些子句与行并不是真正相关。我们可能每行的长度可以固定,但是我希望存储层对此有所担心。 另外,我最大的担心是与并发读取一起发生的所有那些并发写入。 非常感谢您对此的见解。 更重要的是,我有三个表,每个表有300亿行包含不同的对象类型

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.