2023年7月21日发(作者:)
云计算海量数据处理技术
——北京尚学堂
1
目录
1.云计算海量数据处理概要 ............................................................................................................ 3
人才市场需求分析 ............................................................................................................. 4
3. MapReduce——Hadoop的核心 .................................................................................................. 6
2
1.云计算海量数据处理概要
简单来说,云计算就是利用系统架构技术把成千上万台服务器整合起来,为用户提供灵活的资源分配和任务调度能力。这里有几个关键字:一是超大规模,包括机器的数量、用户的数量和并发任务的数量;二是资源整合,成千上万台的服务器资源能集合起来做一件事情,比如存储大量数据,或者处理一个大型任务;三是灵活与快速交付,大规模的服务器资源能进行灵活的调配,按应用需求分解成若干个虚拟的资源池,快速地支持大量的并发请求或作业。
云计算技术的出现,使整理和加工数据的能力变得空前强大,这种能力可以帮我们找出很多看似无关的事件背后的规律,并用其来预测未来发展。结合移动和物联网等技术,还可以 更好地服务于社会和人们的日常生活,如灾难预警、智慧城市和智能交通等。这种数据处理能力是在海量数据之上发展起来的,与作为基础支撑的系统架构技术同步 发展并逐渐融合,共同组成了现在大家所看到的云计算技术。
大数据技术是很多种技术的集合,它主要包括:
A. 分析技术(R语言-hadoop-对接)
B. 存储数据库(oracle)
C. NoSQL数据库(分布式 cassandra(bigtable),mongodb,couchdb(erlang,mapreduce),neo4j(java))
D. 分布式计算技术
1) NoSQL数据库是一种建立在云平台的新型数据处理模式
NoSQL在很多情况下又叫做云数据库。由于其处理数据的模式完全是分布于各种低成本服务器和存储磁盘,因此它可以帮助网页和各种交互性应用快速处理过程中的海量数据。它为google、taobao、baidu,腾讯以及其它一些企业提供网页应用支持。正常的数据库需要将数据进行归类组织,类似于姓名和帐号这些数据需要进行结构化和标签化。但是NoSQL数据库则完全不关心这些,它能处理各种类型的文档。
2) 分布式计算结合了NoSQL与实时分析技术
如果想要同时处理实时分析与NoSQL数据功能,那么你就需要分布式计算技术。分布式技术结合了一系列技术,可以对海量数据进行实时分析。更重要的是,它所使用的硬件非常便宜,因而让这种技术的普及变成可能。
通过对那些看起来没什么关联和组织的数据进行分析,我们可以获得很多有价值的结果。比如说可以分发现一些新的模式或者新的行为。运用分布式计算技术,银行可以从消费者的一些消费行为和模式中识别网上交易的欺诈行为。
3
人才市场需求分析
数据表明NoSQL市场急需人才,我们从2012年2月的就业数据看看NoSQL的就业趋势。这个名单包括9种不同的NoSQL数据库的就业数据——Cassandra,Redis,Voldemort,SimpleDB,CouchDB,MongoDB,HBase,Hypertable和Riak。当然,Hadoop仍然是这个领域的领头羊,但为了和其他工具有一个较好的比较,我们只选择比较其他相对比较接近的数据库使用者的就业情况。
先看来自的数据:
这里,MongoDB明显领先其他工具。Cassandra屈居第二,工作前景也很不错。大约9个月以前,几乎所有NoSQL相关的就业数都有所下降,之后却来了个大反弹。HBase和Redis的发展趋势虽然比不上MongoDB或Cassandra但也依然强劲。然而,不容忽视的是,HBase和Redis最近常常在博客上称为话题焦点,也许不久以后就会需求剧增。CouchDB仍在增长,但明显比不上领头的几个,这种趋势和最近产品发展方向并不明确有关。Apache仍在努力,时间会说明一切。过去一年里Riak发展得还可以,要想赶上第一部队不得不加快点速度了。SimpleDB和Voldemort的发展过于平缓,他们可能很快被会边缘化。Hypertable甚至可以不用看了,这也许是他最后一次出现在这个名单中。
再来看看来自 SimpleHired的短期趋势表:
4
SimplyHired的短期趋势表与indeed的数据稍有不同。MongoDB虽然仍然领先,但与Cassandra却没有明显差距。HBase Redis与indeed的数据相近。CouchDB的发展比较平缓,也仅仅摆脱了成为尾流的命运。Riak在最近几个月有所好转,但仍不足以超越SimpleDB。SimpleDB在过去八个月需求稍有下降,但是在2011年底却有了一个轻微的上升。Voldemort的需求表现并不积极,在2011年度几乎没有增长。Hypertable更惨,几乎看不到它的身影。总体来说,SimplyHired的数据并没有Indeed里的看起来那么好。
最后来看看indeed的相对增量对比图:
这张图中明显能看到数据是从2009年中期开始增长,MongoDB甚至有80000%的增长率。这个表格的数据是在令人有些困惑,尽管它也表现出NoSQL需求量快速增长的趋势。Redis5
也有45000%的增长,接下了的一年也许应该着重关注一下,照这个增长速度,它也许将会成为Cassandra和MongoDB的劲敌。HBase也迅速增长了20000%, Cassandra是13000%左右。CouchDB的相对疲弱,只有5000%,与Riak相近,SimpleDB显示大约有2500%的增幅和Voldemort也稍有增长。Hypertable要么是被遮住了,要么就是没有任何增长趋势,无论是哪种,在快速增长的大环境下,对Hypertable来说都是个可怕的迹象。
MongoDB渐渐与其他对手拉开距离,考虑到Cassandra背后还有Facebook的支持,这确实是一个很有趣的现象。Redis开始有一些需求,而且从去年的数据来看还是不错的。HBase的增长有一部分是因为Hadoop。Riak和CouchDB同样还需要继续观察,原因却并不相同。Riak也许能照着这个势头挤进先头部队,但恐怕也很难。CouchDB因为Couchbase自顾自地发展而产生了一些通讯问题(Messaging issues),Apache正试着来收拾残局。凭借Apache的影响力,CouchDB仍然有需求,但对于CouchDB来说今年会是关键的一年,而其他工具会迅速进入“低落”状态。
3. MapReduce——Hadoop的核心
MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)"和"Reduce(化简)",和他们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。他极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。 当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新的键值对,指定并发的Reduce(化简)函数,用来保证所有映射的键值对中的每一个共享相同的键组
MapReduce——Hadoop的核心
6
7
Google的网络搜索引擎在得益于算法发挥作用的同时,MapReduce在后台发挥了极大的作用。MapReduce框架成为当今大数据处理背后的最具影响力的“发动机”。除了Hadoop,你还会在MapReduce上发现MPP(Sybase IQ推出了列示数据库)和NoSQL(如Vertica和MongoDB)。
MapReduce的重要创新是当处理一个大数据集查询时会将其任务分解并在运行的多个节点中处理。当数据量很大时就无法在一台服务器上解决问题,此时分布式计算优势就体现出来。将这种技术与Linux服务器结合可获得性价比极高的替代大规模计算阵列的方法。Yahoo在2006年看到了Hadoop未来的潜力,并邀请Hadoop创始人Doug Cutting着手发展Hadoop技术,在2008年Hadoop已经形成一定的规模。Hadoop项目再从初期发展的成8
熟的过程中同时吸纳了一些其他的组件,以便进一步提高自身的易用性和功能。
9
发布者:admin,转转请注明出处:http://www.yc00.com/news/1689901815a293465.html
评论列表(0条)