Questions tagged «nosql»

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


2
Redis占用了所有内存和崩溃
Redis服务器v2.8.4在具有8 GB RAM和16 GB交换空间(在SSD上)的Ubuntu 14.04 VPS上运行。但是,htop表明redis独自占用了22.4 G内存! redis-server最终由于内存不足而崩溃。Mem并且Swp两个命中率均达到100%,然后redis-server与其他服务一起被杀死。 来自dmesg: [165578.047682] Out of memory: Kill process 10155 (redis-server) score 834 or sacrifice child [165578.047896] Killed process 10155 (redis-server) total-vm:31038376kB, anon-rss:5636092kB, file-rss:0kB redis-server从其他方面重新启动可能service redis-server force-reload会导致OOM崩溃或导致内存使用量降至<100MB。 问题:为什么在redis-server崩溃之前会占用越来越多的内存?我们如何防止这种情况? 是真的,maxmemory因为redis达到maxmemory极限后,设置将无法删除,因此设置将无法工作吗? 重启redis-server后 Redis版本: Redis server v=2.8.4 sha=00000000:0 malloc=jemalloc-3.4.1 bits=64 build=a44a05d76f06a5d9 更新资料 当htop报告的内存使用量redis-server是4.4G RAM和22.6G交换,所有的钥匙,redis的占用的空间量仅为60.59636307 MB,所报告的rdbtools。这也是redis-server重启后立即占用的RAM量。 INFO ALL什么时候redis-server占用大量内存 …

