
大数据实战
从0开始,由浅入深 逐步详解
Holy_Zz
这个作者很懒,什么都没留下…
展开
-
Hadoop-No.15之Flume基于事件的数据收集和处理
Flume是一种分布式的可靠开源系统,用于流数据的高效收集,聚集和移动.Flume通常用于移动日志数据.但是也能移动大量事件数据.如社交媒体订阅,消息队列事件或者网络流量数据. Flume架构Flume的数据源使用来自外部数据源的时间,然后转发到Channel中.外部数据源可以是任何一个能够产生事件的系统.比如Twitter这样的社交媒体网站,机器日志,或者消息队列.实施Flume数据源的目的是原创 2017-08-10 08:49:06 · 805 阅读 · 0 评论 -
Hadoop-No.14之文件传输的特点
文件传输特点这是一种all-or-nothing批处理方法,所以如果文件传输过程中出现错误,则不会写入或读取任何数据.这种方法与Flume,Kafka之类的采集方法不同,后者提供一定程度的错误处理功能.并且有传输保障文件传输默认为单线程,不能并行文件传输文件传输将文件从传统的文件系统导入HDFS不支持数据转换,数据按原样导入HDFS.数据导入HDFS后才能进行处理,这一点与传输过程中的数据转换原创 2017-08-07 08:41:35 · 665 阅读 · 0 评论 -
Hadoop-No.13之数据源系统以及数据结构
文件系统中采集数据时,应该考虑以下内容.数据源系统设备的读取速率在所有处理流水线中,磁盘I/O通常都是主要瓶颈.但是优化采集流程时通常要看一下检索数据的系统系统.一般来说,Hadoop的读取速度在20MB/s到100MB/s之间,而且主板或者控制器从系统所有的磁盘中读取时有一定的限制.为了读取速度达到最高,需要确保尽量充分利用系统中的磁盘.某些网络附加存储(Network Attached Sto原创 2017-08-07 08:06:31 · 656 阅读 · 0 评论 -
Hadoop-No.12之数据采集的时效性
数据采集的时效性,指的是可进行数据采集的时间与Hadoop中工具可访问数量的时间之间的间隔.采集架构的时间分类会对存储媒介和采集方法造成很大的影响.一般来说,在设计应用的采集构架之前建议使用以下分类中的一种.大型批处理通常指15分钟到数小时的任务,有时可能指时间跨度达到一天的任务小型批处理通常指每2分钟发送一次的任务,但是总的来说不会超过15分钟近实时决策支持接受信息后”立即做出反应”,并在原创 2017-08-06 14:15:35 · 1155 阅读 · 0 评论 -
Hadoop-No.11之元数据
元数据的重要性三个重要理由,让我们不得不在意元数据元数据允许用户通过一张表的高一级逻辑抽象,而不是HDFS中文件的简单几何,或者HBase中的表来与数据交互.这意味着用户不比关心数据是如何存储的,存储到了什么地方元数据允许用户提供数据的信息(如分区或者排序特性),而后通过不同个的工具(用户或者其他人写入的)利用这些信息生成或者查询工具元数据允许数据管理工具链接该元数据,而且允许用户执行数据查原创 2017-08-06 13:57:11 · 935 阅读 · 0 评论 -
Hadoop-No.10之列簇
HBase中包含列簇(column family)的概念.列簇本质上是列的存储容器.一张表可以有一个或多个列簇.每个列簇都有自己的HFile结婚,而且在执行合并操作时,同一个表的其他列簇不受影响在很多实用案例中,一张表不需要多个列簇.如果一张标中国的一部分列操作完成,或者变化频率与其他列存在显著不同,则可以使用一个以上的列簇.比如,HBase 表包含两列:列1每行包含400字节,而列2每行包含20个原创 2017-08-06 12:02:19 · 945 阅读 · 0 评论 -
Hadoop-No.9之表和Region
影响性能与数据分布的一个因素是HBase中表的数量以及每个表的Region的数量.如果分配的不合理,集群一个节点活多个节点的负载会出现显著的不均衡.其中比较注意的几点: - 每个节点包含一个Region服务器 - 每个Region服务器包含多个Region - 任何时候,一个给定的Region存在一个特定的Region服务器上 - 表被分成多个Region,而且散步在Region服务器中.一原创 2017-08-06 11:40:18 · 624 阅读 · 0 评论 -
Hadoop-No.8之时间戳
要获得良好的HBase的模式设计,要正确的理解和使用时间错.在HBase中,时间戳的作用如下所述.时间戳决定了在put请求修改记录时那些记录更新时间戳决定了一条记录的多个版本在返回时的排序时间戳还用于大合并(Major Compaction)过程,决定是否移除与时间戳相比已经超过存活时间(Time-To-Live, TTL)的过期记录.”过期”意味着记录的值已经被其他的puyt操作重复写如果,原创 2017-08-06 11:26:55 · 1007 阅读 · 0 评论 -
Hadoop-No.7之行键
和哈希表类比,HBase中的行键类似于哈希表中的键.要构造一个良好的HBae模式,关键之一就是选择一个合适的行键. 1 记录检索行键是HBase中检索记录所使用的键.HBase记录含有的列在数量上没有限制,但是只能有一个行键.这一点同关系型数据库有所不同,后者的主键可以有多个列组合.既然要为一个记录创建唯一的行键,那么单一的行键就需要包含多种信息.例如,如果一行标识一个订单,那么custome原创 2017-08-02 09:02:10 · 859 阅读 · 0 评论 -
Hadoop-No.6之文件在HDFS中的位置
在设计一种HDFS模式时,首先应该决定文件的位置.标准化的位置会使得团队之间更容易查找和共享数据. 推荐HDFS目录结构实例.目录结构简化了不同组和用户的权限分配/user/{username}只属于特定用户的数据,JAR包和配置文件.通常是用户在试验中使用的非正式数据,不属于业务流程./user下的目录通常只能由所有者进行读取和写入/etlETL(Extract, Transform and原创 2017-08-01 15:55:26 · 801 阅读 · 0 评论 -
Hadoop-No.5之压缩
Hadoop存储数据时需要着重考虑的一个因素就是压缩.这里不仅要满足节省存储空间的需求,也要提升数据处理性能.在处理大量数据时,消耗最大的是磁盘和网络的I/O,所以减少需要读取或者写入磁盘的数据量就能大大缩短整体处理时间.这包括数据源的压缩,它也包括数据处理过程(如MapReduce任务)中产生的中间数据的压缩.尽管压缩会增加CPU负载,但是大多数情况下,I/O上的节省仍然大于增加的CPU负载压缩能原创 2017-08-01 14:53:59 · 1852 阅读 · 0 评论 -
Hadoop-No.4之列式存储格式
列式系统可提供的优势对于查询内容之外的列,不必执行I/O和解压(若适用)操作非常适合仅访问小部分列的查询.如果访问的列很多,则行存格式更为合适相比由多行构成的数据块,列内的信息熵更低,所以从压缩角度来看,列式存储通常会非常高效.换句话说,同一列中的数据比行存数据块中的数据更为相似.当某一列的取值不多是,行存与列存在压缩效果上的差异尤为显著数据仓库类型的应用需要在极大的数据集上对某些特定的列进行原创 2017-08-01 08:54:48 · 1051 阅读 · 0 评论 -
Hadoop-No.3之序列化存储格式
序列化存储指的是将数据结构转化为字节流的过程,一般用于数据存储或者网络传输.与之相反, 反序列化是将字节流转化为数据结果的过程.序列化是分布处理系统(比如Hadoop)的核心,原因在于他能对数据进行转化,形成一种格式.使用了这样的格式之后,数据可以有效的存储,也能通过网络连接进行传输.序列化通常与分布式系统中数据处理的两个方面紧密连接:进程间的通信(比如他远程过程调用,即Remote Prucedu原创 2017-07-31 19:38:30 · 973 阅读 · 0 评论 -
Hadoop-No.2之标准文件格式
标准文件格式可以指文本格式,也可以指二进制文件类型.前者包括逗号分隔值(Comma-Separated Value,CSV和可扩展的标记语言文本(Extensible Markup Language. XML)格式 , 后者包括图像. Hadoop最强大的一个功能就是可以存储任何一种格式的数据. 原始的数据格式能够在线访问,数据完全保真.1 文本数据Hadoop非常常见的一个应用是日志(原创 2017-07-31 14:44:46 · 551 阅读 · 0 评论 -
Hadoop-No.1之数据存储选型
Hadoop之数据存储选型文件格式Hadoop支持多种面向数据存储的文件格式,包括纯文本和Hadoop特有的格式,如SequenceFile.还有一些更加复杂但功能更加丰富的格式可供选择,如Avro与Parquet.不同的格式具有不同的优势.任何一种格式都有适合的应用或者数据源类型.也可以在Hadoop中自己定制化文件格式压缩格式Hadoop上常用的压缩编解码格式具有不同的特点,比如,一些编解码原创 2017-07-27 12:30:14 · 1365 阅读 · 0 评论