踏入大数据的第一天,我先入入门
【转行原因】目前数据每天已亿计算,作为 Java程序员的我已经无法使用常规工具对数据进行捕捉、管理和处理这些数据集合。MySQL的存储容量也只有500-1000行数据。而且数据每天还在告诉增长,还不带重样的。还有就是跟着党走,我要搞新基建。所以我来了,我来了,我踏着七彩祥云走来了.....
按顺序给出存储单位:bit、Byte、KB、MB、GB、TB、PB、ZB、YB、BB、NB、DB。
大数据主要是干嘛的:海量数据的存储和海量数据的分析计算问题。en....我是刚入门,不要骂我菜......
一、大数据特点
【1】多样化(variety):这里包含两个方面,一个是数据来源多样化,就是我们采集的数据通过不同的渠道,不同平台产生的多样化;还有就是数据的结构数据多样,有结构化的和非结构化(视频、图片...)的等等。
【2】大量化(volume):这个我们比较好了解,毕竟名字就带着这个意思。互联网的发展规模,我们每天通过它产生的数据也是与日俱增,现在我们可能一年里产生的数据量,都能和之前的史上数据相匹敌了,大量化实至名归啊。
【3】高速(velocity):这里面涉及到大数据的整个流程,比如数据的增长速度,还有我们对数据的处理速度,很多类型的数据我们已经能够做到时时反馈了,刚刚收集到马上就能反过来影响我们的生活。
【4】价值密度低(value):也就是大数据虽然数量巨大,但是也不是越多越好的,其中有很多都是没意义的,有用的数据就被淹没在这海量的没用数据之中了,而这一点也是大数据技术的工作难点之一,要将那些海量无用的、复杂的数据做深度的分析,从其中挖掘那些对我们来说是有价值的数据。
二、大数据能干啥
【1】物流仓库:大数据分析系统助力商家精细化运营、提升销量、节约成本。
【2】零售:分析用户消费习惯,为用户购买商品提供方便,从而提升商品销量。例如(纸尿裤+啤酒)
【3】旅游:深度结合大数据能力与旅游行业需求,共建旅游产业智慧管理、智慧服务和智慧营销的未来。
【4】商品广告推荐:给用户推荐需要的产品。
三、业务流程分析
四、大数据部分组织结构
五、Hadoop是什么
Hadoop是一个由 Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。广义上说 Hadoop指一个更广泛的概念(Hadoop生态圈)
六、Hadoop的优势
高可靠性:Hadoop底层维护多个数据副本,所以及时Hadoop某个计算元素或存储出现故障,也不会导致数据丢失。
高扩展性:在集群间分配任务数据,可方便的扩展数以千计的节点。
高效性:在 MapReduce 的思想下,Hadoop是并行工作的,以加快任务处理速度。
高容错性:能够自动将失败的任务重新分配。
七、大数据技术生态体系
图中涉及的技术名词解释如下:
【1】Sqoop:Sqoop是一款开源的工具,主要用于在Hadoop、Hive与传统的数据库(MySql)间进行数据的传递,可以将一个关系型数据库(例如 :MySQL,Oracle 等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。
【2】Flume:Flume是 Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接收方(可定制)的能力。
【3】Kafka:Kafka是一种高吞吐量的分布式发布订阅消息系统,有如下特性:
■ 通过 的磁盘数据结构提供消息的持久化,这种结构对于即使数以TB的消息存储也能够保持长时间的稳定性能。
■ 高吞吐量:即使是非常普通的硬件Kafka也可以支持每秒数百万的消息。
■ 支持通过 Kafka服务器和消费机集群来分区消息。
■ 支持 Hadoop并行数据加载。
【4】Storm(淘汰中):推荐使用Flink,目前比较火。Storm用于“连续计算”,对数据流做连续查询,在计算时就将结果以流的形式输出给用户。
【5】Spark:Spark是当前最流行的开源大数据内存计算框架。可以基于 Hadoop上存储的大数据进行计算。
【6】Oozie:Oozie是一个管理 Hdoop作业(job)的工作流程调度管理系统。
【7】Hbase:HBase是一个分布式的、面向列的开源数据库。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。
【8】Hive:Hive是基于 Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的SQL查询功能,可以将SQL语句转换为 MapReduce任务进行运行。 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的 MapReduce应用,十分适合数据仓库的统计分析。
【10】R语言:R是用于统计分析、绘图的语言和操作环境。R是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。
【11】Mahout:Apache Mahout是个可扩展的机器学习和数据挖掘库。
【12】ZooKeeper:Zookeeper是 Google的 Chubby一个开源的实现。它是一个针对大型分布式系统的可靠协调系统,提供的功能包括:配置维护、名字服务、 分布式同步、组服务等。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。
不说了,该学习Hadoop了