1
CAP定理与BASE(NoSQL)
CAP定理与BASE(NoSQL) 嗨,我正在尝试写一篇有关NoSQL的论文,并将CAP定理描述为(如果不是全部的话)大多数NoSQL数据库都遵守。稍后,我阅读了一篇有关NoSQL与RDBMS之间差异的论文,该论文指出NoSQL数据库使用ACID对应的BASE。 我知道BASE,ACID和CAP的属性,但是我很难确定CAP定理和BASE之间有什么关系。据我了解,CAP定理导致BASE的首字母缩写,但这是正确的结论吗?还是用两种不同的方法“构建”一个共享相似属性的数据库? 在此博客文章(http://www.johndcook.com/blog/2009/07/06/brewer-cap-theorem-base/)中,作者写道: 与苛刻的ACID世界相比,在容错的BASE世界中开发软件更加困难,但是Brewer的CAP定理指出,如果要扩展,则别无选择。但是,正如Brewer在本演示文稿中指出的那样,ACID和BASE之间存在连续性。您可以根据自己的优先级来决定与连续体一端或另一端相距多远。 作者在另一篇文章中写道: 最重要的是,许多NOSQL数据库已经放宽了对一致性的要求,以实现更好的可用性和分区。这导致系统被称为BASE(基本可用,软状态,最终一致)。这些没有经典意义上的事务,并且在数据模型上引入了约束,以实现更好的分区方案(例如Dynamo系统等)。简介中提供了有关CAP,ACID和BASE的更全面的讨论。 这清楚地表明CAP会导致 BASE。 我希望有人可以向我澄清这一点,消除我的困惑。 谢谢 -Mestika
12 nosql 

2
Redis新手-如何在哈希中创建哈希?
我想在redis中创建这种类型的结构:(基本上是json数据) { "id": "0001", "name":"widget ABC", "model": "model123", "service":"standard", "admin_password": 82616416, "r1": { "extid":"50000", "password":"test123", }, "r2": { "ext":"30000", "password":"test123", }, } 到目前为止,我已经尝试过: 我试图创建没有“子”哈希的哈希,只是为了确保我掌握了基础知识。所以这是我从redis-cli开始的内容: HMSET widget:1 id 0001 name 'widget ABC' model 'model123' service standard admin_password 82616416 HMSET widget:2 id 0002 name 'widget ABC' model 'model123' service standard admin_password 12341234 …
12 nosql  redis  hashing 

2
什么是将数据从一个Cassandra ColumnFamily复制到同一键空间上的另一个好方法(例如SQL的INSERT INTO)?
试图找到一种将所有行从Cassandra ColumnFamily / Table轻松转移到另一行的方法。 据COPY我了解,该命令是一个不错的选择。但是,由于它将所有数据转储到.csv磁盘上然后再加载回去,我不禁想知道是否有更好的方法可以在引擎内完成。 我的意思的一个具体示例将INSERT * FROM my_table INTO my_other_table在许多SQL数据库中可用。当然,我意识到Cassandra是NoSQL,因此不能以相同的方式工作-但似乎可以使用。 有什么好的方法可以做到这一点? 非常感谢!



2
列族的意义是什么?
我已经看到像RocksDB这样的NoSQL数据库系统提供了称为列族的功能。我相信我理解该概念所指的含义,但是使用它们的实际(实用)好处是什么?我认为它们至少可以改善某些情况下的查询性能,或者至少可以改善键值整体的空间局部性?据我了解,这似乎并不会影响数据库访问的实际语义。它是否正确?有什么我想念的吗?
9 nosql 

2
NoSQL:什么是非结构化数据?
目前,我们基于mssql服务器的解决方案正在资源边缘运行。 现在,关于下一步解决负载的问题,我们有许多传统的选择: 购买更快的CPU和IO 拆分一些客户以分离服务器 将数据库移到群集 就许可和硬件或时间而言,所有这些都是昂贵的。因此,我想通过将整个系统移至nosql引擎cassandra承诺的可伸缩解决方案中来添加另一种选择。 但是,我不确定noSQL数据库也没有使用过SQL数据库,因此我需要了解“非结构化”数据的结构。 在我们的应用程序中,我们基本上将用户以各种方式输入的数据存储为“键值”列表。有一个父表,它包含head元素(如Order),还有一个子表,其键值对包括该订单的内容(如Order_Lines)。 在业务方面,Order和OrderLines是一个单位。但是由于RDBMS,它们存储在表中,并且必须一直连接。 在操作过程中,有时我们选择只加载顶部,但是在大多数情况下,我们加载头行+一些KVP以显示一些有用的信息。 例如,在概述列表中,我们在每行的列中显示头标识符+一些值。 更新:我们存储任何形式的表格。因此,基本上我们存储“文档”。但是,我们必须按任何值,排序等来准备和搜索这些形式。数据访问控制在数据库上增加了另一层兼容性。 您可能会猜到,某些KVP的数量和可用性因对象而异。没有有效的可能性为每种对象创建单个表,因为我们必须为不同的数据组合创建数千个表。 这种“字典”之类的数据集会更好地存储在noSQL数据库中吗?并从中获得性能收益吗?卡桑德拉会将这些head + KVP建模为一个数据集吗?看看cassandra网页和一些教程,我的印象是,在数据组织方面,我们的RDBMS和cassandra之间并没有太大的区别-如果您要选择5个KVP,我们将拥有大量的连接为每一行的列表。 欢迎启蒙,也可以使用指向这些问题的论文的指针。

1
重新设计大量传感器数据的存储
我受命实施/重新设计一个解决方案,该解决方案将存储来自传感器阵列的天气数据。该阵列将由约40个塔组成,每个塔均带有约10个传感器,每个传感器将以10秒的间隔对大气状况进行采样,时间不确定(年)。此任务的一些应用程序和要求如下: 管理和检索塔/传感器配置,以进行数据分析。 通过传感器或时间间隔进行数据可视化以进行气象观测。 为客户提供可靠和持久的数据资源/数据集,以比较模型和传感器的性能(可能需要进行一些后处理才能以所需的格式交付?)。 注意:当前的解决方案(实现为概念证明,有5个塔)将数据存储为平面文件(每小时一个文件)。 我最初不确定将来是否会构成大数据问题,所以我研究了关系数据库和NoSQL数据库的两种解决方案,但是我觉得我需要更多指导,因为我不是数据管理专家。 我认为解决方案之一是将数据存储在按塔,传感器和时间戳编制索引的关系数据库中,并按日期对表进行分区。 另一个基于将来的扩展,是将其存储在文档类型的NoSQL数据库(如MongoDB)中,并模拟当前解决方案的结构。 这些好方法中有什么?如果没有,什么是更好/推荐的解决方案?另外,是否有必要重新设计当前解决方案?有人告诉我,使用平面文件的理由是,他们认为关系数据库会占用过多的开销。如果是这样,是否有办法避免这种情况?

3
NoSQL数据库会导致偶尔的数据丢失吗?
我目前正在评估要用于新项目的数据库,这将需要插入和查询大量交易数据。我们的团队倾向于Cassandra,但随后我阅读了这篇文章,似乎暗示使用不符合ACID的数据库可能会导致偶尔的数据丢失: http://www.dbms2.com/2010/09/21/acid-compatible-transaction-integrity/ 我在网络上找不到任何进一步的信息,也无法理解非ACID合规性意味着数据丢失的可能性。谁能阐明一些想法?
8 nosql 

2
有什么方法可以有效地在MongoDB中执行等效于DENSE_RANK的操作吗?
SQL Server和Oracle都具有DENSE_RANK函数。有没有办法在MongoDB中做类似的事情而不必求助于MapReduce?换句话说,假设您有一个像这样的T-SQL select子句: SELECT DENSE_RANK() OVER(ORDER BY SomeField DESC) SomeRank 在MongoDB中执行相同操作的最佳方法是什么? (注意:这是MongoDB问题的转贴。我希望能从DBA获得更多反馈...)

3
Cassandra的“ phpMyAdmin”
是否有类似phpMyAdmin的工具用于Cassandra DB的RDBMS-MySQL? 我知道“运行时”配置可能更少(无法在运行时等编辑列族)。但是,使用GUI检查不同的列族,浏览数据等将非常有帮助。
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.