大数据技术分享2

上传人:gf****33 文档编号:253047825 上传时间:2024-11-28 格式:PPTX 页数:23 大小:1.03MB
返回 下载 相关 举报
大数据技术分享2_第1页
第1页 / 共23页
大数据技术分享2_第2页
第2页 / 共23页
大数据技术分享2_第3页
第3页 / 共23页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,*,*,大数据技术分享,01,02,数据存储/Hbase,MongoDB,03,数据分析/Hive,MR,R,04,实时计算/Storm,Spark,05,数据传输/Sqoop,Kafka,演讲提纲,0,6,数据采集/Flume,Kafka,DPI大数据架构,NoSql数据库,NoSql,(Not Only Sql),hbase,MongoDB,Lucene,/Solr,等,Hbase是什么,HBase是Apache Hadoop中的一个子项目,Hbase依托于Hadoop的HDFS作为最基本存储基础单元,通过使用hadoop的DFS工具就可以看到这些这些数据 存储文件夹的结构,还可以通过Map/Reduce的框架(算法)对HBase进行操作,如,下,图所示:,HRegionServer、HRegion、Hmemcache、Hlog、HStore之间的关系,HBase表中的数据与HRegionServer的分布关系,为什么采用HBase?,HBase 不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库.所谓非结构化数据存储就是说HBase是基于列的而不是基于行的模式,这样方面读写大数据,的数据,。,hbase是基于列存储,查询速度为秒级,一个数据行拥有一个可选择的键和任意数量的列。表是疏松的存储的,因此用户可以给行定义各种不同的列,什么是列存储?,什么是列存储?列存储不同于传统的关系型数据库,其数据在表中是按行存储的,列方式所带来的重要好处之一就是,由于查询中的选择规则是通过列来定义的,因 此整个数据库是自动索引化的。按列存储每个字段的数据聚集存储,在查询只需要少数几个字段的时候,能大大减少读取的数据量,一个字段的数据聚集存储,那就 更容易为这种聚集存储设计更好的压缩/解压算法。这张图讲述了传统的行存储和列存储的区别:,MySQL中现有的表结构,迁移,至,HBase中的表结构,原来系统中有2张表blogtable和comment表,采用HBase后只有一张blogtable表,如果按照传统的RDBMS的话,blogtable表中的列是固定的,比如schema 定义了Author,Title,URL,text等属性,上线后表字段是不能动态增加的。但是如果采用列存储系统,比如Hbase,那么我们可以定义blogtable表,然后定义info 列族,User的数据可以分为:info:title,info:author,info:url 等,如果后来你又想增加另外的属性,这样很方便只需要 info:xxx 就可以了。,对于Rowkey你,可,可以理解row key为传统RDBMS中,的,的某一个行,的,的主键,Hbase是,不,不支持条件,查,查询以及Orderby等查询,,,,因此Row key,的,的设计就要,根,根据你系统,的,的查询需求,来,来设计了额,。,。Hbase中的记,录,录是按照rowkey,来,来排序的,,这,这样就使得,查,查询变得非,常,常快。,hive简,介,介,Hive是,基,基于hadoop构建,的,的数据仓库,基,基础架构,,通,通过提供一,系,系列的工具,,,,使得用户,能,能够方便的,做,做数据ETL,数据结,构,构化,并针,对,对存放在hadoop,上,上的海量数,据,据进行查询,和,和分析,hive的,设,设计目标是,:,:可伸缩、,可,可扩展、容,错,错及输入格,式,式松耦合。,数据单元,按照数据的,粒,粒度大小,hive数,据,据可以被组,织,织成:,1)databases:避免,不,不同表产生,命,命名冲突的,一,一种命名空,间,间,2)tables:具,有,有相同scema的同,质,质数据的集,合,合,partitions,:,:一个表可,以,以有一个或,多,多个决定数,据,据如何存储,的,的partitionkey,buckets(或clusters):在,同,同一个partition中的数,据,据可以根据,某,某个列的hash值分,为,为多个bucket。partition和bucket并非必要,,,,但是它们,能,能大大加快,数,数据的查询,速,速度。,数据类型,(1)简单,类,类型:,TINYINT-1 byte integer,SMALLINT-2 byte integer,INT-4 byte integer,BIGINT-8byte,BOOLEAN-TRUE/FALSE,FLOAT-单精,度,度,DOUBLE-双,精,精度,STRING-字,符,符串集合,(2)复杂,类,类型:,Structs:structs内部的数,据,据可以通过DOT(.,),)来存取,,例,例如,表中,一,一列c的类,型,型为STRUCTaINT;b INT,我们,可,可以通过c.a来访问,域,域a。,Maps(Key-Value对,),):访问指,定,定域可以通,过,过elementname进行,,例,例如,一个Map M,包,包含了一个group-gid,的,的k-v对,,,,gid的,值,值可以通过Mgroup,来,来获取。,Arrays:array中的数,据,据为相同类,型,型,例如,,假,假如array A中,元,元素a,b,c,,,,则A1的值为b。,内建运算符,和,和函数,包括关系运,算,算符(A=B,A!=B,AB等等),算术运算符,(,(A+B,A*B,A&B,A|B等,等,等),逻辑运算符,(,(A&B,A|B,等,等等),复杂类型上,的,的运算符(An,Mkey,S.x),各种内建函,数,数。,语言能力,hive查,询,询语言提供,基,基本的类sql操作,,这,这些操作基,于,于table和partition,包括:,1.使用where,语,语句过滤制,定,定行,2.使用select查找指定,列,列,3.join两张table,或多张表,4.group by,5.一个,表,表的查询结,果,果存入另一,张,张表,6.将一,个,个表的内容,存,存入本地目,录,录,7.将查,询,询结果存储,到,到hdfs,上,上,8.管理table,和,和partition(creat、drop、alert),9.hive提供jdbc功能,,方,方便从关系,型,型数据库中,读,读取数据,Hive和,普,普通数据库,的,的区别,由于Hive采用了SQL的查询,语,语言HQL,,,,因此很容,易,易将Hive理解为数,据,据库。,Spark,是,是什么?,参考spark学习.ppt,由于Spark是由Scala语,言,言编写的,,学,学习Spark首先要,有,有Scala基础,Scala,的,的学习可参,考,考以下学习,网,网站,http:/zh.scala-
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 营销创新


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!