[喵咪大数据]初识大数据

大数据互联网时代下大家耳熟能详的名词,但是我们离大数据有多远呢?从2011Hadoop1.0问世到现在,渐渐地大数据解决方案已经趋向成熟,笔者觉得也是时间来学习接触一下大数据解决一些在工作中实际遇到的一些棘手的问题,今天开始笔者会带来一整套亲生在大数据里面探索的经验已经一些实践经验来与大家一同分享学习.

附上:

喵了个咪的博客:w-blog.cn

1.什么是大数据,为什么需要大数据

大家可以一起来思考这个问题:什么是大数据?存储的数据很多就是大数据吗? 10TB 1PB? 其实不然,我们通过Hadoop其中的各个组件就可以了解到,大数据并不只是数据量大而已,它是数据存储+分布式调度+数据分析的结合:

  • 数据存储 : Hadoop-HDFS — 用户高可靠性的来存储原始数据
  • 分布式调度 : Hadoop-YARN — 用户分布式任务调度管理分配任务
  • 数据分析 : Hadoop-MapReduce — 任务处理分析引擎

不知道大家是否还记得马云在杭州峰会上说你们知道全国哪个省的女人胸最小吗?他说他知道,但是实际上他真的就对比过吗?并不是这就是大数据技术实现的 大数据可以存放原来不敢想的数据,比如大量的请求日志,大量的操作日志,之前我们使用的数据能够存储1TB的容量千万基本条数据基本已经是极限了更别说分析了,大数据能够做到TB甚至PB级别的数据存储,还能在其中进行分析,举几个例子大家就很好理解:

  • 有多少人每天中午吃中餐外卖?
  • 购买衣服用户购买最多的颜色和尺码是什么?
  • 上海那个地方的人流量最多最适合投放广告?

上面的每一个结果都需要通过大量的数据来分析出来,大数据就是起到这个作用最终来实现数据价值就是大数据的最终目标!

2.大数据生态

为什么这个时间段来说大数据呢?大数据不是已经很多年了吗? 现在在来说大数据是不是太晚了?

笔者觉得这个时间一点也不晚,马云说未来10年是大数据和人工智能的十年,尤其经过的一段时间的发展完善,之前少数人能够使用的大数据已经变得更加大众化了拥有了自己的生态,让使用者入门成本大幅降低,让普通开发者和小企业也可以能够比较轻松的接入到自己的业务中,其中有一些生态中大家耳熟能详的代表:

  • Hadoop : 生态中的老大,提供了大数据的基础HDFS分布式文件系统以及YARN任务调度和MapReduce处理引擎
  • Hive : 基于Hadoop的一个数据仓库工具,结构化的数据文件映射为一张数据库表,,使用SQL语句的查询方式大大降低了需要编写MapReduce难度(复杂的语句会转换为MapReduce执行也可以使用其他引擎)
  • Pig : 一种轻量级脚本语言可以很方便的在HDFS上进行各项操作,可以操作结构化,半结构化,非结构化数据,和Hive相比Hive只能操作结构化数据
  • Hbase : 一个NoSql的数据库,Hbase的数据操作基本可以做到实时,比如一些短链接很大一部分使用Hbase来存储
  • KafKa : 高吞吐量的分布式发布订阅消息系统,用于海量日志的传输较多
  • Spark : 使用scala开发大规模数据处理而设计的快速通用的计算引擎,和MapReduce不同Spark使用内存分布数据集,内存计算下,Spark 比 Hadoop 快100倍.
  • Storm : 实时计算系统,俗称流处理引擎实时分析,在线机器学习,持续计算,分布式远程调用和ETL使用较多
  • Sqoop : 数据导入导出工具,可以用于Hadoop(Hive)与传统的数据库(mysql、postgresql...)间数据互相传递
  • Presto : Facebook开发的数据查询引擎,可以与Hive和关系型数据库结合,实现直接的关联查询等

大数据生态中还有很多其他的生态组件这里就不一一列举.

3.大数据解决方案

既然要说大数据肯定要有具体的场景,笔者这里的场景是对所有服务器的访问日志进行记录,最终达到通过操作日志对用户行为数据分析,大致流程如下: (有的童鞋说为什么一定要用大数据来分析呢? 直接业务汇总也可以啊! 大家要注意通过大数据分析原始数据都是存在的可以通过多个维度进行分析不局限,而业务汇总往往只是一个总数已经丢失了所有的维度,如果统一有误直接影响数据结构,而大数据只要改一下查询的方式就好了)

