免费智能真题库 > 历年试卷 > 系统规划与管理师 > 2019年上半年 系统规划与管理师 上午试卷 综合知识
  第12题      
  知识点:   大数据   HBase   关键技术
  关键词:   大数据   数据        章/节:   新一代信息技术       

 
大数据所涉及关键技术很多,主要包括采集、存储、管理、分析与挖掘相关技术。其中HBase属于(12)技术。
 
 
  A.  数据采集
 
  B.  数据存储
 
  C.  数据管理
 
  D.  数据分析与挖掘
 
 
 

  相关试题:大数据          更多>  
 
  第15题    2022年上半年  
   21%
关于大数据的特征,表述有误的是()。
  第12题    2018年上半年  
   70%
关于大数据的叙述中,不正确的是()
  第12题    2020年下半年  
   50%
(12)应用于大数据的数据采集阶段。
   知识点讲解    
   · 大数据    · HBase    · 关键技术
 
       大数据
               大数据概念及关键技术
               (1)大数据的概念。早在20世纪的1980年,著名未来学家阿尔文·托夫勒便在《第三次浪潮》一书中,将“大数据”热情地赞颂为“第三次浪潮的华彩乐章”。2008年9月《科学》(Science)杂志发表了一篇文章“BigData:Science in the Petabyte Era”。“大数据”这个词开始被广泛传播。目前国内外的专家学者对大数据只是在数据规模上达成共识:“超大规模”表示的是GB级别的数据,“海量”表示的是TB级的数据,而“大数据”则是PB级别及其以上的数据。
               2011年5月,在“云计算相遇大数据”为主题的EMC World 2011会议中,EMC抛出了大数据(Big Data)概念。
               大数据的来源包括网站浏览轨迹、各种文档和媒体、社交媒体信息、物联网传感信息、各种程序和App的日志文件等。大数据是指无法在一定时间内用传统数据库软件工具对其内容进行抓取、管理和处理的数据集合,其具有4V特性:体量大(Volume)、多样性(Variety)、价值密度低(Value)、快速化(Velocity)的显著特征。
               .体量大(Volume)。体量大指数据量巨大,而且非结构化数据的超大规模和增长快速,非结构化数据占总数据量的80%~90%,其增长比结构化数据快10倍到50倍。大数据处理的数据量是传统数据仓库的10倍到50倍。
               .多样性(Variety)。多样性指数据类型包括结构化数据、半结构化数据和非结构化数据,具有很多不同形式(文本、图像、视频、机器数据),这些数据无模式或者模式不明显,并且属于不连贯的语法或句义。
               .价值密度低(Value)。价值密度低指类似沙里淘金,从海量的数据里面获得对自己有用的数据,要处理大量的不相关信息。大数据同时也意味深度复杂分析,比如机器学习和人工智能,甚至可以对未来趋势与模式进行预测分析。
               .快速化(Velocity)。大数据处理的数据通常指实时获取需要的信息,进行实时分析而非批量式分析,数据处理通常立竿见影而非事后见效。
               (2)大数据关键技术。大数据所涉及的技术很多,主要包括数据采集、数据存储、数据管理、数据分析与挖掘4个环节。在数据采集阶段主要使用的技术是数据抽取工具ETL。在数据存储环节主要有结构化数据、非结构化数据和半结构化数据的存储与访问。结构化数据一般存放在关系数据库,通过数据查询语言(SQL)来访问;非结构化(如图片、视频、doc文件等)和半结构化数据一般通过分布式文件系统的NoSQL(Not Only SQL)进行存储。大数据管理主要使用了分布式并行处理技术,比较常用的有MapReduce,借助MapReduce编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。数据分析与挖掘是根据业务需求对大数据进行关联、聚类、分类等钻取和分析,并利用图形、表格加以展示,与ETL一样,数据分析和挖掘是以前数据仓库的范畴,只是在大数据中得以更好的利用。
               .HDFS。Hadoop分布式文件系统(HDFS)是适合运行在通用硬件上的分布式文件系统,是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。
               .HBase。 HBase是一个分布式的、面向列的开源数据库,该技术来源于论文“Bigtable:一个结构化数据的分布式存储系统”,HBase在Hadoop之上提供了类似于Bigtable的能力。利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是Hbase是基于列的而不是基于行的模式。
               .MapReduce。 MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念“Map(映射)”和“Reduce(归约)”,以及它们的主要思想,都是从函数式编程语言里借来的。它极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上,从而实现对HDFS和HBase上的海量数据分析。
               .Chukwa。 Chukwa是一个开源的用于监控大型分布式系统的数据收集系统。这是构建在hadoop的hdfs和map/reduce框架之上的,继承了hadoop的可伸缩性和鲁棒性。Chukwa还包含了一个强大和灵活的工具集,可用于展示、监控和分析已收集的数据。
               大数据应用
               大数据受到越来越多行业巨头们的关注,使得大数据渗透到更广阔的领域,除了电商、电信、金融这些传统数据丰富、信息系统发达的行业之外,在政府、医疗、制造和零售行业都有其巨大的社会价值和产业空间。各行业在大数据应用上的契合度如下图所示。
               
               大数据应用
               (1)互联网和电子商务行业。应用最多的是用户行为分析,主要研究对象用户在互联网、移动互联网上的访问日志、用户主体信息和外景环境信息,从而挖掘潜在客户,进行精准广告或营销。例如某电商通过用户对产品浏览信息的分析,得到大约10%的用户会在浏览该产品一周后下单,从而在该城市的物流中心进行备货,大大提高发货速度,降低仓库成本。用户日志一般包括下列几类数据:
               .网站日志:用户在访问某个目标网站时,网站记录的用户相关行为信息;
               .搜索引擎日志:记录用户在该搜索引擎上的相关行为信息;
               .用户浏览日志:通过特定的工具和途径记录用户所浏览过的所有页面的相关信息,如浏览器日志、代理日志等;
               .用户主体数据:如用户群的年龄、受教育程度、兴趣爱好等;
               .外界环境数据:如移动互联网流量、手机上网用户增长、自费套餐等。
               (2)电信/金融。通过对用户的通信、流量、消费等信息进行分析,判断用户的消费习惯和信用能力,可以给用户设计更贴合的产品,提升产品竞争力。
               (3)政府。首先政府通过对大数据的挖掘和实时分析,可有效提高政府决策的科学性和时效性,并且能帮助政府有效削减预算开支。其次借助大数据可以使政府变得更加开放、透明和智慧。大数据可以使政府更清楚地了解公民的意愿和想法,可以提升公民的价值,还可以通过引导社会的舆论,为社会公众提供更好的服务,树立更好的政府形象。
               (4)医疗。例如,某互联网公司“流感趋势”项目深受相关研究人员的欢迎,它依据网民搜索内容分析全球范围内流感等病疫传播状况,与美国疾病控制和预防中心提供的报告进行比对,事实证明两者有很大关联。社交网络为许多患者提供临床症状交流和诊治经验分享的平台,医生借此可获得在医院通常得不到的临床效果统计数据。
               (5)制造。从前的制造业通常以产品为导向,以降低生产成本来决定制造业的生存和发展。而如今如果继续以这种理念来维持企业的发展,必将导致制造业的暗淡。越来越多的制造业早已明白,个性化定制将是发展的趋势,所以制造业需要处理好大数据,通过对海量数据的获取,挖掘和分析,把握客户的需求,从而交付客户喜欢的产品。
 
       HBase
        HBase,即Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。
        HBase同Hypertable一样,是Google Bigtable的开源实现,类似Google Bigtable利用GFS作为其文件存储系统,HBase利用Hadoop HDFS作为其文件存储系统;Google运行MapReduce来处理Bigtable中的海量数据,HBase同样利用Hadoop MapReduce来处理HBase中的海量数据;Google Bigtable利用Chubby作为协同服务,HBase利用Zookeeper作为对应。
        下图描述了Hadoop EcoSystem中的各层系统,其中HBase位于结构化存储层。
        
        Hadoop EcoSystem各层系统
        HDFS为HBase提供了高可靠性的底层存储支持,Hadoop MapReduce为HBase提供了高性能的计算能力,Zookeeper为HBase提供了稳定服务和failover机制。另外,Pig和Hive为HBase提供了高层语言支持,使得在HBase上进行数据统计处理变得非常简单。Sqoop则为HBase提供了方便的RDBMS数据导入功能,使得传统数据库数据向HBase中迁移变得非常方便。
        表是Hbase中数据的逻辑组织方式,从用户视角,HBase表的逻辑模型如下表所示。HBase中一个表有若干行,每一行有多个列族,每个列族中包含多个列,列中的值有多个版本。下表展示的是HBase中员工信息表,有三行记录和两个列族,行键分别是7001、7002和7003,两个列族分别是Info和Salary,每一族中含有若干列,如列族Info中包含姓名、性别和年龄三列,列族Salary中包括一月、二月和三月三列。在Hbase中,列不是固定的表结构,在创建表时,不用预先定义列名,可以在插入数据时临时创建。
        
        HBase逻辑数据模型
        从上表的逻辑模型来看,HBase表与关系型数据库中的表结构之间似乎没有太大差异,只不过多了列族概念。但实际上是有很大差别的,关系型数据库中表的结构需要预先定义,如列名及其数据类型和值域等内容。如果需要添加新列,则需要修改表结构,这会对已有的数据产生很大影响。同时,关系型数据库中的表为每个列预留了存储空间,即上表中的空白单元格数据在关系型数据库中以“Null”值占用存储空间。因此,对稀疏数据来说,关系型数据库表中就会产生很多“Null”值,消耗大量的存储空间。
        在HBase中,如上表的空白单元格在物理上是不占用存储空间的,即不会存储空白的键值对。因此,若一个请求为获取行键为7002在T1时间的Info:年龄的值时,其结果为Null。类似地,若一个请求为获取行键为7003在T2时间的Salary:二月的值时,其结果也为空。与面向行存储的关系型数据库不同,HBase是面向列存储的,且在实际的物理存储中,列族是分开存储的,即上表中的员工信息表将被存储为Info和Salary两个部分。且空白单元格是没有被存储下来的。下表展示了Info这个列族的实际物理存储方式,列族Salary的存储与之类似。从下表可以看出“Null”是没有被存储下来的。
        
        Info列族的物理存储方式
 
       关键技术
        一个完整的嵌入式DBMS由若干子系统组成,包括主DBMS、同步服务器、嵌入式DBMS、连接网络等几个子系统,如下图所示。
        
        嵌入式数据库系统组成
        (1)嵌入式DBMS。嵌入式DBMS是一个功能独立的单用户DBMS。它可以独立于同步服务器和主DBMS运行,对嵌入式系统中的数据进行管理,也可以通过同步服务器连接到主服务器上,对主数据库中的数据进行操作,还可以通过多种方式进行数据同步。
        (2)同步服务器。同步服务器是嵌入式数据库和主数据库之间的连接枢纽,保证嵌入式数据库和主数据库中数据的一致性。
        (3)数据服务器。数据服务器的主数据库及DBMS可以采用Oracle或Sybase等大型通用数据库系统。
        (4)连接网络。主数据库服务器和同步服务器之间一般通过高带宽、低延迟的固定网络进行连接。移动设备和同步服务器之间的连接根据设备具体情况可以是无线局域网、红外连接、通用串行线或公众网等。
               移动DBMS的关键技术
               嵌入式移动数据库在实际应用中必须解决好数据的一致性(复制性)、高效的事务处理和数据的安全性等问题。
               (1)数据的一致性。嵌入式移动数据库的一个显著特点是,移动数据终端之间以及与同步服务器之间的连接是一种弱连接,即低带宽、长延迟、不稳定和经常性断接。为了支持用户在弱环境下对数据库的操作,现在普遍采用乐观复制方法,允许用户对本地缓存上的数据副本进行操作。待网络重新连接后再与数据库服务器或其他移动数据终端交换数据修改信息,并通过冲突检测和协调来恢复数据的一致性。
               (2)高效的事务处理。移动事务处理要解决在移动环境中频繁的、可预见的断接情况下的事务处理。为了保证活动事务的顺利完成,必须设计和实现新的事务管理策略和算法。
               (3)数据的安全性。许多应用领域的嵌入式设备是系统中数据管理或处理的关键设备,因此嵌入式设备上的DBS对存取权限的控制较严格。同时,许多嵌入式设备具有较高的移动性、便携性和非固定的工作环境,也带来潜在的不安全因素。同时某些数据的个人隐私性又很高,因此在防止碰撞、磁场干扰、遗失、盗窃等方面对个人数据的安全性需要提供充分的保证。
               移动DBMS的特性
               移动DBMS的计算环境是传统分布式DBMS的扩展,它可以看做客户端与固定服务器结点动态连接的分布式系统。因此移动计算环境中的DBMS是一种动态分布式DBMS。由于嵌入式移动DBMS在移动计算的环境下应用在EOS之上,所以它有自己的特点和功能需求:
               (1)微核结构。考虑到嵌入式设备的资源有限,嵌入式移动DBMS应采用微型化技术实现,在满足应用的前提下紧缩其系统结构以满足嵌入式应用的需求。
               (2)对标准SQL的支持。嵌入式移动DBMS应能提供了对标准SQL的支持。支持SQL92标准的子集,支持数据查询(连接查询、子查询、排序、分组等)、插入、更新、删除多种标准的SQL语句,充分满足嵌入式应用开发的需求。
               (3)事务管理功能。嵌入式移动DBMS应具有事务处理功能,自动维护事务的完整性、原子性等特性;支持实体完整性和引用完整性。
               (4)完善的数据同步机制。数据同步是嵌入式数据库最重要的特点。通过数据复制,可以将嵌入式数据库或主数据库的变化情况应用到对方,保证数据的一致性。
               (5)支持多种连接协议。嵌入式移动DBMS应支持多种通信连接协议。可以通过串行通信、TCP/IP、红外传输、蓝牙等多种连接方式来实现与嵌入式设备和数据库服务器的连接。
               (6)完备的嵌入式数据库的管理功能。嵌入式移动DBMS应具有自动恢复功能,基本无须人工干预进行嵌入式数据库管理,并能够提供数据的备份和恢复,保证用户数据的安全可靠。
               (7)支持多种EOS。嵌入式移动DBMS应能支持Windows CE、Palm等多种目前流行的EOS,这样才能使嵌入式移动DBMS不受移动终端的限制。
               另外,一种理想的状态是用户只用一台移动终端(如手机)就能对与它相关的所有移动数据库进行数据操作和管理。这就要求前端系统具有通用性,而且要求移动数据库的接口有统一、规范的标准。前端管理系统在进行数据处理时自动生成统一的事务处理命令,提交当前所连接的数据服务器执行。这样就有效地增强了嵌入式移动DBMS的通用性,扩大了嵌入式移动数据库的应用前景。
               在嵌入式移动DBMS中还需要考虑诸多传统计算环境下不需要考虑的问题,例如,对断接操作的支持、对跨区长事务的支持、对位置相关查询的支持、对查询优化的特殊考虑,以及对提高有限资源的利用率和对系统效率的考虑等。为了有效地解决这些问题,诸如复制与缓存技术、移动事务处理、数据广播技术、移动查询处理与查询优化、位置相关的数据处理及查询技术、移动信息发布技术、移动Agent等技术仍在不断地发展和完善,会进一步促进嵌入式移动DBMS的发展。
   题号导航      2019年上半年 系统规划与管理师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第12题    在手机中做本题