挑战大数据 浅析NoSQL技术

来源:互联网 发布:关于淘宝的书2017 编辑:程序博客网 时间:2024/04/29 10:46

目前我们都生活在一个庞大的数据存数时代,然而大数据及其底层技术NoSQL也正成为了互联网的一个流行语。对于谷歌以及Facebook,IBM这样的全球互联网企业,NoSQL这种高扩展的非关系型数据库存数的使用往往已经超过关系型数据库。事实上,在海量数据和半结构化数据的一些问题过程中,已经诞生了一系列新型数据库产品,而这些数据库我们称之为NoSQL。

2013年4月26日-27日,由51CTO传媒集团旗下WOT(World Of Tech)品牌主办的2013大数据全球技术峰会在北京富力万丽酒店召开。NoSQL产品千变万化,特性和价值主张各有不同,因此常常难以选择。记者深入与来自硅谷的软件开发专家,层任职于Oracle,Microsoft和Google的Ming Lei老师沟通以及对NoSQL的实际分析,总结一些观点给网友参考。

 

Ming Lei老师(左)

分布式系统和NoSQL

一个分布式系统包括很多不同的层面,它包括应用层,数据层,表现层等等,现在主要说说应用层和数据层,这两个都是分布式系统重要的组成部分,应用层一般来说是没有状态,数据层是不断的做运算让它保存状态。数据层是分布式系统里面最困难,也是最高深的一个层面。

Ming Lei老师的观点是NoSQL是分布式系统里面的一个存储器,它是分布式系统的一种。或者说是分布式系统的一个层面。 

NoSQL缓存对CDN缓存比较

在NoSQL这边缓存的代表性是Memcached,NoSQL的缓存和CDN的缓存最大的区别在于NoSQL的缓存是指在数据层的缓存,并不是应用层的缓存,也不是网络层的缓存,所以它的缓存是比较原始的数据。比方说这个应用逻辑里面的事物,并不是最终给用户看的结果,那么我们在网络这一层做缓存的话,最常见的技术叫CDN,它的英文叫做ContentDeliveryNetwork,它一般是在网络的末端靠近用户的那一端的一些网络服务器上缓存一些具体的网页。

Memcached:

  1. Free & open source, high-performance, distributed memory object caching system, generic in nature, but intended for use in speeding up dynamic web applications by alleviating database load.  
  2. Memcached is an in-memory key-value store for small chunks of arbitrary data (strings, objects) from results of database calls, API calls, or page rendering. 

MemCache – Architecture

  1. Sharding in client code to select server.  
  2. Peer-to-Peer Server instances.  
  3. Server uses in-mem storage.  
  4. Potentially expand to persistent store. 

MemCache – Usage Characteristics

  1. Object-level Consistency, Isolation and Atomicity.  
  2. No persistent storage  
  3. No replication for load-balancing or failover  
  4. Consistency + Partition-tolerance in CAP 

NoSQL安全性分析

其实系统可以在不同的层面去解决安全性的问题,不一定要求系统每个层面都要去解决安全性的问题,比方说分布式存储系统,它一般是个存储服务,从请求拿到结果,所以必然有一个远程网络调用,一个比较有利的解决方案是在网络调用这块解决安全性的问题,比如加上一些安全性的管理(用户授权,用户登陆),而不是在分布式存储运算里面去解决这个问题。


Hadoop多维分析平台架构图

NoSQL and SQL

在Ming Lei老师看来其实是两者的应用场景不一样。当我们针对的是互联网的用户,消费者,这样的应用根据我们的经验是它对事物的要求较为低,而企业应用它对事物的要求很高,比如说一个企业里面的财会,物流,人事,它往往都是公用同样的一套数据库,所以它对事物的要求会比较高。

比如说你把一个网站建在服务上面,这个时候你的事物的这个层面可能只是说一个账户,也就是说你对数据库的要求低,同时你的数据量又非常大,这个时候我们需要一种不同关系型数据库的解决方案,这种解决方案就叫做NoSQL。它最大的区别在于要求的数据量大,对事物的要求低。

NoSQL数据库的对比图(点击扩大)

NoSQL未来

我觉得目前在互联网上比较多见的应用场景是,数据量特别大,对事物的要求相对低,或者事物的层面比较窄,结构比较小。对这样一些应用NoSQL是未来的一个发展方向。

但是,有些企业级的应用还是必须得使用关系型数据库,目前在工业这一块还没有这样的一个趋势去把企业应用的关系型数据库变成NoSQL。

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 微信支付密码忘了怎么办没银行卡 中行5月扣很多钱是怎么办 中银淘宝校园卡影响征信问题怎么办 中银E盾快到期了怎么办 京东e卡电子卡卡密泄漏怎么办 买错了京东e卡怎么办 京东购买手机激活后有问题怎么办 优购m9锁屏密码忘记了怎么办视频 中百仓储的购物卡过期了怎么办 武汉中百超市购物卡过期怎么办 已认证抵扣的发票发生退货怎么办 京东白条分期买手机额度不够怎么办 京东白条闪付手机不支持开通怎么办 拼多多不小心下两次单付款了怎么办 不小心给了京东快递差评怎么办 京东金融不小心卸载了怎么办 如果京东快递不小心完成订单怎么办 订机票时没有用常旅客卡怎么办 京东退货退款卖家已签收了怎么办 京东账号手机号换了密码忘了怎么办 qq飞车手游录像下载失败怎么办 手机知道qq号怎么破解密码怎么办 网上购物已付钱迟迟不发货怎么办 有人冒充微信头像和熟人借钱怎么办 微信红包输了50多万怎么办 脖子里的绳结接口磨脖子怎么办 母比格犬生了小狗毛色变了怎么办 母比格犬生了小狗毛色很差怎么办 貂皮大衣上的暗扣掉了怎么办 呢子夹克袖子长但又不想改短怎么办 黑色的衣服熨的有点发亮怎么办 宿管阿姨工作中与学生起冲突怎么办 中通快递发的衣服不合适怎么办 加盟母婴店如果不干了货怎么办 双十一搞活动买的东西退货怎么办 天猫预售30天不发货怎么办 天猫搞活动的商品总不发货怎么办 淘宝买的东西物流把货物损坏怎么办 苹果手机5s每部存满怎么办 天猫退货分开发货退的话怎么办 淘宝优惠券电脑端显示不出来怎么办