来自一份日志的生命周期

  1. 通过业务服务器接口请求分别进行业务处理到数据库并且写入到日志系统中,filebeat读取日志文件把数据发送到KafKa中
  2. 日志暂时存在KafKa中,分别被storm和Go程序消费(笔者后期会开源),storm试试计算处理到mysql库和hive库中
  3. Go程序会提前建立好Hive和Hbase中的表结构(按照每天分表),Go收到数据会进行配置的规则解析并且写入数据到Hbase中
  4. Hbase和Hive进关联,并且每天定时对数据进行汇总分区,最终日志会存放到Hadoop-HDFS中
  5. Sqoop会把Mysql的数据同步到HIVE库中,Spark对数据进行离线分析得到需要的结构存入HIVE,Sqoop吧处理的数据在同步会Mysql
  6. 使用Presto对数据进行实时查询检索

(未经过作者允许请不要善自使用图片)

猫咪后续大致的一个大数据内容如下:

  • [喵咪大数据]Hadoop单机模式
  • [喵咪大数据]Hadoop集群模式
  • [喵咪大数据]Hadoop节点添加下线和磁盘扩容操作
  • [喵咪大数据]Hive2搭建
  • [喵咪大数据]Hbase搭建
  • [喵咪大数据]Hive+Hbase关联
  • [喵咪大数据]HUE大数据可视化管理工具
  • [喵咪大数据]Presto查询引擎
  • [喵咪大数据]Spark集群搭建
  • [喵咪大数据]Spark-SQL查询引擎
  • [喵咪大数据]KafKa搭建配置
  • [喵咪大数据]filebeat采集日志进入KafKa
  • [喵咪大数据]sqoop数据导入导出(Mysql <-> Hive)

4 总结

大数据已经深入到各行各业无处不在,笔者也希望在子学习的过程中能够和大家一同分享学习收货知识一同成长,如果大家感兴趣请关注喵咪的博客,将给大家带来更多的精品博客,谢谢大家的支持!

注:笔者能力有限有说的不对的地方希望大家能够指出,也希望多多交流!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏大数据和云计算技术

kafka stream简要分析

kafka历史背景 Kafka是2010年Kafka是Linkedin于2010年12月份开源的消息系统,我接触的不算早,大概14年的时候,可以看看我们14年写...

3716
来自专栏PPV课数据科学社区

Hadoop、Spark、HBase与Redis的适用性讨论

最近在网上又看到有关于Hadoop适用性的讨论[1]。想想今年大数据技术开始由互联网巨头走向中小互联网和传统行业,估计不少人都在考虑各种“纷繁复杂”的大数据技术...

3537
来自专栏顶级程序员

全球100款大数据工具汇总

来源:网络 ? 1、 Talend Open Studio 是第一家针对的数据集成工具市场的ETL(数据的提取Extract、传输Transform、载...

4106
来自专栏华章科技

经典收藏丨数据科学家&大数据技术人员工具包

本文简介:数据科学家的常用工具与基本思路,数据分析师和数据科学家使用的工具综合概述,包括开源的技术平台相关工具、挖掘分析处理工具、其它常见工具等几百种,几十个大...

1092
来自专栏about云

企业该如何构建大数据平台【技术角度】

问题导读 1.作为一个技术人员,你认为该如何搭建大数据平台? 2.构建大数据平台,你认为包括哪些步骤? 3.本文是如何构建大数据平台的? 亲身参与,作...

4249
来自专栏Java帮帮-微信公众号-技术文章全总结

干货 | 全球100款大数据工具汇总(收藏备用)

是第一家针对的数据集成工具市场的ETL(数据的提取Extract、传输Transform、载入Load)开源软件供应商。Talend的下载量已超过200万人次,...

2583
来自专栏大数据文摘

资源 | 全球100款大数据工具汇总,入行必备

3472
来自专栏大数据文摘

数据科学工具包(万余字介绍几百种工具,经典收藏版!)

25911
来自专栏CSDN技术头条

【收藏】全球100款大数据工具汇总

1、 Talend Open Studio 是第一家针对的数据集成工具市场的ETL(数据的提取Extract、传输Transform、载入Load)开源软件供应...

2326
来自专栏钱塘大数据

【干货】全球100款大数据工具汇总,入行必备

是第一家针对数据集成工具市场的ETL(数据的提取Extract、传输Transform、载入Load)开源软件供应商。Talend的下载量已超过200万人次,其...

1430

扫码关注云+社区

领取腾讯云代金券