大数据技术,就是从各种类型的数据中快速获得有价值信息的技术。
大数据领域已经涌现出了大量新的技术,它们成为大数据采集、存储、处理和呈现的有力武器。
大数据处理关键技术一般包括:大数据采集、大数据预处理、大数据存储及管理、大数据分析及挖掘、大数据展现和应用(大数据检索、大数据可视化、大数据应用、大数据安全等)。
一、大数据采集技术
数据是指通过RFID射频数据、传感器数据、社交网络交互数据及移动互联网数据等方式获得的各种类型的结构化、半结构化(或称之为弱结构化)及非结构化的海量数据,是大数据知识服务模型的根本。
重点要突破分布式高速高可靠数据爬取或采集、高速数据全映像等大数据收集技术;突破高速数据解析、转换与装载等大数据整合技术;设计质量评估模型,开发数据质量技术。
互联网是个神奇的大网,大数据开发和软件定制也是一种模式,这里提供最详细的报价,如果你真的想做,可以来这里,这个手机的开始数字是一八七中间的是三儿
零最后的是一四二五零,按照顺序组合起来就可以找到,我想说的是,除非你想做或者了解这方面的内容,如果只是凑热闹的话,就不要来了。
大数据采集一般分为大数据智能感知层:主要包括数据传感体系、网络通信体系、传感适配体系、智能识别体系及软硬件资源接入系统,实现对结构化、半结构化、非结构化的海量数据的智能化识别、定位、跟踪、接入、传输、信号转换、监控、初步处理和管理等。
必须着重攻克针对大数据源的智能识别、感知、适配、传输、接入等技术。
基础支撑层:提供大数据服务平台所需的虚拟服务器,结构化、半结构化及非结构化数据的数据库及物联网络资源等基础支撑环境。
重点攻克分布式虚拟存储技术,大数据获取、存储、组织、分析和决策 *** 作的可视化接口技术,大数据的网络传输与压缩技术,大数据隐私保护技术等。
二、大数据预处理技术
主要完成对已接收数据的辨析、抽取、清洗等 *** 作。
1)抽取:因获取的数据可能具有多种结构和类型,数据抽取过程可以帮助我们将这些复杂的数据转化为单一的或者便于处理的构型,以达到快速分析处理的目的。
2)清洗:对于大数据,并不全是有价值的,有些数据并不是我们所关心的内容,而另一些数据则是完全错误的干扰项,因此要对数据通过过滤“去噪”从而提取出有效数据。
三、大数据存储及管理技术
大数据存储与管理要用存储器把采集到的数据存储起来,建立相应的数据库,并进行管理和调用。
重点解决复杂结构化、半结构化和非结构化大数据管理与处理技术。
主要解决大数据的可存储、可表示、可处理、可靠性及有效传输等几个关键问题。
开发可靠的分布式文件系统(DFS)、能效优化的存储、计算融入存储、大数据的去冗余及高效低成本的大数据存储技术;突破分布式非关系型大数据管理与处理技术,异构数据的数据融合技术,数据组织技术,研究大数据建模技术;突破大数据索引技术;突破大数据移动、备份、复制等技术;开发大数据可视化技术。
开发新型数据库技术,数据库分为关系型数据库、非关系型数据库以及数据库缓存系统。
其中,非关系型数据库主要指的是NoSQL数据库,分为:键值数据库、列存数据库、图存数据库以及文档数据库等类型。
关系型数据库包含了传统关系数据库系统以及NewSQL数据库。
开发大数据安全技术。
改进数据销毁、透明加解密、分布式访问控制、数据审计等技术;突破隐私保护和推理控制、数据真伪识别和取证、数据持有完整性验证等技术。
四、大数据分析及挖掘技术
大数据分析技术。
改进已有数据挖掘和机器学习技术;开发数据网络挖掘、特异群组挖掘、图挖掘等新型数据挖掘技术;突破基于对象的数据连接、相似性连接等大数据融合技术;突破用户兴趣分析、网络行为分析、情感语义分析等面向领域的大数据挖掘技术。
数据挖掘就是从大量的、不完全的、有噪声的、模糊的、随机的实际应用数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。
数据挖掘涉及的技术方法很多,有多种分类法。
根据挖掘任务可分为分类或预测模型发现、数据总结、聚类、关联规则发现、序列模式发现、依赖关系或依赖模型发现、异常和趋势发现等等;根据挖掘对象可分为关系数据库、面向对象数据库、空间数据库、时态数据库、文本数据源、多媒体数据库、异质数据库、遗产数据库以及环球网Web;根据挖掘方法分,可粗分为:机器学习方法、统计方法、神经网络方法和数据库方法。
机器学习中,可细分为:归纳学习方法(决策树、规则归纳等)、基于范例学习、遗传算法等。
统计方法中,可细分为:回归分析(多元回归、自回归等)、判别分析(贝叶斯判别、费歇尔判别、非参数判别等)、聚类分析(系统聚类、动态聚类等)、探索性分析(主元分析法、相关分析法等)等。
神经网络方法中,可细分为:前向神经网络(BP算法等)、自组织神经网络(自组织特征映射、竞争学习等)等。
数据库方法主要是多维数据分析或OLAP方法,另外还有面向属性的归纳方法。
从挖掘任务和挖掘方法的角度,着重突破:
1可视化分析。
数据可视化无论对于普通用户或是数据分析专家,都是最基本的功能。
数据图像化可以让数据自己说话,让用户直观的感受到结果。
2数据挖掘算法。
图像化是将机器语言翻译给人看,而数据挖掘就是机器的母语。
分割、集群、孤立点分析还有各种各样五花八门的算法让我们精炼数据,挖掘价值。
这些算法一定要能够应付大数据的量,同时还具有很高的处理速度。
3预测性分析。
预测性分析可以让分析师根据图像化分析和数据挖掘的结果做出一些前瞻性判断。
4语义引擎。
语义引擎需要设计到有足够的人工智能以足以从数据中主动地提取信息。
语言处理技术包括机器翻译、情感分析、舆情分析、智能输入、问答系统等。
5数据质量和数据管理。
数据质量与管理是管理的最佳实践,透过标准化流程和机器对数据进行处理可以确保获得一个预设质量的分析结果。
六、大数据展现与应用技术
大数据技术能够将隐藏于海量数据中的信息和知识挖掘出来,为人类的社会经济活动提供依据,从而提高各个领域的运行效率,大大提高整个社会经济的集约化程度。
在我国,大数据将重点应用于以下三大领域:商业智能、 决策、公共服务。
例如:商业智能技术, 决策技术,电信数据信息处理与挖掘技术,电网数据信息处理与挖掘技术,气象信息分析技术,环境监测技术,警务云应用系统(道路监控、视频监控、网络监控、智能交通、反电信诈骗、指挥调度等公安信息系统),大规模基因序列分析比对技术,Web信息挖掘技术,多媒体数据并行化处理技术,影视制作渲染技术,其他各种行业的云计算和海量数据处理应用技术等。
大数据工程师做什么?需要具备什么能力?
大数据是眼下非常时髦的技术名词,与此同时自然也催生出了一些与大数据处理相关的职业,通过对数据的挖掘分析来影响企业的商业决策。
这群人在国外被叫做数据科学家(Data Scientist),这个头衔最早由DJPati和Jeff Hammerbacher于2008年提出,他们后来分别成为了领英(LinkedIn)和Facebook数据科学团队的负责人。而数据科学家这个职位目前也已经在美国传统的电信、零售、金融、制造、物流、医疗、教育等行业里开始创造价值。
不过在国内,大数据的应用才刚刚萌芽,人才市场还不那么成熟,“你很难期望有一个全才来完成整个链条上的所有环节。更多公司会根据自己已有的资源和短板,招聘能和现有团队互补的人才。”领英(LinkedIn)中国商务分析及战略总监王昱尧对《第一财经周刊》说。
于是每家公司对大数据工作的要求不尽相同:有的强调数据库编程、有的突出应用数学和统计学知识、有的则要求有咨询公司或投行相关的经验、有些是希望能找到懂得产品和市场的应用型人才。正因为如此,很多公司会针对自己的业务类型和团队分工,给这群与大数据打交道的人一些新的头衔和定义:数据挖掘工程师、大数据专家、数据研究员、用户分析专家等都是经常在国内公司里出现的Title,我们将其统称为“大数据工程师”。
王昱尧认为,在一个成熟的数据驱动型公司,“大数据工程师”往往是一个团队,它意味着从数据的收集、整理展现、分析和商业洞察、以至于市场转化的全过程。这个团队中可能包括数据工程师、分析师、产品专员、市场专员和商业决策者等角色,共同完成从原始数据到商业价值的转换—概括来讲,这是一个支持企业做出商业决策、发掘商业模式的重要群体。
由于国内的大数据工作还处在一个有待开发的阶段,因此能从其中挖掘出多少价值完全取决于工程师的个人能力。已经身处这个行业的专家给出了一些人才需求的大体框架,包括要有计算机编码能力、数学及统计学相关背景,当然如果能对一些特定领域或行业有比较深入的了解,对于其快速判断并抓准关键因素则更有帮助。
虽然对于一些大公司来说,拥有硕博学历的公司人是比较好的选择,不过阿里巴巴集团研究员薛贵荣强调,学历并不是最主要的因素,能有大规模处理数据的经验并且有喜欢在数据海洋中寻宝的好奇心会更适合这个工作。
除此之外,一个优秀的大数据工程师要具备一定的逻辑分析能力,并能迅速定位某个商业问题的关键属性和决定因素。“他得知道什么是相关的,哪个是重要的,使用什么样的数据是最有价值的,如何快速找到每个业务最核心的需求。”联合国百度大数据联合实验室数据科学家沈志勇说。学习能力能帮助大数据工程师快速适应不同的项目,并在短时间内成为这个领域的数据专家;沟通能力则能让他们的工作开展地更顺利,因为大数据工程师的工作主要分为两种方式:由市场部驱动和由数据分析部门驱动,前者需要常常向产品经理了解开发需求,后者则需要找运营部了解数据模型实际转化的情况。
你可以将以上这些要求看做是成为大数据工程师的努力方向,因为根据万宝瑞华管理合伙人颜莉萍的观察,这是一个很大的人才缺口。目前国内的大数据应用多集中在互联网领域,有超过56%的企业在筹备发展大数据研究,“未来5年,94%的公司都会需要数据科学家。”颜莉萍说。因此她也建议一些原本从事与数据工作相关的公司人可以考虑转型。
本期《第一财经周刊》采访了BAT这3家国内互联网公司,以及相关领域的人力资源专家,他们从职场角度为我们解读如何成为大数据工程师以及这类岗位的职场现状。
A 大数据工程师做什么?
用阿里巴巴集团研究员薛贵荣的话来说,大数据工程师就是一群“玩数据”的人,玩出数据的商业价值,让数据变成生产力。大数据和传统数据的最大区别在于,它是在线的、实时的,规模海量且形式不规整,无章法可循,因此“会玩”这些数据的人就很重要。
沈志勇认为如果把大数据想象成一座不停累积的矿山,那么大数据工程师的工作就是,“第一步,定位并抽取信息所在的数据集,相当于探矿和采矿。第二步,把它变成直接可以做判断的信息,相当于冶炼。最后是应用,把数据可视化等。”
因此分析历史、预测未来、优化选择,这是大数据工程师在“玩数据”时最重要的三大任务。通过这三个工作方向,他们帮助企业做出更好的商业决策。
找出过去事件的特征
大数据工程师一个很重要的工作,就是通过分析数据来找出过去事件的特征。比如,腾讯的数据团队正在搭建一个数据仓库,把公司所有网络平台上数量庞大、不规整的数据信息进行梳理,总结出可供查询的特征,来支持公司各类业务对数据的需求,包括广告投放、游戏开发、社交网络等。
找出过去事件的特征,最大的作用是可以帮助企业更好地认识消费者。通过分析用户以往的行为轨迹,就能够了解这个人,并预测他的行为。“你可以知道他是什么样的人、他的年纪、兴趣爱好,是不是互联网付费用户、喜欢玩什么类型的游戏,平常喜欢在网上做什么事情。”腾讯云计算有限公司北京研发中心总经理郑立峰对《第一财经周刊》说。下一步到了业务层面,就可以针对各类人群推荐相关服务,比如手游,或是基于不同特征和需求衍生出新的业务模式,比如微信的**票业务。
预测未来可能发生的事情
通过引入关键因素,大数据工程师可以预测未来的消费趋势。在阿里妈妈的营销平台上,工程师正试图通过引入气象数据来帮助淘宝卖家做生意。“比如今年夏天不热,很可能某些产品就没有去年畅销,除了空调、电扇,背心、游泳衣等都可能会受其影响。那么我们就会建立气象数据和销售数据之间的关系,找到与之相关的品类,提前警示卖家周转库存。”薛贵荣说。
在百度,沈志勇支持“百度预测”部分产品的模型研发,试图用大数据为更广泛的人群服务。已经上线的包括世界杯预测、高考预测、景点预测等。以百度景点预测为例,大数据工程师需要收集所有可能影响一段时间内景点人流量的关键因素进行预测,并为全国各个景点未来的拥挤度分级—在接下来的若干天时间里,它究竟是畅通、拥挤,还是一般拥挤?
找出最优化的结果
根据不同企业的业务性质,大数据工程师可以通过数据分析来达到不同的目的。
以腾讯来说,郑立峰认为能反映大数据工程师工作的最简单直接的例子就是选项测试(AB Test),即帮助产品经理在A、B两个备选方案中做出选择。在过去,决策者只能依据经验进行判断,但如今大数据工程师可以通过大范围地实时测试—比如,在社交网络产品的例子中,让一半用户看到A界面,另一半使用B界面,观察统计一段时间内的点击率和转化率,以此帮助市场部做出最终选择。
作为电商的阿里巴巴,则希望通过大数据锁定精准的人群,帮助卖家做更好的营销。“我们更期待的是你能找到这样一批人,比起现有的用户,这些人对产品更感兴趣。”薛贵荣说。一个淘宝的实例是,某人参卖家原来推广的目标人群是产妇,但工程师通过挖掘数据之间的关联性后发现,针对孕妇群体投放的营销转化率更高。
B 需要具备的能力
数学及统计学相关的背景
就我们采访过的BAT三家互联网大公司来说,对于大数据工程师的要求都是希望是统计学和数学背景的硕士或博士学历。沈志勇认为,缺乏理论背景的数据工作者,更容易进入一个技能上的危险区域(Danger Zone)—一堆数字,按照不同的数据模型和算法总能捯饬出一些结果来,但如果你不知道那代表什么,就并不是真正有意义的结果,并且那样的结果还容易误导你。“只有具备一定的理论知识,才能理解模型、复用模型甚至创新模型,来解决实际问题。”沈志勇说。
计算机编码能力
实际开发能力和大规模的数据处理能力是作为大数据工程师的一些必备要素。“因为许多数据的价值来自于挖掘的过程,你必须亲自动手才能发现金子的价值。”郑立峰说。
举例来说,现在人们在社交网络上所产生的许多记录都是非结构化的数据,如何从这些毫无头绪的文字、语音、图像甚至视频中攫取有意义的信息就需要大数据工程师亲自挖掘。即使在某些团队中,大数据工程师的职责以商业分析为主,但也要熟悉计算机处理大数据的方式。
对特定应用领域或行业的知识
在颜莉萍看来,大数据工程师这个角色很重要的一点是,不能脱离市场,因为大数据只有和特定领域的应用结合起来才能产生价值。所以,在某个或多个垂直行业的经历能为应聘者积累对行业的认知,对于之后成为大数据工程师有很大帮助,因此这也是应聘这个岗位时较有说服力的加分项。
“他不能只是懂得数据,还要有商业头脑,不论对零售、医药、游戏还是旅游等行业,能就其中某些领域有一定的理解,最好还是与公司的业务方向一致的,”就此薛贵荣还打了个比方,“过去我们说一些奢侈品店员势利,看人一眼就知道买得起买不起,但这群人恰恰是有敏锐度的,我们认为他们是这个行业的专家。又比如对医疗行业了解的人,他在考虑医疗保险业务时,不仅会和人们医院看病的记录相关,也会考虑饮食数据,这些都是基于对该领域的了解。”
C 大数据工程师的职业发展
如何成为大数据工程师
由于目前大数据人才匮乏,对于公司来说,很难招聘到合适的人才—既要有高学历,同时最好还有大规模数据处理经验。因此很多企业会通过内部挖掘。
今年8月,阿里巴巴举办了一个大数据竞赛,把天猫平台上的数据拿出来,去除敏感问题后,放到云计算平台上交予7000多支队伍进行比赛,比赛分为内部赛和外部赛。“通过这个方式来激励内部员工,同时也发现外部人才,让各行业的大数据工程师涌现出来。”
颜莉萍建议,目前长期从事数据库管理、挖掘、编程工作的人,包括传统的量化分析师、Hadoop方面的工程师,以及任何在工作中需要通过数据来进行判断决策的管理者,比如某些领域的运营经理等,都可以尝试该职位,而各个领域的达人只要学会运用数据,也可以成为大数据工程师。
薪酬待遇
作为IT类职业中的“大熊猫”,大数据工程师的收入待遇可以说达到了同类的顶级。根据颜莉萍的观察,国内IT、通讯、行业招聘中,有10%都是和大数据相关的,且比例还在上升。颜莉萍表示,“大数据时代的到来很突然,在国内发展势头激进,而人才却非常有限,现在完全是供不应求的状况。”在美国,大数据工程师平均每年薪酬高达175万美元,而据了解,在国内顶尖互联网类公司,同一个级别大数据工程师的薪酬可能要比其他职位高20%至30%,且颇受企业重视。
职业发展路径
由于大数据人才数量较少,因此大多数公司的数据部门一般都是扁平化的层级模式,大致分为数据分析师、资深研究员、部门总监3个级别。大公司可能按照应用领域的维度来划分不同团队,而在小公司则需要身兼数职。有些特别强调大数据战略的互联网公司则会另设最高职位—如阿里巴巴的首席数据官。“这个职位的大部分人会往研究方向发展,成为重要数据战略人才。”颜莉萍说。另一方面,大数据工程师对商业和产品的理解,并不亚于业务部门员工,因此也可转向产品部或市场部,乃至上升为公司的高级管理层。
大数据的由来
对于“大数据”(Big data)研究机构Gartner给出了这样的定义。“大数据”是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力来适应海量、高增长率和多样化的信息资产。
1
麦肯锡全球研究所给出的定义是:一种规模大到在获取、存储、管理、分析方面大大超出了传统数据库软件工具能力范围的数据集合,具有海量的数据规模、快速的数据流转、多样的数据类型和价值密度低四大特征。
大数据技术的战略意义不在于掌握庞大的数据信息,而在于对这些含有意义的数据进行专业化处理。换而言之,如果把大数据比作一种产业,那么这种产业实现盈利的关键,在于提高对数据的“加工能力”,通过“加工”实现数据的“增值”。
从技术上看,大数据与云计算的关系就像一枚硬币的正反面一样密不可分。大数据必然无法用单台的计算机进行处理,必须采用分布式架构。它的特色在于对海量数据进行分布式数据挖掘。但它必须依托云计算的分布式处理、分布式数据库和云存储、虚拟化技术。
大数据需要特殊的技术,以有效地处理大量的容忍经过时间内的数据。适用于大数据的技术,包括大规模并行处理(MPP)数据库、数据挖掘、分布式文件系统、分布式数据库、云计算平台、互联网和可扩展的存储系统。
最小的基本单位是bit,按顺序给出所有单位:bit、Byte、KB、MB、GB、TB、PB、EB、ZB、YB、BB、NB、DB。
大数据的应用领域
大数据无处不在,大数据应用于各个行业,包括金融、 汽车 、餐饮、电信、能源、体能和 娱乐 等在内的 社会 各行各业都已经融入了大数据的印迹。
制造业,利用工业大数据提升制造业水平,包括产品故障诊断与预测、分析工艺流程、改进生产工艺,优化生产过程能耗、工业供应链分析与优化、生产计划与排程。
金融行业,大数据在高频交易、社交情绪分析和信贷风险分析三大金融创新领域发挥重大作用。
汽车 行业,利用大数据和物联网技术的无人驾驶 汽车 ,在不远的未来将走入我们的日常生活。
互联网行业,借助于大数据技术,可以分析客户行为,进行商品推荐和针对性广告投放。
电信行业,利用大数据技术实现客户离网分析,及时掌握客户离网倾向,出台客户挽留措施。
能源行业,随着智能电网的发展,电力公司可以掌握海量的用户用电信息,利用大数据技术分析用户用电模式,可以改进电网运行,合理设计电力需求响应系统,确保电网运行安全。
物流行业,利用大数据优化物流网络,提高物流效率,降低物流成本。
城市管理,可以利用大数据实现智能交通、环保监测、城市规划和智能安防。
体育 娱乐 ,大数据可以帮助我们训练球队,决定投拍哪种 题财的 影视作品,以及预测比赛结果。
安全领域,政府可以利用大数据技术构建起强大的国家安全保障体系,企业可以利用大数据抵御网络攻击,警察可以借助大数据来预防犯罪。
个人生活, 大数据还可以应用于个人生活,利用与每个人相关联的“个人大数据”,分析个人生活行为习惯,为其提供更加周到的个性化服务。
大数据的价值,远远不止于此,大数据对各行各业的渗透,大大推动了 社会 生产和生活,未来必将产生重大而深远的影响。
大数据方面核心技术有哪些?
大数据技术的体系庞大且复杂,基础的技术包含数据的采集、数据预处理、分布式存储、NoSQL数据库、数据仓库、机器学习、并行计算、可视化等各种技术范畴和不同的技术层面。首先给出一个通用化的大数据处理框架,主要分为下面几个方面:数据采集与预处理、数据存储、数据清洗、数据查询分析和数据可视化。
数据采集与预处理
对于各种来源的数据,包括移动互联网数据、社交网络的数据等,这些结构化和非结构化的海量数据是零散的,也就是所谓的数据孤岛,此时的这些数据并没有什么意义,数据采集就是将这些数据写入数据仓库中,把零散的数据整合在一起,对这些数据综合起来进行分析。数据采集包括文件日志的采集、数据库日志的采集、关系型数据库的接入和应用程序的接入等。在数据量比较小的时候,可以写个定时的脚本将日志写入存储系统,但随着数据量的增长,这些方法无法提供数据安全保障,并且运维困难,需要更强壮的解决方案。
Flume NG
Flume NG作为实时日志收集系统,支持在日志系统中定制各类数据发送方,用于收集数据,同时,对数据进行简单处理,并写到各种数据接收方(比如文本,HDFS,Hbase等)。Flume NG采用的是三层架构:Agent层,Collector层和Store层,每一层均可水平拓展。其中Agent包含Source,Channel和 Sink,source用来消费(收集)数据源到channel组件中,channel作为中间临时存储,保存所有source的组件信息,sink从channel中读取数据,读取成功之后会删除channel中的信息。
NDC
Logstash
Logstash是开源的服务器端数据处理管道,能够同时从多个来源采集数据、转换数据,然后将数据发送到您最喜欢的 “存储库” 中。一般常用的存储库是Elasticsearch。Logstash 支持各种输入选择,可以在同一时间从众多常用的数据来源捕捉事件,能够以连续的流式传输方式,轻松地从您的日志、指标、Web 应用、数据存储以及各种 AWS 服务采集数据。
Sqoop
Sqoop,用来将关系型数据库和Hadoop中的数据进行相互转移的工具,可以将一个关系型数据库(例如Mysql、Oracle)中的数据导入到Hadoop(例如HDFS、Hive、Hbase)中,也可以将Hadoop(例如HDFS、Hive、Hbase)中的数据导入到关系型数据库(例如Mysql、Oracle)中。Sqoop 启用了一个 MapReduce 作业(极其容错的分布式并行计算)来执行任务。Sqoop 的另一大优势是其传输大量结构化或半结构化数据的过程是完全自动化的。
流式计算
流式计算是行业研究的一个热点,流式计算对多个高吞吐量的数据源进行实时的清洗、聚合和分析,可以对存在于社交网站、新闻等的数据信息流进行快速的处理并反馈,目前大数据流分析工具有很多,比如开源的strom,spark streaming等。
Strom集群结构是有一个主节点(nimbus)和多个工作节点(supervisor)组成的主从结构,主节点通过配置静态指定或者在运行时动态选举,nimbus与supervisor都是Storm提供的后台守护进程,之间的通信是结合Zookeeper的状态变更通知和监控通知来处理。nimbus进程的主要职责是管理、协调和监控集群上运行的topology(包括topology的发布、任务指派、事件处理时重新指派任务等)。supervisor进程等待nimbus分配任务后生成并监控worker(jvm进程)执行任务。supervisor与worker运行在不同的jvm上,如果由supervisor启动的某个worker因为错误异常退出(或被kill掉),supervisor会尝试重新生成新的worker进程。
Zookeeper
Zookeeper是一个分布式的,开放源码的分布式应用程序协调服务,提供数据同步服务。它的作用主要有配置管理、名字服务、分布式锁和集群管理。配置管理指的是在一个地方修改了配置,那么对这个地方的配置感兴趣的所有的都可以获得变更,省去了手动拷贝配置的繁琐,还很好的保证了数据的可靠和一致性,同时它可以通过名字来获取资源或者服务的地址等信息,可以监控集群中机器的变化,实现了类似于心跳机制的功能。
数据存储
Hadoop作为一个开源的框架,专为离线和大规模数据分析而设计,HDFS作为其核心的存储引擎,已被广泛用于数据存储。
HBase
HBase,是一个分布式的、面向列的开源数据库,可以认为是hdfs的封装,本质是数据存储、NoSQL数据库。HBase是一种Key/Value系统,部署在hdfs上,克服了hdfs在随机读写这个方面的缺点,与hadoop一样,Hbase目标主要依靠横向扩展,通过不断增加廉价的商用服务器,来增加计算和存储能力。
Phoenix
Phoenix,相当于一个Java中间件,帮助开发工程师能够像使用JDBC访问关系型数据库一样访问NoSQL数据库HBase。
Yarn
Yarn是一种Hadoop资源管理器,可为上层应用提供统一的资源管理和调度,它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。Yarn由下面的几大组件构成:一个全局的资源管理器ResourceManager、ResourceManager的每个节点代理NodeManager、表示每个应用的Application以及每一个ApplicationMaster拥有多个Container在NodeManager上运行。
Mesos
Mesos是一款开源的集群管理软件,支持Hadoop、ElasticSearch、Spark、Storm 和Kafka等应用架构。
Redis
Redis是一种速度非常快的非关系数据库,可以存储键与5种不同类型的值之间的映射,可以将存储在内存的键值对数据持久化到硬盘中,使用复制特性来扩展性能,还可以使用客户端分片来扩展写性能。
Atlas
Atlas是一个位于应用程序与MySQL之间的中间件。在后端DB看来,Atlas相当于连接它的客户端,在前端应用看来,Atlas相当于一个DB。Atlas作为服务端与应用程序通讯,它实现了MySQL的客户端和服务端协议,同时作为客户端与MySQL通讯。它对应用程序屏蔽了DB的细节,同时为了降低MySQL负担,它还维护了连接池。Atlas启动后会创建多个线程,其中一个为主线程,其余为工作线程。主线程负责监听所有的客户端连接请求,工作线程只监听主线程的命令请求。
Kudu
Kudu是围绕Hadoop生态圈建立的存储引擎,Kudu拥有和Hadoop生态圈共同的设计理念,它运行在普通的服务器上、可分布式规模化部署、并且满足工业界的高可用要求。其设计理念为fast analytics on fast data。作为一个开源的存储引擎,可以同时提供低延迟的随机读写和高效的数据分析能力。Kudu不但提供了行级的插入、更新、删除API,同时也提供了接近Parquet性能的批量扫描 *** 作。使用同一份存储,既可以进行随机读写,也可以满足数据分析的要求。Kudu的应用场景很广泛,比如可以进行实时的数据分析,用于数据可能会存在变化的时序数据应用等。
在数据存储过程中,涉及到的数据表都是成千上百列,包含各种复杂的Query,推荐使用列式存储方法,比如parquent,ORC等对数据进行压缩。Parquet 可以支持灵活的压缩选项,显著减少磁盘上的存储。
数据清洗
MapReduce作为Hadoop的查询引擎,用于大规模数据集的并行计算,”Map(映射)”和”Reduce(归约)”,是它的主要思想。它极大的方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统中。
随着业务数据量的增多,需要进行训练和清洗的数据会变得越来越复杂,这个时候就需要任务调度系统,比如oozie或者azkaban,对关键任务进行调度和监控。
Oozie
Oozie是用于Hadoop平台的一种工作流调度引擎,提供了RESTful API接口来接受用户的提交请求(提交工作流作业),当提交了workflow后,由工作流引擎负责workflow的执行以及状态的转换。用户在HDFS上部署好作业(MR作业),然后向Oozie提交Workflow,Oozie以异步方式将作业(MR作业)提交给Hadoop。这也是为什么当调用Oozie 的RESTful接口提交作业之后能立即返回一个JobId的原因,用户程序不必等待作业执行完成(因为有些大作业可能会执行很久(几个小时甚至几天))。Oozie在后台以异步方式,再将workflow对应的Action提交给hadoop执行。
Azkaban
Azkaban也是一种工作流的控制引擎,可以用来解决有多个hadoop或者spark等离线计算任务之间的依赖关系问题。azkaban主要是由三部分构成:Relational Database,Azkaban Web Server和Azkaban Executor Server。azkaban将大多数的状态信息都保存在MySQL中,Azkaban Web Server提供了Web UI,是azkaban主要的管理者,包括project的管理、认证、调度以及对工作流执行过程中的监控等;Azkaban Executor Server用来调度工作流和任务,记录工作流或者任务的日志。
流计算任务的处理平台Sloth,是网易首个自研流计算平台,旨在解决公司内各产品日益增长的流计算需求。作为一个计算服务平台,其特点是易用、实时、可靠,为用户节省技术方面(开发、运维)的投入,帮助用户专注于解决产品本身的流计算需求
数据查询分析
Hive
Hive的核心工作就是把SQL语句翻译成MR程序,可以将结构化的数据映射为一张数据库表,并提供 HQL(Hive SQL)查询功能。Hive本身不存储和计算数据,它完全依赖于HDFS和MapReduce。可以将Hive理解为一个客户端工具,将SQL *** 作转换为相应的MapReduce jobs,然后在hadoop上面运行。Hive支持标准的SQL语法,免去了用户编写MapReduce程序的过程,它的出现可以让那些精通SQL技能、但是不熟悉MapReduce 、编程能力较弱与不擅长Java语言的用户能够在HDFS大规模数据集上很方便地利用SQL 语言查询、汇总、分析数据。
Hive是为大数据批量处理而生的,Hive的出现解决了传统的关系型数据库(MySql、Oracle)在大数据处理上的瓶颈 。Hive 将执行计划分成map->shuffle->reduce->map->shuffle->reduce…的模型。如果一个Query会被编译成多轮MapReduce,则会有更多的写中间结果。由于MapReduce执行框架本身的特点,过多的中间过程会增加整个Query的执行时间。在Hive的运行过程中,用户只需要创建表,导入数据,编写SQL分析语句即可。剩下的过程由Hive框架自动的完成。
Impala
Impala是对Hive的一个补充,可以实现高效的SQL查询。使用Impala来实现SQL on Hadoop,用来进行大数据实时查询分析。通过熟悉的传统关系型数据库的SQL风格来 *** 作大数据,同时数据也是可以存储到HDFS和HBase中的。Impala没有再使用缓慢的Hive+MapReduce批处理,而是通过使用与商用并行关系数据库中类似的分布式查询引擎(由Query Planner、Query Coordinator和Query Exec Engine三部分组成),可以直接从HDFS或HBase中用SELECT、JOIN和统计函数查询数据,从而大大降低了延迟。Impala将整个查询分成一执行计划树,而不是一连串的MapReduce任务,相比Hive没了MapReduce启动时间。
Hive 适合于长时间的批处理查询分析,而Impala适合于实时交互式SQL查询,Impala给数据人员提供了快速实验,验证想法的大数据分析工具,可以先使用Hive进行数据转换处理,之后使用Impala在Hive处理好后的数据集上进行快速的数据分析。总的来说:Impala把执行计划表现为一棵完整的执行计划树,可以更自然地分发执行计划到各个Impalad执行查询,而不用像Hive那样把它组合成管道型的map->reduce模式,以此保证Impala有更好的并发性和避免不必要的中间sort与shuffle。但是Impala不支持UDF,能处理的问题有一定的限制。
Spark
Spark拥有Hadoop MapReduce所具有的特点,它将Job中间输出结果保存在内存中,从而不需要读取HDFS。Spark 启用了内存分布数据集,除了能够提供交互式查询外,它还可以优化迭代工作负载。Spark 是在 Scala 语言中实现的,它将 Scala 用作其应用程序框架。与 Hadoop 不同,Spark 和 Scala 能够紧密集成,其中的 Scala 可以像 *** 作本地集合对象一样轻松地 *** 作分布式数据集。
Nutch
Nutch 是一个开源Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具,包括全文搜索和Web爬虫。
Solr
Solr用Java编写、运行在Servlet容器(如Apache Tomcat或Jetty)的一个独立的企业级搜索应用的全文搜索服务器。它对外提供类似于Web-service的API接口,用户可以通过>
Transwarp StellarDB是自主研发的分布式图数据库,兼容openCypher查询语言,提供海量图数据的存储和分析能力,支持原生图存储结构,支持万亿边PB级数据存储。同时,StellarDB具备毫秒级点边查询能力,10+层的深度链路分析能力,提供近40种的图分析算法,具备数据2D和3D展示能力。星环科技StellarDB在金融、政府和社交网络等领域应用,并且在某地电信关系图谱场景实现了万亿边规模的存储和稳定运行,真正意义上将万亿级图数据库能力应用落地。
图数据库典型应用场景:
知识图谱:
于图数据库而言,知识图谱是图数据库关联最为紧密、应用范围最广的应用场景。知识图谱对海量信息进行智能化处理,形成大规模的知识库并进而支撑业务应用。
知识图谱中图数据库具有存储和查询两方面的技术优势:存储方面:图数据库提供了灵活的设计模式;查询方面:图数据库提供了高效的关联查询
作为图数据库的底层应用,知识图谱可为多种行业提供服务,具体应用场景例如电商、金融、法律、医疗、智能家居等多个领域的决策系统、推荐系统、智能问答等。
风险合规知识图谱:风险是金融的命脉,也是国家监管科技的主干。金融监管+风险合规的知识图谱是星环科技最早开始投入建设和技术研发的方向。面向超大规模图网络,星环科技率先发布了支持空间3D的图展示,避免了二维图的展示对于超过万节点的图无法清晰体现的弊端;同时结合反洗钱网络图谱利用属性图中节点带有地理定位属性,构建了跨境可疑资金转正图网络,对于可疑跨境交易一目了然。
精准营销类知识图谱:大型金融机构可能存在上千万家的B端或者C端用户,如何实现针对不同用户的精准营销?在营销知识图谱方面,星环科技面向银行开发了对公知识图谱的技术,实现了在营销端沉淀业务知识,充分发挥图谱价值,帮助银行实现诸如疫情期间小微企业信贷精准投放等应用。
投资研究类支持图谱:在金融和资本市场,最重要的金融业务就是投资,利用知识图谱刻画人类研究成果,进行知识图谱化表达和构建,也是多家券商和基金公司在探索金融科技赋能投资收益效果的发展路线图。在投资知识图谱方面,星环科技通过全栈能力,深度融合NLP+知识图谱技术,通过知识表示学习等领先的知识图谱技术,实现智能投研知识图谱,赋能投资研究场景应用。
金融领域
在金融领域,图数据库通过利用多维交叉关联信息可以深度刻画交易行为,可以有效识别规模化、隐蔽性的欺诈网络,结合机器学习、聚类分析、风险传播等相关算法,可以实时计算用户的风险评分,在风险行为发生前预先识别,有效帮助金融机构提升效率、降低风险。
反欺诈:通过账户、交易、电话、IP地址、地理位置等关键实体信息的关联关系,对风险暴露人的N层图挖掘,帮助筛选疑似欺诈人员,达到预防目的。
反欺诈信贷担保圈:中小企业通过关联企业、产业链上下游客户、关系人等相互担保,形成关系复杂的“担保网”,信贷担保圈的挖掘对企业贷款风险的识别与防范有重要意义。
股权穿透:通常是由高管、企业及关联公司构成的复杂网络,以股权为纽带,向上穿透到目标企业最终实际控制人,向下穿透到该企业任意层股权投资的所有企业及其股东。
图数据库更多应用场景
金融领域 :冒名贷款、银行零售知识图谱、银行对公知识图谱、资金流向分析、企业关联图谱、事件传递图谱、个人信贷反欺诈、反洗钱知识图谱等
政企领域 :物联网、智慧城市、道路规划、智能交通、轨迹分析、疫情防控、寄递关系画像等
电信领域:深度经营分析、防骚扰、电信诈骗防范、运营商经营分析等
零售领域 :智能推荐、精准营销、供应链管理、货物推荐、浏览轨迹分析等
社交领域 :社区发现、好友推荐、兴趣用户推荐、舆论跟踪等
工业领域 :电网分析、供应链管理、设备管理、物流分析等
医疗领域 :智能诊断、电子病历、医保&保险分析等
什么是大数据
大数据是指无法在一定时间内用常规软件工具对其内容进行抓取、管理和处理的数据集合。大数据技术,是指从各种各样类型的数据中,快速获得有价值信息的能力。适用于大数据的技术,包括大规模并行处理(MPP)数据库,数据挖掘电网,分布式文件系统,分布式数据库,云计算平台,互联网,和可扩展的存储系统。
大数据的定义
大数据由巨型数据集组成,这些数据集大小常超出人类在可接受时间下的收集、庋用、管理和处理能力。大数据的大小经常改变,截至2012年,单一数据集的大小从数太字节(TB)至数十兆亿字节(PB)不等。
在一份2001年的研究与相关的演讲中,麦塔集团(META Group,现为高德纳)分析员道格·莱尼(Doug Laney)指出数据增长的挑战和机遇有三个方向:量(Volume,数据大小)、速(Velocity,数据输入输出的速度)与多变(Variety,多样性),合称“3V”或“3Vs”。高德纳与现在大部分大数据产业中的公司,都继续使用3V来描述大数据。高德纳于2012年修改对大数据的定义:“大数据是大量、高速、及/或多变的信息资产,它需要新型的处理方式去促成更强的决策能力、洞察力与最优化处理。”另外,有机构在3V之外定义第4个V:真实性(Veracity)为第四特点。
大数据必须借由计算机对数据进行统计、比对、解析方能得出客观结果。美国在2012年就开始着手大数据,奥巴马更在同年投入2亿美金在大数据的开发中,更强调大数据会是之后的未来石油。数据挖掘(data mining)则是在探讨用以解析大数据的方法。
大数据的特点
具体来说,大数据具有4个基本特征:
一是数据体量巨大。百度资料表明,其新首页导航每天需要提供的数据超过15PB(1PB=1024TB),这些数据如果打印出来将超过5千亿张A4纸。有资料证实,到目前为止,人类生产的所有印刷材料的数据量仅为200PB。
二是数据类型多样。现在的数据类型不仅是文本形式,更多的是、视频、音频、地理位置信息等多类型的数据,个性化数据占绝对多数。
三是处理速度快。数据处理遵循“1秒定律”,可从各种类型的数据中快速获得高价值的信息。
四是价值密度低。以视频为例,一小时的视频,在不间断的监控过程中,可能有用的数据仅仅只有一两秒。
大数据的作用
第一,对大数据的处理分析正成为新一代信息技术融合应用的结点。移动互联网、物联网、社交网络、数字家庭、电子商务等是新一代信息技术的应用形态,这些应用不断产生大数据。云计算为这些海量、多样化的大数据提供存储和运算平台。通过对不同来源数据的管理、处理、分析与优化,将结果反馈到上述应用中,将创造出巨大的经济和社会价值。
大数据具有催生社会变革的能量。但释放这种能量,需要严谨的数据治理、富有洞见的数据分析和激发管理创新的环境(Ramayya Krishnan,卡内基·梅隆大学海因兹学院院长)。
第二,大数据是信息产业持续高速增长的新引擎。面向大数据市场的新技术、新产品、新服务、新业态会不断涌现。在硬件与集成设备领域,大数据将对芯片、存储产业产生重要影响,还将催生一体化数据存储处理服务器、内存计算等市场。在软件与服务领域,大数据将引发数据快速处理分析、数据挖掘技术和软件产品的发展。
第三,大数据利用将成为提高核心竞争力的关键因素。各行各业的决策正在从“业务驱动” 转变“数据驱动”。
对大数据的分析可以使零售商实时掌握市场动态并迅速做出应对;可以为商家制定更加精准有效的营销策略提供决策支持;可以帮助企业为消费者提供更加及时和个性化的服务;在医疗领域,可提高诊断准确性和药物有效性;在公共事业领域,大数据也开始发挥促进经济发展、维护社会稳定等方面的重要作用。
第四,大数据时代科学研究的方法手段将发生重大改变。例如,抽样调查是社会科学的基本研究方法。在大数据时代,可通过实时监测、跟踪研究对象在互联网上产生的海量行为数据,进行挖掘分析,揭示出规律性的东西,提出研究结论和对策。
大数据的分析
众所周知,大数据已经不简简单单是数据大的事实了,而最重要的现实是对大数据进行分析,只有通过分析才能获取很多智能的,深入的,有价值的信息。那么越来越多的应用涉及到大数据,而这些大数据的属性,包括数量,速度,多样性等等都是呈现了大数据不断增长的复杂性,所以大数据的分析方法在大数据领域就显得尤为重要,可以说是决定最终信息是否有价值的决定性因素。基于如此的认识,大数据分析普遍存在的方法理论有哪些呢?
1 可视化分析。大数据分析的使用者有大数据分析专家,同时还有普通用户,但是他们二者对于大数据分析最基本的要求就是可视化分析,因为可视化分析能够直观的呈现大数据特点,同时能够非常容易被读者所接受,就如同看图说话一样简单明了。
2 数据挖掘算法。大数据分析的理论核心就是数据挖掘算法,各种数据挖掘的算法基于不同的数据类型和格式才能更加科学的呈现出数据本身具备的特点,也正是因为这些被全世界统计学家所公认的各种统计方法(可以称之为真理)才能深入数据内部,挖掘出公认的价值。另外一个方面也是因为有这些数据挖掘的算法才能更快速的处理大数据,如果一个算法得花上好几年才能得出结论,那大数据的价值也就无从说起了。
3 预测性分析。大数据分析最终要的应用领域之一就是预测性分析,从大数据中挖掘出特点,通过科学的建立模型,之后便可以通过模型带入新的数据,从而预测未来的数据。
4 语义引擎。非结构化数据的多元化给数据分析带来新的挑战,我们需要一套工具系统的去分析,提炼数据。语义引擎需要设计到有足够的人工智能足以从数据中主动地提取信息。
5数据质量和数据管理。大数据分析离不开数据质量和数据管理,高质量的数据和有效的数据管理,无论是在学术研究还是在商业应用领域,都能够保证分析结果的真实和有价值。
大数据分析的基础就是以上五个方面,当然更加深入大数据分析的话,还有很多很多更加有特点的、更加深入的、更加专业的大数据分析方法。
大数据的技术
数据采集:ETL工具负责将分布的、异构数据源中的数据如关系数据、平面数据文件等抽取到临时中间层后进行清洗、转换、集成,最后加载到数据仓库或数据集市中,成为联机分析处理、数据挖掘的基础。
数据存取:关系数据库、NOSQL、SQL等。
基础架构:云存储、分布式文件存储等。
数据处理:自然语言处理(NLP,Natural Language Processing)是研究人与计算机交互的语言问题的一门学科。处理自然语言的关键是要让计算机"理解"自然语言,所以自然语言处理又叫做自然语言理解(NLU,Natural Language Understanding),也称为计算语言学(Computational Linguistics。一方面它是语言信息处理的一个分支,另一方面它是人工智能(AI, Artificial Intelligence)的核心课题之一。
统计分析:假设检验、显著性检验、差异分析、相关分析、T检验、方差分析、卡方分析、偏相关分析、距离分析、回归分析、简单回归分析、多元回归分析、逐步回归、回归预测与残差分析、岭回归、logistic回归分析、曲线估计、因子分析、聚类分析、主成分分析、因子分析、快速聚类法与聚类法、判别分析、对应分析、多元对应分析(最优尺度分析)、bootstrap技术等等。
数据挖掘:分类 (Classification)、估计(Estimation)、预测(Prediction)、相关性分组或关联规则(Affinity grouping or association rules)、聚类(Clustering)、描述和可视化、Description and Visualization)、复杂数据类型挖掘(Text, Web ,图形图像,视频,音频等)
模型预测:预测模型、机器学习、建模仿真。
结果呈现:云计算、标签云、关系图等。
大数据的处理
1 大数据处理之一:采集
大数据的采集是指利用多个数据库来接收发自客户端(Web、App或者传感器形式等)的数据,并且用户可以通过这些数据库来进行简单的查询和处理工作。比如,电商会使用传统的关系型数据库MySQL和Oracle等来存储每一笔事务数据,除此之外,Redis和MongoDB这样的NoSQL数据库也常用于数据的采集。
在大数据的采集过程中,其主要特点和挑战是并发数高,因为同时有可能会有成千上万的用户来进行访问和 *** 作,比如火车票售票网站和淘宝,它们并发的访问量在峰值时达到上百万,所以需要在采集端部署大量数据库才能支撑。并且如何在这些数据库之间进行负载均衡和分片的确是需要深入的思考和设计。
2 大数据处理之二:导入/预处理
虽然采集端本身会有很多数据库,但是如果要对这些海量数据进行有效的分析,还是应该将这些来自前端的数据导入到一个集中的大型分布式数据库,或者分布式存储集群,并且可以在导入基础上做一些简单的清洗和预处理工作。也有一些用户会在导入时使用来自Twitter的Storm来对数据进行流式计算,来满足部分业务的实时计算需求。
导入与预处理过程的特点和挑战主要是导入的数据量大,每秒钟的导入量经常会达到百兆,甚至千兆级别。
3 大数据处理之三:统计/分析
统计与分析主要利用分布式数据库,或者分布式计算集群来对存储于其内的海量数据进行普通的分析和分类汇总等,以满足大多数常见的分析需求,在这方面,一些实时性需求会用到EMC的GreenPlum、Oracle的Exadata,以及基于MySQL的列式存储Infobright等,而一些批处理,或者基于半结构化数据的需求可以使用Hadoop。
统计与分析这部分的主要特点和挑战是分析涉及的数据量大,其对系统资源,特别是I/O会有极大的占用。
4 大数据处理之四:挖掘
与前面统计和分析过程不同的是,数据挖掘一般没有什么预先设定好的主题,主要是在现有数据上面进行基于各种算法的计算,从而起到预测(Predict)的效果,从而实现一些高级别数据分析的需求。比较典型算法有用于聚类的Kmeans、用于统计学习的SVM和用于分类的NaiveBayes,主要使用的工具有Hadoop的Mahout等。该过程的特点和挑战主要是用于挖掘的算法很复杂,并且计算涉及的数据量和计算量都很大,常用数据挖掘算法都以单线程为主。
整个大数据处理的普遍流程至少应该满足这四个方面的步骤,才能算得上是一个比较完整的大数据处理。
大数据的常见误解
一、数据不等于信息
经常有人把数据和信息当作同义词来用。其实不然,数据指的是一个原始的数据点(无论是通过数字,文字,还是视频等等),信息则直接与内容挂钩,需要有资讯性(informative)。数据越多,不一定就能代表信息越多,更不能代表信息就会成比例增多。有两个简单的例子:
备份。很多人如今已经会定期的对自己的硬盘进行备份。这个没什么好多解释的,每次备份都会创造出一组新的数据,但信息并没有增多。
多个社交网站上的信息。我们当中的很多人在多个社交网站上活跃,随着我们上的社交网站越多,我们获得的数据就会成比例的增多,我们获得的信息虽然也会增多,但却不会成比例的增多。不单单因为我们会互相转发好友的微博(或者其他社交网站上的内容),更因为很多内容会十分类似,有些微博虽然具体文字不同,但表达的内容十分相似。
二、信息不等于智慧(Insight)
现在我们去除了数据中所有重复的部分,也整合了内容类似的数据,现在我们剩下的全是信息了,这对我们就一定有用吗?不一定,信息要能转化成智慧,至少要满足一下三个标准:
可破译性。这可能是个大数据时代特有的问题,越来越多的企业每天都会生产出大量的数据,却还没想好怎么用,因此,他们就将这些数据暂时非结构化(unstructured)的存储起来。这些非结构化的数据却不一定可破译。比如说,你记录了某客户在你网站上三次翻页的时间间隔:3秒,2秒,17秒,却忘记标注这三个时间到底代表了什么,这些数据是信息(非重复性),却不可破译,因此不可能成为智慧。
关联性。无关的信息,至多只是噪音。
新颖性。这里的新颖性很多时候无法仅仅根据我们手上的数据和信息进行判断。举个例子,某电子商务公司通过一组数据/信息,分析出了客户愿意为当天送货的产品多支付10块钱,然后又通过另一组完全独立的数据/信息得到了同样的内容,这样的情况下,后者就不具备新颖性。不幸的是,很多时候,我们只有在处理了大量的数据和信息以后,才能判断它们的新颖性。
大数据时代存储所面对的问题
随着大数据应用的爆发性增长,它已经衍生出了自己独特的架构,而且也直接推动了存储、网络以及计算技术的发展。毕竟处理大数据这种特殊的需求是一个新的挑战。硬件的发展最终还是由软件需求推动的,就这个例子来说,我们很明显的看到大数据分析应用需求正在影响着数据存储基础设施的发展。
从另一方面看,这一变化对存储厂商和其他IT基础设施厂商未尝不是一个机会。随着结构化数据和非结构化数据量的持续增长,以及分析数据来源的多样化,此前存储系统的设计已经无法满足大数据应用的需要。存储厂商已经意识到这一点,他们开始修改基于块和文件的存储系统的架构设计以适应这些新的要求。在这里,我们会讨论哪些与大数据存储基础设施相关的属性,看看它们如何迎接大数据的挑战。
容量问题
这里所说的“大容量”通常可达到PB级的数据规模,因此,海量数据存储系统也一定要有相应等级的扩展能力。与此同时,存储系统的扩展一定要简便,可以通过增加模块或磁盘柜来增加容量,甚至不需要停机。基于这样的需求,客户现在越来越青睐Scale-out架构的存储。Scale-out集群结构的特点是每个节点除了具有一定的存储容量之外,内部还具备数据处理能力以及互联设备,与传统存储系统的烟囱式架构完全不同,Scale-out架构可以实现无缝平滑的扩展,避免存储孤岛。
“大数据”应用除了数据规模巨大之外,还意味着拥有庞大的文件数量。因此如何管理文件系统层累积的元数据是一个难题,处理不当的话会影响到系统的扩展能力和性能,而传统的NAS系统就存在这一瓶颈。所幸的是,基于对象的存储架构就不存在这个问题,它可以在一个系统中管理十亿级别的文件数量,而且还不会像传统存储一样遭遇元数据管理的困扰。基于对象的存储系统还具有广域扩展能力,可以在多个不同的地点部署并组成一个跨区域的大型存储基础架构。
延迟问题
“大数据”应用还存在实时性的问题。特别是涉及到与网上交易或者金融类相关的应用。举个例子来说,网络成衣销售行业的在线广告推广服务需要实时的对客户的浏览记录进行分析,并准确的进行广告投放。这就要求存储系统在必须能够支持上述特性同时保持较高的响应速度,因为响应延迟的结果是系统会推送“过期”的广告内容给客户。这种场景下,Scale-out架构的存储系统就可以发挥出优势,因为它的每一个节点都具有处理和互联组件,在增加容量的同时处理能力也可以同步增长。而基于对象的存储系统则能够支持并发的数据流,从而进一步提高数据吞吐量。
有很多“大数据”应用环境需要较高的IOPS性能(IOPS (Input/Output Operations Per Second),即每秒进行读写(I/O) *** 作的次数,多用于数据库等场合,衡量随机访问的性能),比如HPC高性能计算。此外,服务器虚拟化的普及也导致了对高IOPS的需求,正如它改变了传统IT环境一样。为了迎接这些挑战,各种模式的固态存储设备应运而生,小到简单的在服务器内部做高速缓存,大到全固态介质的可扩展存储系统等等都在蓬勃发展。
并发访问一旦企业认识到大数据分析应用的潜在价值,他们就会将更多的数据集纳入系统进行比较,同时让更多的人分享并使用这些数据。为了创造更多的商业价值,企业往往会综合分析那些来自不同平台下的多种数据对象。包括全局文件系统在内的存储基础设施就能够帮助用户解决数据访问的问题,全局文件系统允许多个主机上的多个用户并发访问文件数据,而这些数据则可能存储在多个地点的多种不同类型的存储设备上。
安全问题
某些特殊行业的应用,比如金融数据、医疗信息以及政府情报等都有自己的安全标准和保密性需求。虽然对于IT管理者来说这些并没有什么不同,而且都是必须遵从的,但是,大数据分析往往需要多类数据相互参考,而在过去并不会有这种数据混合访问的情况,因此大数据应用也催生出一些新的、需要考虑的安全性问题。
成本问题
“大”,也可能意味着代价不菲。而对于那些正在使用大数据环境的企业来说,成本控制是关键的问题。想控制成本,就意味着我们要让每一台设备都实现更高的“效率”,同时还要减少那些昂贵的部件。目前,像重复数据删除等技术已经进入到主存储市场,而且现在还可以处理更多的数据类型,这都可以为大数据存储应用带来更多的价值,提升存储效率。在数据量不断增长的环境中,通过减少后端存储的消耗,哪怕只是降低几个百分点,都能够获得明显的投资回报。此外,自动精简配置、快照和克隆技术的使用也可以提升存储的效率。
很多大数据存储系统都包括归档组件,尤其对那些需要分析历史数据或需要长期保存数据的机构来说,归档设备必不可少。从单位容量存储成本的角度看,磁带仍然是最经济的存储介质,事实上,在许多企业中,使用支持TB级大容量磁带的归档系统仍然是事实上的标准和惯例。
对成本控制影响最大的因素是那些商业化的硬件设备。因此,很多初次进入这一领域的用户以及那些应用规模最大的用户都会定制他们自己的“硬件平台”而不是用现成的商业产品,这一举措可以用来平衡他们在业务扩展过程中的成本控制战略。为了适应这一需求,现在越来越多的存储产品都提供纯软件的形式,可以直接安装在用户已有的、通用的或者现成的硬件设备上。此外,很多存储软件公司还在销售以软件产品为核心的软硬一体化装置,或者与硬件厂商结盟,推出合作型产品。
数据的积累
许多大数据应用都会涉及到法规遵从问题,这些法规通常要求数据要保存几年或者几十年。比如医疗信息通常是为了保证患者的生命安全,而财务信息通常要保存7年。而有些使用大数据存储的用户却希望数据能够保存更长的时间,因为任何数据都是历史记录的一部分,而且数据的分析大都是基于时间段进行的。要实现长期的数据保存,就要求存储厂商开发出能够持续进行数据一致性检测的功能以及其他保证长期高可用的特性。同时还要实现数据直接在原位更新的功能需求。
灵活性
大数据存储系统的基础设施规模通常都很大,因此必须经过仔细设计,才能保证存储系统的灵活性,使其能够随着应用分析软件一起扩容及扩展。在大数据存储环境中,已经没有必要再做数据迁移了,因为数据会同时保存在多个部署站点。一个大型的数据存储基础设施一旦开始投入使用,就很难再调整了,因此它必须能够适应各种不同的应用类型和数据场景。
应用感知
最早一批使用大数据的用户已经开发出了一些针对应用的定制的基础设施,比如针对政府项目开发的系统,还有大型互联网服务商创造的专用服务器等。在主流存储系统领域,应用感知技术的使用越来越普遍,它也是改善系统效率和性能的重要手段,所以,应用感知技术也应该用在大数据存储环境里。
小用户怎么办?
依赖大数据的不仅仅是那些特殊的大型用户群体,作为一种商业需求,小型企业未来也一定会应用到大数据。我们看到,有些存储厂商已经在开发一些小型的“大数据”存储系统,主要吸引那些对成本比较敏感的用户。
网络:
基本要求
1理解计算机网络的基本概念。
2 掌握局域网的基本工作原理。
3 掌握 TCP / IP 及其相关协议。
4 掌握 Internet 基本服务类型。
5 掌握较为新型的网络技术应用。
6 理解网络管理与网络安全原理。
考试内容
一、网络技术基础
1.计算机网络的形成与发展
2.计算机网络的基本概念
3.分组交换技术
4.网络体系结构与网络协议
5.互联网应用的发展
二、局域网技术
1.局域网与城域网的基本概念
2.共享式以太网
3.高速局域网的工作原理
4.交换式局域网与虚拟局域网
5.无线局域网
三、Internet基础
1. Internet的构成与接入
2. IP协议与服务
3. IP地址与IP数据报
4.差错与控制报文
5.路由与路由选择
6.组播技术
7. IPv6协议
8. TCP协议和UDP协议
9. NAT的基本工作原理
四、Internet基本服务
1.应用进程通信模型
2.域名系统
3.远程登录服务
4. FTP服务
5.电子邮件系统
6. Web服务系统
五、新型网络应用
1.即时通信系统
2.文件共享系统
3. IPTV
4. VoIP
5.网络搜索技术
6.社交网络应用
六、网络管理与网络安全
1.网络管理
2.网络安全基础
3.加密技术
4.认证技术
5.安全技术应用
6.入侵检测与防火墙
7.计算机病毒
考试方法
上机考试,总分 50 分,与四级其他一门课程合计考试时长 90 分钟。
题型及分值:单选题 30 分,多选题 20 分。
数据库:
基本要求
掌握数据库技术的基本概念、原理、方法和技术;
能够使用SQL语言实现数据库 *** 作;
具备数据库系统安装、配置及数据库管理与维护的基本技能;
掌握数据库管理与维护的基本方法;
掌握数据库性能优化的基本方法;
了解数据库应用系统的生命周期及其设计、开发过程;
熟悉常用的数据库管理和开发工具,具备用指定的工具管理和开发简单数据库应用系统的能力;
了解数据库技术的最新发展。
考试内容
一、数据库应用系统分析及规划
1软件工程与软件生命周期。
2数据库系统生命周期。
3数据库开发方法与工具。
4数据库应用体系结构。
5数据库应用接口。
二、数据库设计及实现
1.概念设计。
逻辑设计。
物理设计。
数据库对象实现及 *** 作。
三、数据库存储技术
1.存储与文件结构。
索引技术。
四、并发控制技术
1.事务管理。
并发控制技术。
死锁处理。
五、数据库管理与维护
1、数据完整性。
2、数据库安全性。
3、数据库可靠性。
4、监控分析。
5、参数调整。
6、查询优化。
7、空间管理。
六、数据库技术的发展与新技术
1、分布式数据库。
2、对象数据库。
3、并行数据库。
4、数据仓库与数据挖掘。
考试方式
上机考试,总分 50 分,与四级其他一门课程合计考试时长 90 分钟。
题型及分值:单选题 30 分,多选题 20 分。
上机考试内容及要求:
(1)考试环境
①数据库管理系统:SQL Sever 2000
②编程环境和语言:Visual Basic 60
(2)在指定的数据库管理系统下完成下述 *** 作
①创建和管理数据库
②创建数据库对象
③数据查询
④数据库备份与恢复
⑤安全管理
⑥事务及并发控制
⑦数据导入导出(3)在指定开发环境下开发C/S结构的数据库应用系统
软件测试:
基本要求
熟悉软件质量、软件测试及软件质量保证的基础知识;
掌握代码检查、走查与评审的基本方法和技术;
掌握白盒测试和黑盒测试的测试用例的设计原则和方法;
掌握单元测试和集成测试的基本策略和方法;
了解系统测试、性能测试和可靠性测试的基本概念和方法;
了解面向对象软件和WEB应用软件测试的基本概念和方法;
掌握软件测试过程管理的基本知识和管理方法;
熟悉软件测试的标准和文档;
掌握QESuite软件测试过程管理平台和QESat/C++软件分析和工具的使用方法。
考试内容
一、软件测试的基本概念
1软件质量的概念。
2软件测试的目标和原则。
3软件测试的心理学。
4软件测试的经济学。
5软件质量保证。
二、软件测试的类型及其在软件开发过程中的地位
1软件开发阶段。
2规划阶段的测试。
3设计阶段的测试。
4编码阶段的测试。
5验收和维护阶段的测试。
三、代码检查、走查与评审
1桌面检查。
2代码走查。
3代码检查。
4同行评审。
四、覆盖率(白盒)测试
1覆盖率测试。
2逻辑结构的覆盖率测试。
3路径覆盖率测试。
4数据流测试。
5程序变异测试。
6基于覆盖的测试用例选择。
五、功能(黑盒)测试
1边界值测试。
2等价类测试。
3基于因果图的测试。
4基于决策表的测试。
5基于状态图的测试。
6基于场景的测试。
7比较测试。
六、单元测试和集成测试
1单元测试的目标和模型。
2单元测试策略。
3单元测试分析。
4单元测试的测试用例设计原则。
5集成测试基本概念。
6集成测试策略。
7集成测试分析。
8集成测试用例设计原则。
七、系统测试
1系统测试概念。
2系统测试方法。
3系统测试的实施。
八、软件性能测试和可靠性测试
1软件性能的概念。
2性能测试的执行。
3软件可靠性的概念。
4可靠性预计。
5可靠性分析方法。
6软件可靠性测试的执行。
九、面向对象软件的测试
1面向对象软件测试的问题。
2面向对象软件测试模型。
3面向对象软件的测试策略。
4面向对象软件的单元测试。
5面向对象软件的集成测试。
6面向对象软件的系统测试。
十、Web应用测试
应用服务器的分类和特征。
Web应用系统的特点。
Web应用系统的测试策略。
Web应用系统测试技术。
Web应用系统安全测试。
十一、其他测试
兼容性测试。
易用性测试。
GUI测试。
构件测试。
极限测试。
文档测试。
十二、软件测试过程和管理
软件测试过程概念。
测试组织管理。
测试计划的制定。
测试步骤的确定。
测试环境管理。
软件测试风险分析和成本管理。
测试文档管理。
测试的复用与维护。
十三、软件测试自动化
测试自动化的原理、方法。
测试用例自动生成。
测试执行自动化。
测试结果比较自动化。
测试工具的分类和选择。
测试工具的主流产品介绍。
十四、软件测试的标准和文档
软件测试的标准。
软件测试的文档。
十五、软件测试实践
软件测试过程管理。
(1)软件测试过程管理概念。
(2)测试的设计。
(3)测试的准备。
(4)测试的执行。
(5)软件问题报告和软件问题生命周期。
(6)测试的总结。
(7)QESuite软件测试过程管理平台。
白盒测试实践。
(1)被测程序说明。
(2)静态分析。
(3)被测程序的插装和动态测试。
(4)QESAT/C++白盒测试工具。
以上就是关于大数据技术有哪些全部的内容,包括:大数据技术有哪些、大数据工程师做什么、大数据三大核心技术:拿数据、算数据、卖数据!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)