Big data 概述
大数据指的是传统数据处理应用软件不足以处理它们的大或复杂的数据集的术语, 数据通常都是量大价值不高, 通过数据挖掘出有用的信息.
Big data are high volume, high velocity, and/or high variety information assets that require new forms of processing to enable enhanced decision making, insight discovery and process optimization.(大数据是大量、高速、及/或多变的信息资产,它需要新型的处理方式去促成更强的决策能力、洞察力与最优化处理) --Gartner
4 个 V:量(Volume,数据大小)、速(Velocity,数据输入输出的速度)与多变(Variety,多样性),合称“3V”或“3Vs”, 后加上一个真实性(Veracity).
Key-Words:
- 数据级别, 大数据的数据级别通常为 PB 以上.
- 分布式系统
这是为解决大量运算需要耗费大量资源而提出的将需要计算的数据分区成小块在多台计算机上得到运算结果后合并汇总从而得出结论的计算方式, 相对于集群系统的超算而言, 成本更低. - CDH
CDH(Cloudera’s Distribution Including Apache Hadoop) 是一款基于 Apache 协议的免费 Hadoop 发行版大数据平台. - CAP 原理
对一个分布式计算系统, 不可同时满足 Consistence(一致性), Availability(可用性), Network partitioning(分区容错性), 分布式系统只能满足其中的 2 项而不可能满足全部 3 项. - Hadoop 技术栈
-Hadoop 是一个用于处理大数据技术的分布式解决方案的 Java 框架.- Hadoop = HDFS(数据存储技术相关的文件系统) + MR(Mapreduce, 数据处理)
- mapreduce
一个对大量数据进行分布式处理的软件框架 -
hive
hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析. -
HDFS
HDFS 是一款Hadoop分布式文件系统(Hadoop Distributed File System)
图解 HDFS - 分析型数据 & 事务性数据(OLAP & OLTP)
- HBase
HBase是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,适用于结构化的存储,底层依赖于Hadoop的HDFS,利用HBase技术可在廉价PCServer上搭建起大规模结构化存储集群。因此HBase被广泛使用在大数据存储的解决方案中。 - Sqoop
sqoop是一款用于hadoop和关系型数据库之间数据导入导出的工具。和 HBase 一样用于改善数据访问你可以通过sqoop把数据从数据库(比如mysql,oracle)导入到hdfs中;也可以把数据从hdfs中导出到关系型数据库中。sqoop通过Hadoop的MapReduce导入导出,因此提供了很高的并行性能以及良好的容错性。 - 适用场景
Hadoop 专为离线处理和大规模数据分析而设计, 最适合一次写入, 多次读取的数据存储需求, -
Zookeeper
负责协调工作流程 - Mahout
提供可扩展的机器学习领域经典算法的实现,包括集群,分类, 推荐系统, 频繁子项. -
拜占庭将军问题
当 N >= 3F + 1 时满足一致性要求, ( N 代表计算机总数, F 代表出错计算机总数), 比如总共有4台计算机, 如果有一台计算机出错, 仍然能够保持一致性 - YARN(Yet Another Resource Negotiator)
用于运行分布式应用的通用资源管理器