NoSQL的价值到底在哪里?
关系型数据库的价值
持久化数据:通过数据库来保存数据
处理并发:通过事务方式处理并发
集成:共享数据库集成,多个应用程序可以同时访问同一份数据
标准模型:前几种功能已经成标准,开发人员学习成本低,虽然各数据库之间有差异,但核心机制相同。
阻抗失谐
关系模型和内存种的数据结构之间存在差异
集成数据库和应用程序数据库
集成数据库:多个应用程序数据存储在一个公用的数据库中,提供了通信效率,因为多个应用程序公用,所以设计复杂。不同应用程序在存储数据时也需要相互协调,更新数据的最好还是交由数据库自身处理。
应用程序数据库:只能一个应用程序访问数据库,交互就由这个应用程序开放接口,通过web服务集成:http协议,二进制协议,文本协议。
集群
数据流量的增加,需要扩展存储。
1、纵向扩展,功能强大的计算机,2、建立集群。一般都是使用后者,好处不赘述。
集群问题,数据库厂商集群使用非常贵。
基于集群数据库的问题,谷歌(BigTable)和亚马逊(Dynamo)开发了自己的数据库。
NoSQL登场
泛指开发于21世纪初,基本上不使用SQL,而且差不多都是开源的数据库。
不适用关系摸,集群运行良好,开源,适用于21世纪的互联公司,无模式。
NoSQL的价值到底在哪里?的更多相关文章
- 一文带你秒懂商业智能BI的价值所在!
首先,先来跟大家解释说明一下什么是商业智能?这应该也是刚刚接触商业智能的小伙伴最想要了解的问题,平时刷微博.看头条时都会看到数据可视化.数据分析和大数据等词汇时,但是对它们如同熟悉的陌生人一般,那么这 ...
- OpenStack 企业私有云的若干需求(10):OpenStack 的前景和钱景
本系列会介绍OpenStack 企业私有云的几个需求: 自动扩展(Auto-scaling)支持 多租户和租户隔离 (multi-tenancy and tenancy isolation) 混合云( ...
- 在线教程的游戏化-20分钟做了个demo
首先,不准说做得撇,因为其一,我只用了20分钟不到:其二,第一次尝试,以前想过,但是一直没有搞过,二话不说,先来截图,下载地址在最下面. 因为第一次尝试,所以很多事件自己还没有闹明白,不过基本上还是看 ...
- [转载]MongoDB的真正性能
最近开始研究MySQL和MongoDB,发现这方面资料不多.尤其是真正的说到点子上的文章,太少了. 有一些对比测试的文章基本上都是瞎测,测试方法都测到了马腿上,得出的结论基本上都是NoSQL毫无价值 ...
- USB究竟是什么?看完这篇文章我就明白了!
在早期,USB接口的出现似乎仅仅是要解决一些简单外设诸如鼠标.键盘之类的设备与电脑的连接问题,很显然,这些外设所产生的数据量是极低的,所以,USB规范所定义的数据速率是1.5Mbps,数据还是双向分时 ...
- AlphaGo设计师黄士杰:“最强的学习技能在人类的脑袋里”
AlphaGo设计师黄士杰:“最强的学习技能在人类的脑袋里” 深度学习和强化学习结合看来才能解决彩票预测的问题 可以这么说,AlphaGo的成功就是深度学习与强化学习的胜利,因为两者结合在一起,建构判 ...
- python处理中文
python 清洗中文文件 需要用到的两个链接: 1,unicode编码转换器 http://www.bangnishouji.com/tools/chtounicode.html 2,Python匹 ...
- Google是如何教会机器玩Atari游戏的
转自:http://blog.csdn.net/revolver/article/details/50177219 今年上半年(2015年2月),Google在Nature上发表了一篇论文:Human ...
- 比特币 Bitcoin 是什么,我勒个去,哈耶克果然超前——货币的非国有化,容我思量一下【转载+整理】
原文地址 比特币矿业史(上):故事的开始,CPU 时代 比特币矿业史(中):群众的觉醒 ,GPU 时代 比特币矿业史(下):巨头的诞生 ,ASIC 时代 本文内容 引子 0 序 1 故事的开始 : C ...
随机推荐
- linux crontab设置
cron来源于希腊单词chronos(意为“时间”),是linux系统下一个自动执行指定任务的程序.例如,你想在每晚睡觉期间创建某些文件或文件夹的备份,就可以用cron来自动执行. 服务的启动和停止 ...
- 【搜索引擎Jediael开发4】V0.01完整代码
截止目前,已完成如下功能: 1.指定某个地址,使用HttpClient下载该网页至本地文件 2.使用HtmlParser解释第1步下载的网页,抽取其中包含的链接信息 3.下载第2步的所有链接指向的网页 ...
- 关于jQuery中的attr和data问题
今天在使用data获取属性并且赋值时遇到一个小问题,写下来防止以后再跳坑. 在使用jQuery获取自定义属性值时,我们习惯用 $(selector).attr('data-value'); jQuer ...
- 提升Boolean和out相结合的用户体验
在我们编写代码的过程中经常有这样的需求,比如添加一条数据,我们想要的结果是如果添加成功了就返回true,如果添加失败了就返回false,在返回false的同时携带错误信息,我们通常的做法是定义这样的方 ...
- SQL Server 查看数据库空间分配情况的 2 种方法
方法 1. sys.dm_db_file_space_usage. 方法 2. sys.dm_db_session_space_usage. ----------------------------- ...
- SQL Server 对象
第一项:重命名对象 execute sp_rename @objname='Nums',@newname ='Numbers',@objtype ='object'; go 这里要特别小心 @ne ...
- Nginx 变量漫谈(二)
关于 Nginx 变量的另一个常见误区是认为变量容器的生命期,是与 location 配置块绑定的.其实不然.我们来看一个涉及“内部跳转”的例子: server { listen ...
- 怎么让一个非窗口组件可以接受来自Windows的消息
为什么要这样做? 有时候我们需要一个非窗口组件(比如一个非继承自TWinContrl的组件)可以接受Windows消息.要接受消息就需要一个窗口句柄,但是非窗口组件却没有句柄.这篇文章将讲述怎么让一个 ...
- 第3.3.4节 创建高级图形之RenderScript(二)
Android视图框架对于创建复杂布局非常方便.然而,这种便利是以性能为代价的.当性能至关重要的时候,Android提供了几种更强大的图形处理能力,当然难度也是随之上升了.在本节中,我将介绍: ...
- C# 多线程 异步加载 窗体
C# 多线程 异步加载 窗体 分类: C#2014-05-28 16:57 1286人阅读 评论(0) 收藏 举报 异步加载 我们在使用 windowform 编程的时候,我们或许可能会越到,各种在窗 ...