时间:2023-03-21 17:16:41
导言:作为写作爱好者,不可错过为您精心挑选的10篇大数据技术,它们将为您的写作提供全新的视角,我们衷心期待您的阅读,并希望这些内容能为您提供灵感和参考。
中图分类号:TP391 文献标志码:A 文章编号:1006-8228(2015)01-13-02
Overview on big data technology
Yang Jing
(Department of Computer Science, Yunyang Teachers' College, Shiyan, Hubei 442000, China)
Abstract: Big data is a new technical wave after the network of things and cloud computing. To understand big data technology, the definition and 4V characteristics, the key technologies and main application fields are systematically analyzed in the paper. Through the introduction of the basic conception, characteristics, the main application fields with typical cases are summarized. The core technologies, key strategies of cloud computing, hadoop and data backup are analyzed. The potential information safety risks are pointed out. The countermeasures are given to provide some suggestions and references for wider application and study in the future.
Key words: big data; 4V characteristics; Hadoop; cloud computing
0 引言
物联网、云计算等新兴技术的迅速发展开启了大数据时代的帷幕。大数据技术是指从各种各样的海量数据中,快速获取有价值信息的技术,大数据的核心问题就是大数据技术。目前所说的“大数据”不仅指数据本身的规模大,还包括采集数据的工具、平台和数据分析系统复杂程度大。大数据的研发目的是发展大数据技术并将其应用到相关领域,解决实际生产、生活中的各种问题,从而推动信息技术健康地可持续发展。
1 大数据的定义及主要特征
与其他新兴学科一样,目前大数据没有一个统一的标准和定义。一般认为:大数据是由大量异构数据组成的数据集合,可以应用合理的数学算法或工具从中找出有价值的信息,并为人们带来经济及社会效益的一门新兴学科。大数据又被称为海量数据、大资料、巨量数据等,指的是所涉及的数据量规模巨大,以至于无法在合理时间内通过人工攫取、管理、处理并整理成为人类所能解读的信息。这些数据来自方方面面,比如社交网络、传感器采集、安防监控视频、购物交易记录等。尽管尚无统一定义,但这些无比庞大的数据被称为大数据。大数据具有如下4V特性[1]:
⑴ 体量Volume,是指数据存储量大,计算量大;
⑵ 多样Variety,是指大数据的异构和多样性,比如数据来源丰富,数据格式包括多种不同形式,如网络日志、音频、视频、图片、地理位置信息等等;
⑶ 价值Value,是指大数据价值密度相对较低,信息海量,但是要挖掘出真正有价值的数据难度较大,浪里淘沙却又弥足珍贵;
⑷ 速度Velocity,是指数据增长速度快,处理速度要求快。
2 大数据技术的应用领域
通过对海量数据进行采集、分析与处理,挖掘出潜藏在数据海洋里的稀疏但却弥足珍贵的信息,大数据技术正在对经济建设、医疗教育、科学研究等领域产生着革命性的影响,其所带来的巨大使用价值正逐渐被各行各业的人们所感知。
2.1 金融领域
大数据的火热应用突出体现在金融业,各大互联网企业(谷歌、阿里巴巴等)纷纷掘金大数据,开创了新的互联网金融模式。目前阿里巴巴的互联网金融做得如火如荼:基金、小额信贷、余额宝和理财保险产品等等,阿里巴巴之所以能够做火金融服务,其主要原因就在于阿里的大数据,阿里巴巴的电商平台存储了大量微小企业客户及数以亿计的个人用户行为信息、交易记录、身份数据等,拥有最好、最全的数据以及最完整的产业链,做P2P及个人小额信贷,具有最大优势[2]。相反,传统商业银行早期就已推出的小额信贷业务,开展得并不十分顺利。
2.2 市场营销
今天的数字化营销与传统市场营销最大的区别就在于精准定位及个性化。如今企业与客户的交流渠道发生了革命性的变化,从过去的电话及邮件,发展到今天的博客、论坛、社交媒体账户等,从这些五花八门的渠道里跟踪客户,将他们的每一次点击、加好友、收藏、转发、分享等行为纳入到企业的销售漏斗中并转化成一项巨大的潜在价值,就是所谓的360度客户视角。例如谷歌的销售策略主要着眼于在线的免费软件,用户使用这些软件时,无形中就把个人的喜好、消费习惯等重要信息提交给了谷歌,因此谷歌的产品线越丰富,他们对用户的理解就越深入,其广告定位就越精准,广告所攫取的价值就越高,这是正向的循环。
2.3 公众服务
大数据的另一大应用领域是公众服务。如今数据挖掘已经能够预测海啸、地震、疾病暴发,理解交通模型并改善医疗和教育等。例如,可采用神经网络和基于地震时间序列的支持向量机方法来预测地震的大概方位、时间、震级大小等重要信息,为通用地震模拟程序提供关键的数据,从而对地震进行早期预警,以使防震抗灾部门可以提前做好应对措施,避免大量的人员伤亡及财产损失;再如,将各个省市的城镇医疗系统、新农村合作医疗系统等全部整合起来,建立通用的电子病历等基础数据库,实现医院之间对病患信息的共享,提高患者就医效率[3];电力管理系统通过记录人们的用电行为信息(做饭、照明、取暖等),大数据智能电网就能实现优化电的生产、分配及电网安全检测与控制,包括大灾难预警与处理、供电与电力调度决策支持和更准确的用电量预测等,并通过数据挖掘技术找出可行的节能降耗措施,以实现更科学的电力需求分配管理。
2.4 安防领域
安防领域中最重要的就是视频监控系统,从早期看得见到现在看得远、看得清,视频监控是典型的数据依赖型业务,依赖数据说话。尤其是高清、超高清监控时代的到来,会产生巨量的视频数据。这些巨量视频监控数据中,多数是冗余无用的,只有少数是关键数据,如何剔除这些无用数据,一直是人们研究问题的焦点。在大数据技术的支撑下,通过对巨量视频数据的分析与处理,可实现模糊查询、精准定位、快速检索等,能够对高清监控视频画质进行细节分析,智能挖掘出类似行为及特征的数据,从而为业务分析和事件决策判断提供精准依据。
3 大数据处理关键技术
3.1 数据备份技术
在大数据时代,如何做好数据的安全备份至关重要。数据备份是数据容灾的前提,具体是指当出现某种突发状况导致存储系统中的文件、数据、片段丢失或者严重损坏时,系统可准确而快速地将数据进行恢复的技术。数据容灾备份是为防止偶发事件而采取的一种数据保护手段,其核心工作是数据恢复,根本目的是数据资源再利用。
3.2 Hadoop
大数据时代对于数据分析、管理等都提出了更高层次的要求,传统的关系型数据库和数据分析处理技术已经不能满足大数据横向扩展的需求。为了给大数据处理、分析提供一个性能更好、可靠性更高的平台,Apache基金会开发了一个开源平台Hadoop[4],该平台用Java语言编写,可移植性强,现在Hadoop已经发展为一个包括HDFS(分布式文件系统 )、HBase(分布式数据库)等功能模块在内的完整生态系统,成为目前主流的大数据应用平台。
3.3 云计算
如果把各种各样的大数据应用比作在公路上行驶的各种汽车,那么支撑这些汽车快速运行的高速公路就是云计算,云计算是大数据分析处理技术的核心。正是由于云计算在海量信息存储、分析及管理方面的技术支持,大数据才有了如此广阔的用武之地。谷歌的各种大数据处理技术和应用平台都是基于云计算,最典型的就是以UFS(UIT云存储系统)、MapReduce(批处理技术)、BigTable(分布式数据库)为代表的大数据处理技术以及在此基础上产生的开源数据处理平台Hadoop[5]。
4 大数据应用带来的信息安全隐患及应对策略
大数据时代,海量数据通常存储在大规模分布式的网络节点中,管理相对分散,而且系统也无法控制用户进行数据交易的场所,因此很难辨别用户的身份(合法及非法用户),容易导致不合法用户篡改或窃取信息;此外,大数据存储系统中包含了海量的个人用户隐私数据及各种行为的记录信息,如何在大数据的挖掘利用中确定一个信息保护和开放的尺度, 是大数据面临的又一难题。为了合理利用大数据并有效规避风险,我们提出以下四点建议:
⑴ 国家出台相关政策,加强顶层设计,保障数据存储安全;
⑵ 增强网络安全防护能力,抵御网络犯罪,确保网络信息安全;
⑶ 提高警惕积极探索,加大个人隐私数据保护力度;
⑷ 深化云计算安全领域研究,保障云端数据安全。
5 结束语
在当今信息知识爆炸的时代,大数据技术已经被广泛应用于商业金融、电力医疗、教育科研等领域。随着数据挖掘技术的不断进步,相关信息行业竞相从规模庞大、结构复杂的大数据海洋中攫取更多有价值的数据信息用于分析、解决现实生活中的各种实际问题,从而实现信息技术的快速健康发展。本文梳理了大数据的基本概念及4V特征,总结归纳了大数据技术的四大热门应用领域及三大核心处理技术,分析了大数据技术带来的诸如信息窃取及篡改、个人隐私数据泄露等信息安全隐患,并提出了相应的解决措施及建议。当然,目前大数据技术的研究尚处在起步阶段,还有许多深层次的问题亟待解决,如大数据的存储管理是通过硬件的简单升级还是通过系统的重新设计来解决,大数据4V特征中起关键作用的是什么,大数据技术的应用前景是什么,等等。就目前来看,未来大数据技术的研究之路还很长,需要我们用更加敏锐的洞察力来分析和研究。
参考文献:
[1] BARWICK H. The "four Vs" of big data. Implementing Information
Infrastructure Symposium[EB/OL]. [2012-10-02]. http://.au/article/396198/iiis_four_vs_big_data/.
[2] 韦雪琼,杨哗,史超.大数据发展下的金融市场新生态[Jl.时代金融,
2012.7:173-174
[3] 张敬谊,佘盼,肖筱华.基于云计算的区域医疗信息化服务平台的研
中图分类号:TP311 文献标识码:A 文章编号:1007-9416(2015)04-0222-01
1 大数据时代数据挖掘的重要性
随着互联网、物联网、云计算等技术的快速发展,以及智能终端、网络社会、数字地球等信息体的普及和建设,全球数据量出现爆炸式增长,仅在2011年就达到1.8万亿GB。IDC(Internet Data Center,互联网络数据中心)预计,到2020 年全球数据量将增加50倍。毋庸置疑,大数据时代已经到来。一方面,云计算为这些海量的、多样化的数据提供存储和运算平台,同时数据挖掘和人工智能从大数据中发现知识、规律和趋势,为决策提供信息参考。
如果运用合理的方法和工具,在企业日积月累形成的浩瀚数据中,是可以淘到沙金的,甚至可能发现许多大的钻石。在一些信息化较成熟的行业,就有这样的例子。比如银行的信息化建设就非常完善,银行每天生成的数据数以万计,储户的存取款数据、ATM交易数据等。
数据挖掘是借助IT手段对经营决策产生决定性影响的一种管理手段。从定义上来看,数据挖掘是指一个完整的过程,该过程是从大量、不完全、模糊和随机的数据集中识别有效的、可实用的信息,并运用这些信息做出决策。
2 数据挖掘的分类
数据挖掘技术从开始的单一门类的知识逐渐发展成为一门综合性的多学科知识,并由此产生了很多的数据挖掘方法,这些方法种类多,类型也有很大的差别。为了满足用户的实际需要,现对数据挖掘技术进行如下几种分类:
2.1 按挖掘的数据库类型分类
利用数据库对数据分类成为可能是因为数据库在对数据储存时就可以对数据按照其类型、模型以及应用场景的不同来进行分类,根据这种分类得到的数据在采用数据挖掘技术时也会有满足自身的方法。对数据的分类有两种情况,一种是根据其模型来分类,另一种是根据其类型来分类,前者包括关系型、对象-关系型以及事务型和数据仓库型等,后者包括时间型、空间型和Web 型的数据挖掘方法。
2.2 按挖掘的知识类型分类
这种分类方法是根据数据挖掘的功能来实施的,其中包括多种分析的方式,例如相关性、预测及离群点分析方法,充分的数据挖掘不仅仅是一种单一的功能模式,而是各种不同功能的集合。同时,在上述分类的情况下,还可以按照数据本身的特性和属性来对其进行分类,例如数据的抽象性和数据的粒度等,利用数据的抽象层次来分类时可以将数据分为三个层次,即广义知识的高抽象层,原始知识的原始层以及到多层的知识的多个抽象层。一个完善的数据挖掘可以实现对多个抽象层数据的挖掘,找到其有价值的知识。同时,在对数据挖掘进行分类时还可以根据其表现出来的模式及规则性和是否检测出噪声来分类,一般来说,数据的规则性可以通过多种不同的方法挖掘,例如相关性和关联分析以及通过对其概念描述和聚类分类、预测等方法,同时还可以通过这些挖掘方法来检测和排除噪声。
2.3 按所用的技术类型分类
数据挖掘的时候采用的技术手段千变万化,例如可以采用面向数据库和数据仓库的技术以及神经网络及其可视化等技术手段,同时用户在对数据进行分析时也会使用很多不同的分析方法,根据这些分析方法的不同可以分为遗传算法、人工神经网络等等。一般情况下,一个庞大的数据挖掘系统是集多种挖掘技术和方法的综合性系统。
2.4 按应用分类
根据数据挖掘的应用的领域来进行分类,包括财经行业、交通运输业、网络通信业、生物医学领域如DNA等,在这些行业或领域中都有满足自身要求的数据挖掘方法。对于特定的应用场景,此时就可能需要与之相应的特殊的挖掘方法,并保证其有效性。综上所述,基本上不存在某种数据挖掘技术可以在所有的行业中都能使用的技术,每种数据挖掘技术都有自身的专用性。
3 数据挖掘中常用的方法
目前数据挖掘方法主要有4种,这四种算法包括遗传、决策树、粗糙集和神经网络算法。以下对这四种算法进行一一解释说明。
遗传算法:该算法依据生物学领域的自然选择规律以及遗传的机理发展而来,是一种随机搜索的算法,利用仿生学的原理来对数据知识进行全局优化处理。是一种基于生物自然选择与遗传机理的随机搜索算法,是一种仿生全局优化方法。这种算法具有隐含并行性、易与其它模型结合等优点从而在数据挖掘中得到了应用。
决策树算法:在对模型的预测中,该算法具有很强的优势,利用该算法对庞大的数据信息进行分类,从而对有潜在价值的信息进行定位,这种算法的优势也比较明显,在利用这种算法对数据进行分类时非常迅速,同时描述起来也很简洁,在大规模数据处理时,这种方法的应用性很强。
粗糙集算法:这个算法将知识的理解视为对数据的划分,将这种划分的一个整体叫做概念,这种算法的基本原理是将不够精确的知识与确定的或者准确的知识进行类别同时进行类别刻画。
神经网络算法:在对模型的预测中,该算法具有很强的优势,利用该算法对庞大的数据信息进行分类,从而对有潜在价值的信息进行定位,这种算法的优势也比较明显,在利用这种算法对数据进行分类时非常迅速,同时描述起来也很简洁,在大规模数据处理时,这种方法的应用性很强。光缆监测及其故障诊断系统对于保证通信的顺利至关重要,同时这种技术方法也是顺应当今时代的潮流必须推广使用的方法。同时,该诊断技术为通信管网和日常通信提供了可靠的技术支持和可靠的后期保证。
参考文献
中图分类号:TP311.13
关于数据方面的新名词是层出不穷,云计算、物联网的概念还没有完全理解,大数据的概念又频频出现在媒体中,特别是今年“两会”期间,在央视报道中,多次使用大数据进行实时分析。大数据的概念从计算机业界也迅速传播到各行各业,与我们的日常生活也密切的联系在一起。不但中国如此,2012年3月,奥巴马宣布美国政府五大部门投资两亿美元启动“大数据研究与开发计划”,【1】大力推动大数据相关的收集、储存、保留、管理、分析和共享海量数据技术研究,以提高美国的科研、教育与国家安全能力,美国政府以及把“大数据”技术上升到国家安全战略的高度。其他国家也纷纷加大对大数据研究的资金投入,同时,许多大公司企业也将此技术视作创新前沿。
1 大数据概念与特征
但是,到目前为止,业界关于大数据的概念尚未有统一的定义。最早将大数据应用于IT环境的是著名的咨询公司麦肯锡,它关于大数据的定义是这样的:大数据是指无法在一定时间内用传统数据库软件工具对其内容进行采集、存储、管理和分析的数据集合。另外,被引用较多得到大家认可的还有维基百科的定义:大数据指数量巨大、类型复杂的数据集合,现有的数据库管理工具或传统的数据处理应用难以对其进行处理。这些挑战包括如捕获、收集、存储、搜索、共享、传递、分析与可视化等。【2】
当前,较为统一的认识是大数据有四个基本特征:数据规模大(Volume),数据种类多(Variety),数据要求处理速度快(Velocity),数据价值密度低(Value),即所谓的四V特性。这些特性使得大数据区别于传统的数据概念。【3】
首先,数据量庞大是大数据的最主要的特征,大数据的数据规模是以PB、EB、ZB量级为存储单位的,数据量非常庞大。同时,此类数据还在不断的加速产生,因此,传统的数据库管理技术无法在短时间内完成对数据的处理。第二,数据种类多。与传统的数据相比,大数据的数据类型种类繁多,包括了结构化数据、半结构化数据和非结构化数据等多种数据类型。传统的数据库技术采取关系型数据库较多,结构单一,而大数据重点关注的是包含大量细节信息的非结构化数据,因此传统数据库技术不能适应新的大数据的要求,传统的数据处理方式也面临着巨大的挑战。第三,大数据的产生与存储是动态的,有的处理结果时效性要求很高,这就要求对数据能够快速处理,数据处理速度快也是大数据区别数据仓库的主要因素。数据产生的速度以及快速变化形成的数据流,超越了传统的信息系统的承载能力。最后,数据价值密度低是大数据关注的非结构化数据的重要属性。大数据分析是采用原始数据的分析,保留了数据的全貌,因此一个事件的全部数据都会被保存,产生的数据量激增,而有用的信息可能非常少,因此价值密度偏低。
2 大数据可用性的面临的技术与问题
大数据并不仅仅指其数据量之大,更代表着其潜在的数据价值之大。有研究证明,有效地管理、使用大数据能够给企业提供更多增强企业生产能力和竞争能力的机会,能够给企业带来巨大的潜在商业价值。【4】但不可否认的是,大数据目前也面临很多负面影响。低质量低密度的数据也可能对决策造成致命性的错误。如何把大数据从理论研究到企业应用的转变,还面临很多问题与挑战。
(1)可用性理论体系的建立。大数据的可用性需要完整的理论做支撑,才能解决诸如如何形式化的表示数据可用性、如何评估数据可用性、数据错误自动发现和修复依据什么理论、如何管理数据和数据融合、数据安全性采取何种策略和理论等一系列问题。因此,要建立完整可用性理论体系,构建统一的模型,为大数据的进一步应用提供坚实的理论基础。
(2)高质量数据的获取的能力。大数据技术最基础的对象就是数据,是一切应用和分析决策的前提。因此,获取高质量数据是确保信息可用性的重要因素之一。随着互联网的数据不断增大,物联网的兴起以及复杂物理信息系统的应用,大数据的来源也多种多样,数据模型千差万别,质量也参差不齐,这就为加工整合数据带来非常大的困难。
大数据是对事物最原始的全貌记录,数据量规模很大,但是其中有用的信息非常少,因此,对于处理数据来说,数据并不是越多越好。如何提高数据中的有效数据是非常关键的。大量的数据中如果仅仅包含了少量的错误数据,对分析结果可能不会造成很大的影响。但是如果对错误数据没有有效控制的话,大量错误数据的涌入很可能会得到完全错误的结果。
因此,获取高质量数据的能力是大数据能否进行实用的关键因素,否则只会在浪费人力物力后获得完全无效甚至错误的结果。但是目前还缺乏系统的研究,对于出现的问题还没有很好的解决方案,在获取数据方面的工作任重而道远。
1、大数据技术是指大数据的应用技术,涵盖各类大数据平台、大数据指数体系等大数据应用技术。
2、大数据是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合。是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。
3、随着云时代的来临,大数据也吸引了越来越多的关注。分析师团队认为,大数据通常用来形容一个公司创造的大量非结构化数据和半结构化数据,这些数据在下载到关系型数据库用于分析时会花费过多时间和金钱。
4、大数据分析常和云计算联系到一起,因为实时的大型数据集分析需要像MapReduce一样的框架来向数十、数百或甚至数千的电脑分配工作。
(来源:文章屋网 )
中图分类号:TP311 文献标识码:A 文章编号:1007-9416(2015)09-0000-00
大数据远不止大量的数据(TB)和处理大量数据的技术,它以一种前所未有的方式,通过对海量数据进行分析,获得有巨大价值的产品和服务[1]。然而面对庞大的数据来获得有价值的信息是一个巨大的挑战。为了克服上述困难,近几年来推出了Hadoop、PureData和Exadata等多种大数据系统分析平台,以Hadoop平台最为突出,深受用户的欢迎。但是随着应用的不断深入,Hadoop暴露出了它的局限性。主要体现在以下几方面:第一,操作过于单一,仅支持Map和Reduce两种操作;第二,迭代计算效率较低,尤其在机器学习和图形计算方面[2]。 2013年底由Apache 软件基金会提出的Spark框架技术较好地解决了这些问题。
1 Spark技术架构
1.1 Spark设计思想
Spark是一种基于HDFS的并行计算架构。主要思想是通过一种新的作业和数据容错方式来减少磁盘和网络的I/O开销 其核心技术是弹性分布式数据集(RDD),是指在一组存储计算机中的只读数据集合,这个数据集合可以在分区对象丢失后进行重建[5]。也就是说RDD的元素不一定需要存储在物理介质中,相反,一个RDD的处理进程包含了如何从可靠的数据存储中去获取足够的信息来对这个RDD进行处理。如果RDDS的任务节点失败,总可以进行重建[3]。
1.2 Spark系统架构
与MapReduce不同,Spark并不仅仅局限于编写map和reduce两个方法,它为用户提供了更为强大的内存计算模型,使得用户可以通过编程将数据读取到集群的内存当中,这样可以快速在内存中对数据集进行多次迭代,支持复杂的数据挖掘算法和图计算算法使用Scala语言开发,以Mesos作为底层的调度框架,可以和 Hadoop和Ec2紧密集成,直接读取HDFS或S3的文件进行计算并把结果写回HDFS或S3,是Hadoop和Amazon云计算生态圈的一部分,项目的core部分代码只有63个Scala文件,执行效率高效。Spark主要由四个模块组成:Spark SQL、MLlib、Spark 流和GraphX。Spark SQL为了兼容主流关系型数据库系统(RDBMS)可以允许用户编写SQL和HQL两种脚本执行查询,其核心组件是JavaSchemaRDD,它是一个类似于RDBMS的一个Table,由Row和Schema对象来描述Table中行对象和列的DataType。
2 Spark运行模式
2.1 Spark任务调度方式
Spark的运行模式有多种,主要由SparkContext的MASTER环境变量所获得的值来决定,有些模式还需要程序接口来配合辅助决定。但概括起来,Spark运行都以Spark-Context为总调度驱动程序,负责应用程序的资源分配,期间分别创建作业调度和任务调度两级模块。作业调度模块是基于阶段的高层调度模块,每个Spark 作业计算通常有多个阶段,每个阶段分解为一组任务集,以任务组的形式提交给底层任务调度模块来具体执行实际计算任务,任务调度模块负责启动实际任务,监控和汇报任务运行情况。如果分配任务成功,SparkContext会将应用程序代码给指定的执行者完成一个或多个任务[4]。
2.2 Spark运行模式类型
Spark的运行模式,归纳起来有六种。
(1)Local[M]。该模式使用 LocalBackend 调用TaskSchedulerImpl 实现。LocalBackend 响应Scheduler的receiveOffers请求,根据可用CPU Core的设定值[M]直接生成WorkerOffer资源返回给Scheduler,并通过Executor类在线程池中依次启动和运行Scheduler返回的任务列表。
(2)Standalone。该模式使用SparkDeploySchedulerBackend调用TaskSchedulerImpl来实现 ,而SparkDeploySchedulerBackend同时继承了CoarseGrainedSchedulerBackend。是一个在Akka Actor上实现的粗粒度的资源调度类,在整个Spark Job运行期间,监听和拥有注册给它的Executor资源,比如接受Executor注册,状态更新,响应Scheduler请求等,并且根据现有Executor资源发起任务流程调度。
(3)Local-cluster。伪分布模式实际上是在Standalone模式上实现的,也就是在SparkContext初始化的过程中在本地启动一个单机的伪分布Spark集群,后面的执行流程与Standalone模式相同。
(4)Mesos。该模式主要根据颗粒度大小来区分,粗粒度的CoarseMesosSchedulerBackend继承了CoarseGrained SchedulerBackend,相对于父类额外做的工作还要实现MScheduler接口,注册到Mesos资源调度的框架中,用于接收Mesos的资源分配,在得到资源后通过Mesos框架远程启动CoarseGrainedExecutorBackend,以后的任务交互过程和Spark standalone模式一样,由DriverActor和Executor Actor直接完成。 细粒度的MesosSchedulerBackend直接继承SchedulerBackend,但同样实现了MScheduler接口,完成Mesos资源调度框架中的注册,接收Mesos的资源分配。不同之处是在接收资源分配以后,MesosSchedulerBackend启动的是远程Executor,通过在远程执行命令来启动MesosExecutorBackend,直接执行对应的任务。
(5)Yarn-standalone。Yarn-Standalone模式相对其它模式有些特殊,需要外部程序辅助启动应用程序。Client通过Yarn Client API在Hadoop集群上启动一个Spark App Master,Spark App Master首先为自己注册一个Yarn App Master,再启动用户程序,然后根据Client传递过来的参数,Spark App Master通过Yarn RM/NM接口在集群中启动多个Container运行CoarseGrainedExecutorBackend往CoarseGrainedSchedulerBackend注册。后面的任务调度流程跟其它Cluster模式类似,不再述说。
(6)Yarn-client。该模式的SparkContext运行在本地,适用于应用程序本身需要在本地交互的情景。这种模式下SparkContext在初始化时首先启动YarnClientSchedulerBackend,然后再调用客户端包远程启动一个作业作为Spark的App Master,相对于Yarn-standalone模式,此模式不再负责启动用户程序,而只是启动Backend便于跟客户端本地Driver进行数据传递,后面的任务调度流程跟其它模式类似。
3 Spark应用现状及发展
目前SPARK已经构建了自己的整个大数据处理生态系统,如流处理、图技术、机器学习、NoSQL查询等方面的技术,并且是Apache顶级项目。虽然Spark对内存要求较高,推出时间较短未经过实践考验,但伴随着大数据相关技术和产业的逐步成熟,继Hadoop之后,Spark技术以集大成的无可比拟的优势,发展迅速,将成为替代Hadoop的下一代云计算、大数据核心技术。可以预计2015年下半年在社区和商业应用上会有爆发式的增长。
参考文献
[1] K. Shvachko, K. Hairong, S. Radia e R. Chansler. The Hadoop Distributed File System[C]. IEEE 26th Symposium on Mass Storage Systems and Technologies, 2010.
[2] Spark: Lighting-fast cluster computing[EB/OL]. http:///.
[3] M. Hirzel, H. Andrade, B. Gedik, et al. IBM Streams Processing Language: Analyzing Big Data in motion[J]. IBM Journal of Research and Development.2013,57(7):1-7.
1.1什么是大数据
大数据概念可以从四个维度去解,即三个V和一个C。三个V分别指的是数据量大(Volume)、数据种类多(Variety)和数据增长速度快(Velocity),最后一个C指的是处理、升级或利用大数据的分析手段比处理结构化数据要复杂的多(Complexity)。大数据分析常和云计算联系到一起,因为实时的大型数据集分析需要像Map-Reduce一样的并行计算框架将复杂的计算任务分配到“云”中成百上千的节点。
1.2大数据与云计算
大数据本身就是一个问题集,云计算技术是目前解决大数据问题集最重要最有效的手段。云计算提供了基础的架构平台,大数据应用在这个平台上运行。目前公认为分析大数据集最有效手段的分布式处理技术,也是云计算思想的一种具体体现。
云计算是分布式处理、并行处理和网格计算的发展,或者说是这些计算机科学概念的商业实现。云计算将网络上分布的计算、存储、服务构件、网络软件等资源集中起来,基于资源虚拟化的方式,为用户提供方便快捷的服务, 实现了资源和计算的分布式共享和并行处理,能够很好地应对当前互联网数据量高速增长的势头。
1.3大数据与Hadoop
Hadoop是一个Apache的开源项目,主要面向存储和处理成百上千TB直至PB级别的结构化、半结构化或非结构化的大数据。Hadoop提供的Map-Reduce能将大数据问题分解成多个子问题,并将它们分配到成百上千个处理节点之上,再将结果汇集到一个小数据集当中,从而更容易分析得出最后的结果。
Hadoop项目包括三部分,分别是Hadoop Distributed File System(HDFS)、Map Reduce编程模型,以及Hadoop Common。Hadoop具备低廉的硬件成本、开源的软件体系、较强的灵活性、允许用户自己修改代码等特点,同时能支持海量数据的存储和计算任务。这些特点让Hadoop被公认为是新一代的大数据处理平台。 Hadoop同样具备出色的大数据集处理能力,在获取、存储、管理和分析数据方面远远超越传统的数据库软件工具。Hadoop经常在构建大数据解决方案时被用作基础构架软件。
二、大数据技术综述
大数据处理不仅仅是Hadoop,许多特定的数据应用场景是需要实时分析和互动反馈的,这时候就需要利用包括内存检索、流处理和实时计算等其他技术。而云计算的分布式存储和计算架构开启了大数据技术研究的大门,打造健全的大数据生态环境,所有这些技术结合在一起,才是一个完整的大数据处理系统。
2.1分布式计算框架
MapReduce是Google开发的一种简化的分布式编程模型和高效的任务调度模型,用于大规模数据集(大于1TB)的并行运算,使云计算环境下的编程变得十分简单。
MapReduce将数据处理任务抽象为一系列的Map(映射)和Reduce(化简)操作对。Map主要完成数据的分解操作,Reduce主要完成数据的聚集操作.输入输出数据均以〈key,value〉格式存储.用户在使用该编程模型时,只需按照自己熟悉的语言实现Map函数和Reduce函数即可,MapReduce算法框架会自动对任务进行划分以做到并行执行。
Pregel是Google 提出的迭代处理计算框架,它具有高效、可扩展和容错的特性,并隐藏了分布式相关的细节,展现给人们的仅仅是一个表现力很强、很容易编程的大型图算法处理的计算框架。Pregel的主要应用场景是大型的图计算,例如交通线路、疾病爆发路径、WEB 搜索等相关领域。
2.2分布式文件系统
为保证高可用、高可靠和经济性,基于云计算的大数据处理系统采用分布式存储的方式来保存数据,用冗余存储的方式保证数据的可靠性。目前广泛使用的分布式文件系统是Google的GFS和Hadoop团队开发的GFS的开源实现HDFS。
GFS即Google文件系统,是一个可扩展的分布式文件系统,用于大型的、分布式的、对大量数据进行访问的应用。GFS的设计思想不同于传统的文件系统,是针对大规模数据处理和Google应用特性而设计的,运行成本低廉,并提供容错功能。
HDFS即Hadoop分布式文件系统,受到GFS很大启发,具有高容错性,并且可以被部署在低价的硬件设备之上。HDFS很适合那些有大数据集的应用,并且提供了数据读写的高吞吐率。HDFS是一个master/slave的结构,在master上只运行一个Namenode,而在每一个slave上运行一个Datanode。HDFS支持传统的层次文件组织结构,对文件系统的操作(如建立、删除文件和文件夹)都是通过Namenode来控制,Datanode用来存放数据块。
2.3大数据管理技术
互联网数据已超出关系型数据库的管理范畴,电子邮件、超文本、博客、标签(Tag)以及图片、音视频等各种非结构化数据逐渐成为大数据的重要组成部分,而面向结构化数据存储的关系型数据库已经不能满足数据快速访问、大规模数据分析的需求,随之而来,一系列新型的大数据管理技术和工具应运而生。
2.3.1 非关系型数据库
NoSQL,也有人理解为Not Only SQL,它是一类非关系型数据库的统称。其特点是:没有固定的数据表模式、可以分布式和水平扩展。NoSQL并不是单纯的反对关系型数据库,而是针对其缺点的一种补充和扩展。典型的NoSQL数据存储模型有文档存储、键-值存储、图存储、对象数据、列存储等。而比较流行的,不得不提到Google的Bigtable,它把所有数据都作为对象来处理,形成一个巨大的表格,用来分布存储大规模结构化数据,数据量可达PB级。而HBase是Hadoop团队基于Bigtable的开源实现,使用HDFS作为其文件存储系统。同时,Cassandra(K/V型数据库)、MongoDB(文档数据库)和Redis等一系列优秀的非关系型数据库产品如雨后春笋般问世。
2.3.2 数据查询工具
Hive是Facebook提出的基于Hadoop的大型数据仓库,其目标是简化Hadoop上的数据聚集、即席查询及大数据集的分析等操作,以减轻程序员的负担.它借鉴关系数据库的模式管理、SQL接口等技术,把结构化的数据文件映射为数据库表,提供类似于SQL的描述性语言HiveQL供程序员使用,可自动将HiveQL语句解析成一优化的MapReduce任务执行序列.此外,它也支持用户自定义的MapReduce函数。
PigLatin是Yahoo!提出的类似于Hive的大数据集分析平台.两者的区别主要在于语言接口.Hive提供了类似SQL的接口,PigLatin提供的是一种基于操作符的数据流式的接口.可以说Pig利用操作符来对Hadoop进行封装,Hive利用SQL进行封装。
Google Dremel是个可扩展的、交互式的即时查询系统,用于完成大规模查询结构化数据集(如日志和事件文件)。它支持类SQL语法,区别在于它只能查询,不支持修改或者创建功能,也没有表索引。数据被列式存储,这样有助于提升查询的速度。Google将Dremel作为MapReduce的一种补充,被用于分析MapReduce的结果或者是作为大规模计算的测试。
2.4实时流处理技术
伴随着互联网业务发展的步调,以及业务流程的复杂化,企业的注意力越来越集中在“数据流”而非“数据集”上面,他们需要的是能够处理随时发生的数据流的架构,现有的分布式计算架构并不适合数据流处理。流计算强调的是数据流的形式和实时性。MapReduce系统主要解决的是对静态数据的批量处理,当MapReduce任务启动时,一般数据已经到位了(比如保存到了分布式文件系统上),而流式计算系统在启动时,一般数据并没有完全到位,而是经由外部数据源源不断地流入,重视的是对数据处理的低延迟,希望进入的数据越快处理越好。数据越快被处理,结果就越有价值,这也是实时处理的价值所在。
流计算的数据本身就是数据流,不需要数据准备的时间,有数据流入就开始计算,解决了数据准备和延迟的两个问题。现有的解决方案中,Twitter的Storm和雅虎的S4框架更适合数据流计算的场景。Storm是开源的分布式实时计算系统,可以可靠的处理流式数据并进行实时计算,单机性能可达到百万记录每秒,开发语言为Clojure和Java,并具备容错特性。S4是面向流式数据和实时处理的,所以针对实时性较高的业务,可以很好地对数据做出高效的分析处理,而且系统一旦上线,很少需要人工干预,源源不断的数据流会被自动路由并分析。对于海量数据,它和MapReduce都可以应对,但它能比后者更快地处理数据。
三、思考与展望
以云计算为基础的信息存储、分享和挖掘手段为知识生产提供了工具,通过对大数据分析、预测会使得决策更为精准,这对媒体融合具有重要意义。
中图分类号:TP311
文献标识码:A
文章编号:1009-3044(2017)10-0025-01
数据信息作为时代的信息管理标志其安全性必须收到更大的重视,数据信息的安全存储系统尤为重要,防止信息数据的丢失的管理备份系统更为重要。因此能够将数据信息妥善管理,保证其正常工作的技术相当重要,但当数据真正丢失或不可避免地出现问题以后能够尽快地将其找回或者是在有效的时间内将其完整地恢复,以确保整个计算机系统能够正常工作的技术更是必不可少的。
1.数据备份概念及其特点
数据备份指的是将计算机系统的所有数据或者是部分重要数据借助某一种或多种手段从计算机一个系统复制到另一个系统,或者是从本地计算机存储系统中复制到其他的存储系统中。其目的就是保障系统可用或者是数据安全。防止由于人为的失误或者是系统故障问题亦或是自然灾害等方面的原因造成系统数据的安全性无法保障的问题。数据备份更重要的原因是数据信息的多重保存以备不时之需。
数据备份按照备份的实现方式可以分为单机和网络两种备份方式,传统的备份就是单机备份针对计算机本身将数据进行异地存储,现代比较流行的就是网络备份。这是针对整个网络而言的,这种方式的备份较为复杂,是通过网络备份软件对存储介质和基础硬件存储设备的数据进行保存和管理。由于网络备份是在网络中进行数据备份的,因此也就不同于普通的传统单机备份,是包含需要备份的文件数据和网络系统中使用到的应用程序以及系统参数和数据库等内容的。
数据备份的作用在于:一方面,在数据受到损害时对数据进行还原和恢复;另一方面,数据信息的历史性、长久保存,方便数据的归档。
2.数据备份存储技术
备份换言之就是数据的再存储,因此备份技术是存储技术的重要内容之一,但是数据备份存储作为计算机系统技术与简单的备份区别很大。计算机数据备份存储技术时更为全面、完整、稳定安全的数据信息的备份,是网络系统高效数据存储的,也是安全性较高的网络备份。
文件存储作为最基础的数据类型是随机存储在硬盘上的数据片段和文档资料,这些存储的数据文档、报表甚至是作为数据库文件的应用程序等等在存储一定的量就会出现超出容量的情况因此对其的整合是必要的。这样的整合是将存储的各类数据或者是数据库以一个顺序和程序的形式出现,帮助人们解决备份存储的空间问题,技术问题以及成本问题。更能将工作人员的连续数据维护和监控从繁重的工作中解放出来。
3.保障计算机数据网络备份的安全性策略
通过网络传输的备份数据在传输过程和传输路径方面必须确保数据的安全性。若不能保证数据的安全那么一些企业的关键数据和重要应用程序就会受损,甚至是失去了备份的意义。因此相比单机备份而言网络备份更要确保安全传输和安全存储。
首先确保备份数据的机密性。数据信息的网络备份不能被非法用户随意获得,因此在数据备份过程和传输过程中必须防止数据的机密性被破坏。一般数据备份常用的方法是加密。必须保证是数据拥有者才能使用这些数据信息,关键的数据信息的加密工作相比更加严格。数据内容不容有失,甚至是数据的相关名称和代码等也不能随便被非法进入系统的人获得才是最能保障数据安全的方式。
此外,在数据网络传输存储之前一定要确认接受信息一方的真实性,核实双方信息是否匹配,一定要在双方身份确认之后才能对网络的数据信息进行发送和接受,这样既避免了欺诈行为又确保了网络中间不可信的因素存在使数据信息遭到破坏。
其次。确保备份数据的完整性。数据备份存储不是一个简单的过程,数据信息是通过设备和网络之间传输来完成备份数据存储的。这一个成必须要保障所传输的信息完整地被上传而且这些数据信息不能被其他方拦截和篡改,以破坏备份数据信息的内容和属性等。此外在存储时也要保障数据信息的正确无误完整保存。
大数据是对全球的数据量较大的一个概括,且每年的数据增长速度较快。而数据挖掘,主要是从多种模糊而又随机、大量而又复杂且不规则的数据中,获得有用的信息知识,从数据库中抽丝剥茧、转换分析,从而掌握其潜在价值与规律。所以大数据时代下的数据处理技术要求更高,要想确保数据处理成效得到提升,就必须切实加强数据挖掘技术教学工作的开展,才能更好地促进数据处理职能的转变,提高数据处理效率,优化学生的学习成效。以下就大数据时代下的数据挖掘技术教学做出如下分析。
1大数据时代下数据挖掘技术的基础教学方法分析
数据挖掘的过程实际就是对数据进行分析和处理,所以其基础就在于数据的分析方法。要想确保分析方法的科学性,就必须确保所采用算法的科学性和可靠性,获取数据潜在规律,并采取多元化的分析方法促进问题的解决和优化。以下就几种常见的数据分析教学方法做出简要的说明。一是归类法,主要是将没有指向和不确定且抽象的数据信息予以集中,并对集中后的数据实施分类整理和编辑处理,从而确保所形成的数据源具有特征一致、表现相同的特点,从而为加强对其的研究提供便利。所以这一分析方法能有效的满足各种数据信息处理。二是关联法,由于不同数据间存在的关联性较为隐蔽,采取人力往往难以找出其信息特征,所以需要预先结合信息关联的表现,对数据关联管理方案进行制定,从而完成基于某种目的的前提下对信息进行处理,所以其主要是在一些信息处理要求高和任务较为复杂的信息处理工作之中。三是特征法,由于数据资源的应用范围较广,所以需要对其特征进行挖掘。也就是采用某一种技术,将具有相同特征的数据进行集中。例如采用人工神经网络技术时,主要是对大批量复杂的数据分析,对非常复杂的模式进行抽取或者对其趋势进行分析。而采取遗传算法,则主要是对其他评估算法的适合度进行评估,并结合生物进化的原理,对信息数据的成长过程进行虚拟和假设,从而组建出半虚拟、半真实的信息资源。再如可视化技术则是为数据挖掘提供辅助,采取多种方式对数据的挖掘进行指导和表达[1]。
2大数据时代数据挖掘技术教学要点的分析
2.1数据挖掘技术流程分析
在数据挖掘教学过程中,其流程主要是以下几点:首先做好数据准备工作,主要是在挖掘数据之前,就引导学生对目标数据进行准确的定位,在寻找和挖掘数据之前,必须知道所需数据类型,才能避免数据挖掘的盲目性。在数据准备时,应根据系统的提示进行操作,在数据库中输入检索条件和目标,对数据信息资源进行分类和清理,以及编辑和预处理。其次是在数据挖掘过程中,由于目标数据信息已经被预处理,所以就需要在挖掘处理过程中将其高效正确的应用到管理机制之中,因而数据挖掘的过程十分重要,所以必须加强对其的处理。例如在数据挖掘中,引导学生结合数据挖掘目标要求,针对性的选取科学而又合适的计算和分析方法,对数据信息特征与应用价值等进行寻找和归纳。当然,也可以结合程序应用的需要,对数据区域进行固定,并在固定的数据区域内分类的挖掘数据,从而得到更具深度和内涵以及价值的数据信息资源,并就挖掘到的数据结果进行分析和解释,从结果中将具有使用价值和意义的规律进行提取,并还原成便于理解的数据语言。最后是切实加强管理和计算等专业知识的应用,将数据挖掘技术实施中进行的总结和提取所获得的数据信息与评估结果在现实之中应用,从而对某个思想、决策是否正确和科学进行判断,最终体现出数据挖掘及时的应用价值,在激发学生学习兴趣的同时促进教学成效的提升。
2.2挖掘后的数据信息资源分析
数据信息资源在挖掘后,其自身的职能作用将变得更加丰富,所以在信息技术环节下的数据挖掘技术随着限定条件的变化,而将数据挖掘信息应用于技术管理和决策管理之中,从而更好地彰显数据在经济活动中的物质性质与价值变化趋势,并结合数据变化特点和具体的表现规律,从而将数据信息的基本要素、质量特点、管理要求等展示出来,所以其表现的形式十分丰富。因而在数据挖掘之后的信息在职能范围和表现形式方式均得到了丰富和拓展,而这也在一定程度上体现了网络拟定目标服务具有较强的完整性,且属于特殊的个体物品,同时也是对传统数据挖掘技术的创新和发展,从而更好地满足当前大数据时代对信息进行数据化的处理,并对不同种类业务进行整合和优化,从而促进数据挖掘技术服务的一体化水平。
2.3大数据背景下的数据挖掘技术的应用必须注重信息失真的控制
数据挖掘技术的信息主要是源于大数据和社会,所以在当前数据挖掘技术需求不断加大的今天,为了更好地促进所挖掘数据信息的真实性,促进其个性化职能的发挥,必须在大数据背景下注重信息失真的控制,切实做好数据挖掘技术管理的各项工作。这就需要引导学生考虑如何确保数据挖掘技术在大数据背景下的职能得到有效的发挥,尽可能地促进数据挖掘技术信息资源的升级和转型,以大数据背景为载体,促进整个业务和技术操作流程的一体化,从而更好地将所有数据资源的消耗和变化以及管理的科学性和有效性,这样我们就能及时的找到资源的消耗源头,从而更好地对数据资源的消耗效益进行评价,最终促进业务流程的优化,并结合大数据背景对数据挖掘技术的职能进行拓展,促进其外部信息与内部信息的合作,对数据挖掘技术信息的职能进行有效的控制,才能更好地促进信息失真的控制[2]。
3数据挖掘技术在不同行业中的应用实践
学习的最终目的是为了更好的应用,随着时代的发展,数据挖掘技术将在越来越多的行业中得以应用。这就需要高校教师引导学生结合实际需要强化对其的应用。例如在市场营销行业中数据挖掘技术的应用这主要是因为数据挖掘能有效的解析消费者的消费行为和消费习惯,从而利用其将销售方式改进和优化,最终促进产品销量的提升。与此同时,通过对购物消费行为的分析,掌握客户的忠诚度和消费意识等,从而针对性的改变营销策略,同时还能找到更多潜在的客户。再如在制造业中数据挖掘技术的应用,其目的就在于对产品质量进行检验。引导学生深入某企业实际,对所制造产品的数据进行研究,从而找出其存在的规则,并对其生产流程进行分析之后,对其生产的过程进行分析,从而更好地对生产质量的影响因素进行分析,并促进其效率的提升。换言之,主要就是对各种生产数据进行筛选,从而得出有用的数据和知识,再采取决策树算法进行统计决策,并从中选取正确决策,从而更好地对产品在市场中的流行程度,决定生产和转型的方向。再如在教育行业中数据挖掘技术的应用,主要是为了更好地对学习情况、教学评估和心里动向等数据进行分类和筛选,从而为学校的教学改革提供参考和支持。比如为了更好地对教学质量进行评估,就需要对教学质量有关项目进行整合与存储,从而更好地促进其对教学质量的评估,而这一过程中,就需要采取数据挖掘技术对有关教学项目中的数据进行挖掘和处理,促进其应用成效的提升[3]。
4结语
综上所述,在大数据背景下,数据挖掘技术已经在各行各业中得到了广泛的应用,所以为了更好地满足应用的需要,在实际教学工作中,我们必须引导学生切实加强对其特点的分析,并结合实际需要,切实注重数据挖掘技术的应用,才能促进其应用成效的提升,最终达到学以致用的目的。
作者:何智文 邓伦丹 单位:南昌大学科学技术学院
参考文献:
一、大数据
1.大数据产生的背景
大数据(Big Data),也称巨量资料,指的是所涉及的资料量规模巨大到无法通过目前主流软件工具,在合理时间内达到撷取、管理、处理、并整理成为帮助企业经营决策更积极目的资讯,通常被认为是PB或EB或更高数量级的数据。
互联网络从上世纪90年代开始,发展迅速,加快了信息传播和共享的速度,尤其是一些社交网站的兴起,数据量更是以前所未有的速度暴增,文字资料、声音、视频、图像等多媒体数据铺天盖地。据资料显示,上世纪90年代,互联网资源不是很丰富的时代,网民月平均流量1MB左右,之后则快速增长,2000年后,逐渐发展为每月10MB、100MB、1GB,据估计2014年可能会达到10GB。淘宝网每日几千万笔交易,单日数据量达几十TB,数据存储量几十PB,百度公司目前数据总量接近1000PB,存储网页数量接近1万亿页,每天大约要处理60亿次搜索请求,几十PB数据。
随着技术发展,大数据广泛存在,如企业数据、统计数据、科学数据、医疗数据、互联网数据、移动数据、物联网数据等等。总之,大数据存在于各行各业,一个大数据的时代已经到来。
2.大数据时代的挑战
大数据特点是容量在增长、种类在增长、速度也在增长,面临如此庞大的数据量,数据的存储和检索面临着巨大挑战。比如2007年时,Facebook使用数据仓库存储15个TB的数据,但到了2010年,每天压缩过的数据比过去总和还多,那时商业并行数据库很少有超过100个节点以上的,而现在雅虎的Hadoop集群超过4000个节点,Facebook仓库节点超过2700个。大量的数据现在已经开始影响我们整个的工作、生活、甚至经济,如何存储和高效利用这些数据是需要我们解决的。
二、关系数据库
1.关系数据库概述
关系型数据库是支持关系模型的数据库系统,他是目前各类数据库中最重要,也是使用最广泛的数据库系统。关系型数据库从上世纪70年代诞生到现在经过几十年的发展,已经非常成熟,目前市场上主流的数据库都为关系型数据库,比较知名的有Oracle数据库、DB2、Sybase、SQL Server等等。
2.关系数据库优势
关系数据库相比其他模型的数据库而言,有着以下优点:
模型容易理解:关系模型中的二维表结构非常贴近逻辑世界,相对于网状、层次等其他模型来说更容易理解。
使用方便:通用的SQL语言使得操作关系型数据库非常方便,只需使用SQL语言在逻辑层面操作数据库,而完全不必理解其底层实现。
易于维护:丰富的完整性大大降低了数据冗余和数据不一致的概率。
3.关系数据库存在问题
传统的关系数据库具有不错的性能,稳定性高,历经多年发展已日臻成熟,而且使用简单,功能强大,也积累了大量的成功案例。上世纪90年代的互联网领域,网站基本都是静态网页,主要以文字为主,访问量也不大,当时用单个数据库完全可以应对。可近几年,动态网站随处可见,各种论坛、博克、微博异常火爆,在大幅度提升交流方式的同时,用户数据量迅速增长,处理事务性的数据关系数据库得心应手,可面对互联网的高并发、大数据量关系数据库显得力不从心,暴露了很多难以克服的问题:
数据库高并发读写:高并发的动态网站数据库并发负载非常高,往往要达到每秒上万次甚至百万次、千万次的读写请求。关系数据库应付上万次SQL查询没问题,但是应付上百万、千万次SQL数据请求,硬盘IO就已经无法承受了。
海量数据的高效率访问:一般大型数据库在百万级的数据库表中检索数据可达到秒级,但面对数亿条记录的数据库表,检索速度效率是极其低下,难以忍受的。
数据库可扩展性和高可用性:基于web的架构当中,数据库无法通过添加更多的硬件和服务节点来扩展性能和负载能力,对于很多需要提供24小时不间断服务的网站来说,数据库系统升级和扩展却只能通过停机来实现,这无疑是一个艰难的决定。
三、NOSQL数据库
1.NOSQL数据库理论基础
NOSQL作为新兴数据库系统概念,由于其具备处理海量数据的能力,近年来受到各大IT公司的追捧。Amazon、Google等大型网商已纷纷斥资进行研究并开发了适用的产品。谈及NOSQL数据库,首先应该了解支持NOSQL的理论:CAP理论、BASE思想和最终一致性。
(1)CAP理论
CAP理论由Eric Brewer在ACM PODC会议上的主题报告中提出,这个理论是NOSQL数据管理系统构建的基础,CAP解释为一致性(Consistency)、可用性(Availability)以及分区容忍性(Partition Tolerance)。具体描述如下:
强一致性(Consistency):系统在执行过某项操作后仍然处于一致的状态。在分布式数据库系统中,数据变更后所有的用户都应该读取到最新的值,这样的系统被认为具有强一致性。
可用性(Availability):每一个操作都能够在一定的时间内返回结果。“一定时间内”是指系统的结果必须在给定时间内返回,如果超时则被认为不可用,“返回结果”同样非常重要,必须能提供成功或失败的信息。
分区容错性(Partition Tolerance):分区容错性可以理解为系统在存在网络分区的情况下仍然可以接受请求。
CAP是在分布式环境中设计和部署系统时所要考虑的三个重要的系统需求。根据CAP理论,数据共享系统只能满足这三个特性中的两个,不能同时满足三个条件。因此系统设计者必须在这三个特性之间做出权衡。例如Amazon的Dynamo具有高可用性和分区容错性但不支持强一致性,也就是说用户不能立即看到其他用户更新的内容。
(2)BASE思想
BASE(Basically Availble),基本可用,强调数据库的最终一致(Eventually consistent最终一致,最终数据一致就可以,而不是时时高一致),不同于传统关系数据库基于的ACID模型。
ACID特性与高性能是不兼容的。比如,在网店买东西,每个客户买东西时都会通过锁来同步数据操作,操作完成每个客户都可以看到一致的数据。也就是说,不允许多个客户同时买的情况。很明显对于大多数网上商城,尤其是大型网商来说,这个方法并不适用。
BASE思想实际上是CAP理论中AP的衍伸。通过牺牲高一致性,保证高可用性和分区容忍性。BASE思想的组成有以下3个部分:基本可用、软状态、最终一致性。BASE模式指的是一个应用在任意时间首先应该能完成最基本化的工作(即基本可用),并不需要总是一致(即软状态),但最终应该是一致(即最终一致性)的。
(3)最终一致性
数据一致性可分别从使用者和提供者角度看:从使用者的角度,如何观察数据更新;从提供者的角度,也就是服务器端,更新如何在系统中实现。
一致性可分为强一致性和弱一致性两种:强一致性要求更新过的数据能被后续的访问都看到,根据CAP理论,强一致性无法和可用性、分区容忍性同时实现;弱一致性,指读取操作能够见到变化的数据,但不是所有变化的数据。
最终一致性属于弱一致性的一种,即存储系统保证如果没有新的更新提交,最终所有的访问都将获得最后的更新。如果没有故障发生,不一致性取决于通信时延、系统负载以及复制策略中涉及的副本数。
2.NOSQL数据库产品
NOSQL(Not Only SQL)数据库是指那些非关系型的数据库。NOSQL数据库分为Key-Value、Key-Document和Key-Column这3类。典型的NOSQL产品有Google的BigTable、基于Hadoop HDFS的HBase、Amazon的Dynamo、CouchDB、MongoDB、Redis等。
NOSQL数据库遵循CAP理论和BASE原则,大部分Key-Value数据库系统都会根据自己的设计目的进行相应的选择,如Cassandra、Dynamo满足AP,BigTable、MongoDB满足CP。
四、结束语
本文首先介绍了大数据概念,分析了关系数据库在存储大数据量方面的不足,并介绍了当前NOSQL数据库的基本理论和当前产品分类。大数据时代的来临,我们忙于如何存储和处理这些数据,但随着计算机互联网、移动互联网、物联网等网络的快速发展,数据量会持续大幅增长,如何长期保存这些数据以及如何处理更大级别的数据量,都需要我们思考并解决。
参考文献
[1]王珊,王会举,覃雄派等.架构大数据:挑战、现状与展望[J].计算机学报,2011(34).
[2]黄贤立.NOSQL非关系型数据库的发展及应用初探[J].福建电脑,2010(7):30.
一、引言
大数据时代,原有的信息资源处理手段已经不适应迅速增大的数据量级。大数据依托网络技术,采用数据挖掘、关联分析等技术手段对分布式存储的异构海量数据进行处理。无论是网络环境、计算平台、还是存储载体,都分属不同的信息系统。大数据进一步加剧了网络空间中防御与攻击的不对称性,大数据信息安全主要体现在处理系统、过程的安全,而传统的信息安全防护措施多集中在“封堵查杀”层面,难以应对大数据时代的信息安全挑战。因此应加快构建多层次、高质量的大数据纵深防御体系结构。加强大数据信息安全保障能力,是解决大数据安全的唯一出路。
二、大数据安全挑战
基于大数据环境下所带来的安全挑战包括:
1、应用安全防护:大数据环境下的应用防护风险,包括资源滥用、拒绝服务攻击、不安全集成模块或API接口及WEB安全;2、虚拟化环境安全:基于云计算和虚拟化技术的云计算数据中心为大数据提供了一个开放的环境,分布在不同地区的资源可以快速整合,动态配置,实现数据集合的共建共享。网络访问便捷化和数据流的形成,为实现资源的快速弹性推送和个性化服务提供基础。然而平台的暴露,使得蕴含着海量数据和潜在价值的大数据更容易吸引黑客的攻击。虚拟化环境安全成为大数据安全的重要威胁。3、移动接入安全:BYOD-移动接入安全,包括身份假冒和信息劫持等。4、安全与大数据融合:恶意的内部员工和数据隐私保护面临威胁。
本文分别从上面四个方面来分析大数据安全技术体系的建设办法,构建大数据纵深防御体系结构。
三、大数据安全技术体系
大数据应用安全防护主要在应用防护区部署虚拟化综合安全设备,包括DDOS、防火墙、IPS和WEB防火墙(WAF)等,同时部署漏洞分析系统,进行安全评估和渗透测试。
大数据虚拟化环境安全主要通过虚拟化防火墙TopVSP(Vgate、TAE、TD)和虚拟机管理器安全,即外部防火墙。实现虚拟化环境的性能优化和安全策略迁移等。
移动接入安全从下到上分为统一接入控制、数据安全及威胁防护和全生命周期设备管理三层。其中统一接入控制层在终端接入区使用身份认证及授权和虚拟应用及虚拟桌面,在网络接入区使用VPN加密,在业务服务区使用远程锁定、数据擦除、备份与恢复、GPS定位和自动报警灯管理器后动来实现。全生命周期设备管理包括资产接入、部署、运行和销毁全流程管理,资产接入包括资产的发现、注册和初始化;资产部署主要包括安全基线制定和配置及策略执行;资产运行包括资产的挂失、锁定、密码重置、定位、备份与恢复、报警等;数据销毁采用远程应用卸载和数据擦除等技术。