什么是大数据,大数据到底应该如何学?

文章目录

    • 一、食用须知
    • 二、大数据的基本概念
      • 1. 什么是大数据
      • 2. 数据是如何采集的
      • 3. 大数据真的能预测吗
    • 三、什么是大数据开发
    • 四、什么是大数据分析
    • 五、应如何学习大数据

一、食用须知

再更一篇技术杂谈类的文章。。。粉丝甲:所以这就是你拖更系列文章和视频的理由吗???粉丝乙丙丁:就是!就是!都断更多久了?我:咳。。。最近杂事缠身,还望恕罪!下面是食用须知:

  1. 本文适合还不十分了解大数据的你,同样适合不确定要不要学习大数据的你,将带你了解行业的需求以及与之相关的岗位,也同样适合刚刚踏入大数据领域工作的你,欢迎收藏并将文章分享给身边的朋友。
  2. 笔者从事大数据开发和培训多年,曾为多家机构优化完整大数据课程体系,也为多所高校设计并实施大数据专业培养方案,并进行过多次大数据师资培训、高校骨干教师学习交流,希望自己的一点粗浅认识能够帮助到大家。
  3. 本文并不是要将大数据描述成一个万能的、可以解决所有问题的东西,而是客观的阐述其作用,能够解决的一些问题。希望将这一领域尽可能完整的介绍给你,至于如何选择需要根据自己的实际情况来决定,如果有任何问题可以在评论区留言或加入粉丝群与我直接交流。

二、大数据的基本概念

1. 什么是大数据

要说什么是大数据我想大家多少已经有所了解了,很多落地的案例已经深入到了我们的生活中。大数据具有数据量大、数据类型丰富复杂、数据增长速度快等特点,一切的数据分析必须建立在真实的数据集上才会有意义,而数据质量本身也是影响大数据分析结果的重要因素之一。

作为学习者,我们关心的应该是大数据能够解决什么样的问题,能够应用在哪些领域,应该学习哪些内容,侧重哪一方面。简单来说,我们需要学习的就是一系列的大数据生态圈技术组件,以及贯穿整个数据分析流程的分析方法和思维,并且思路更加重要一些!只有明确了数据分析场景与流程,我们才能够确定需要整合哪些大数据组件来解决这一问题。下面我们将一起推开这一领域的大门~

2. 数据是如何采集的

大数据分析的第一步就是对数据的收集和管理,我们需要先来了解一下数据是如何产生的?又是被如何捕获的?那些看似杂乱的数据真的能被分析吗?

  • 主动的数据产生与用户行为数据收集

主动产生的数据比较好理解,在我们使用互联网或者各种应用的过程中,通过填写提交表单就会产生数据。类似的,我们在线下环境中,比如银行开卡、纸质表格的填写,最终都会变成电子数据流入到系统中。通常,我们会将这一类行为归为用户注册,通常会是产生数据的起点。(当然,有些时候我们分析的数据也可能并不关心用户自身的信息。)除此之外,通过使用一些平台的功能,用户会上传和发布各种类型的数据,如文本类信息、音频、视频等,这都是数据产生和积累的方式。
对于用户行为数据更多的来自于应用埋点和捕获,因为用户使用应用必须通过鼠标点击或者手指触碰来和用户界面进行交互。以网页应用(网站)为例,对于鼠标的所有行为基本上都可以通过事件监听的方式来捕获,鼠标在某个区域停留的时间、是否进行点击,我们甚至可以根据用户的行为数据刻画出整个页面的热力图。

在不同的应用场景中,我们可以对行为类型、功能模块、用户信息等维度进一步的划分,做更加深入的分析。

  • 结构化数据与非结构化数据

最常见的结构化数据就是存储在关系型数据库中的数据,如MySQL、Oracle等,这些数据都具备一个特点,就是十分规范。因为关系型数据库属于写时模式,也就是说不符合预先设定的数据类型和规范的数据不会通过校验,存不到数据库中。除数据库中的数据以外,那些能直接导入到数据库中的数据文件我们也可以把它们视为结构化的数据,如:CSV格式。这些数据通常需要具备统一的列分隔符、行分隔符,统一的日期格式等等。
对于非机构化的数据指的就是除结构化数据以外的另一大类数据,通常没有预期的数据机构,存储在非关系型数据库中,如:Redis、MongoDB,使用NoSQL来进行操作。也可能是非文本类型的数据,需要特别对应的手段来处理和分析。

3. 大数据真的能预测吗

问起大数据到底能不能预测,倒不如来说一说大数据是如何预测的。如果结合人工智能领域来说的话就比较复杂了,就说比较简单的场景:用统计分析的方法进行辅助决策,或者用经典数据挖掘算法进行模型的训练。既然是预测,那就有可能准确,也有可能不准确,分析者需要做的就是合理的使用各种数据维度,结合相应的算法或统计分析方法,去训练或拟合出一个潜在的规律。这个过程就好比,给了我们三个点(1,1)、(2,2)、(3,3),我们可以大概猜到它的函数式有可能为 y=x 一样。当然,实际的分析过程要比这复杂的多得多,毕竟有很多函数式都可以满足这三个点,但到底哪一个是我想要的规律呢?这就需要理论知识与行业经验并重,不断的打磨和优化才能够得到一个可靠的模型。
但是我们可以明确的一点是,大数据的预测也好、推荐也好,都是基于算法的,是数学的,也是科学的,但并不会百分之百的准确。

三、什么是大数据开发

了解了什么是大数据,接下来介绍一下大数据开发这一岗位,先直接上岗位描述(JD:Job Description)给大家感受一下。然后来说明一下大数据开发工程师的主要工作,最后再来总结一下需要掌握的技能。

  • 京东大数据开发工程师JD:

在这里插入图片描述

  • 小米大数据开发工程师JD:

  • 滴滴大数据开发工程师JD:

  • 主要工作

从上面的岗位描述中我们可以发现大数据开发工程师一般会与业务进行对接,要么是基于某一个场景进行有针对性的数据处理,要么是打造一个大数据产品。在这里我们也需要纠正一个小小的概念,可能有些小伙伴认为有大数据岗位需求的公司一定是一个自身具备大量数据、有着大量用户积淀的公司,其实不然。除了分析公司自身业务数据以外,同样可以打造一款通用的大数据产品,所以大数据的岗位虽然不像普通的开发工程师那么多,但是需求依然存在。
如果是分析公司自身的业务数据,一般会更偏重于使用大数据组件和算法库,构建出一个可行的数据分析方案。大家可以看出,现在完全不涉及算法的大数据岗位已经比较少了。这里的算法指的并不是数据结构,而是指机器学习库,与数据挖掘相关的算法,至少要知道如何控制算法的输入输出,算法能够解决的问题,可能不会涉及到亲自建模,在大数据分析的小节中会详细介绍。

如果是开发一个大数据产品,比如建模平台,或者是致力于解决数据采集数据可视化的解决方案。那么这比较适合从开发工程师转行大数据开发工程师的小伙伴,相当于在开发一个应用的基础上又增加了底层的大数据组件。这就要求我们既需要懂得原始的服务端框架的那一套,又能够驾驭大数据开发API。

  • 掌握技能

从事大数据开发需要掌握的技能可以概括为以下几个方面:

  1. 操作系统:Linux(基本操作、软件维护、权限管理、定时任务、简单Shell等)
  2. 编程语言:Java(主要)、Scala、Python等
  3. 数据采集组件及中间件:Flume、Sqoop、Kafka、Logstash、Splunk等
  4. 大数据集群核心组件:Hadoop、Hive、Impala、HBase、Spark(Core、SQL、Streaming、MLlib)、Flink、Zookeeper等
  5. 素养要求:计算机或大数据相关专业

四、什么是大数据分析

说到数据分析师,这不是本文的重点,因为门槛相对较高,另一方面更偏数学、统计学方向,更多的是与数据、算法打交道,编程的产物通常不是应用,而是一个算法模型。我们还是先来看一看相关的JD:

  • 小红书数据分析师JD:

在这里插入图片描述

  • 京东数据分析师JD:

  • 新浪微博数据分析师:

在这里插入图片描述

  • 主要工作:

如果说大数据开发的岗位需求是一条一条的话。。。那么数据分析师的岗位需求大概率是一篇一篇的。。。从上面的要求的中可以看到,每一个岗位都讲业务场景介绍的很详细,毕竟,数据分析师的主要工作之一是建立算法模型,这是垂直领域的深耕。通常我们无法直接使用那些已经存在的算法,必须要进行评估、优化、或是组合使用。除此之外,你还必须拥有这一领域的业务经验,才能够很好的胜任。

  • 掌握技能:

算法工程师需要掌握的技能可以概括为以下几个方面:

  1. 编程语言:Python、R、SQL等
  2. 建模工具:MATLAB、Mathematica等
  3. 熟悉机器学习库及数据挖掘经典算法
  4. 数学、统计学、计算机相关专业,对数据敏感

五、应如何学习大数据

上面介绍了和大数据相关的两个主要工作岗位,其实与大数据相关的岗位还有很多,真正归纳起来,ETL工程师也可以说擦边,因为随着数据量的不断增大,无论是银行内部还是大数据服务公司都在从传统ETL工具向大数据集群进行过渡。
涉及到了这么多的技术点,如何学习才更加高效呢?首先好入门的自然是大数据开发,对于Linux的操作系统和编程语言的部分没什么过多说明的,不要觉得有些东西没用就跳过,有些时候编程思想和解决问题的方法同样很重要,课本上有的一定要扎实。对于和大数据相关的组件,看上去十分的繁杂,很多小伙伴可能都是钻研于每个组件的用法、算子、函数、API,这当然没有错,但是同时一定不要忘记埋在其中的主线,那就是:完整的数据分析流程。在学习的过程中一定要了解各组件的特点、区别和应用的数据场景。

  • 离线计算

在离线计算场景下,使用的都是历史数据,也就是不会再发生改变的数据。在数据源确定以后,这些数据不会再增加、也不会再更新,比较适合对实时性要求不高的场景。大多数情况下是周期性的计算某一个指标或执行一个Job,运算耗时基本上可以控制在分钟级。

  1. 数据源:数据文件、数据库中的数据等
  2. 数据采集:Sqoop、HDFS数据上传、Hive数据导入等
  3. 数据存储:HDFS
  4. 数据分析:MapReduce、Hive QL
  5. 计算结果:Hive结果表(HiveJDBC查询)、导出至关系型数据库
  • 实时计算

实时计算所面对的数据是不断的流入的,要能够使用合适的组件处理实时流入的数据。有些时候单位时间内的数据流入会比较多,消费的比较慢。有些时候单位时间内的数据流入会比较少,消费的会比较快。所以在采集数据时一方面要保证数据不丢失,同时还需要有中间件来管理好数据。在进行实时计算时可以使用微批次的方式也可以使用其他方式,同时要处理好计算结果合并的问题,实时展示最新的结果。

  1. 数据源:日志文件增量监听等
  2. 数据采集:Flume
  3. 中间件:Kafka
  4. 数据分析:Spark-Streaming,Flink等
  5. 计算结果:HBase

以上只是简单的列举了一些实现不同场景数据流程的组件整合方案,诣在告诉大家一定要善于发现和总结不同组件的特点,把合适的组件放在合适的位置,这也是面试官经常喜欢问的场景题目。其实每个组件的使用方法和调用API并没有很复杂,重点还是在于流程化、一体化、把组件之间连接起来,不断的渗透和强化数据分析和处理的思路,能够把一个需求直接翻译成数据分析方案,这才是学习的重点。
本文的所有内容都只是个人的一点粗浅的认识,只适合刚入门学习或刚从事相关工作的小伙伴进行参考,有任何不对的地方希望大家包涵。

感谢原博客让我了解大数据,其实我本就是大数据专业的学生,但是并不是很了解,原博客原址:https://blog.csdn.net/u012039040/article/details/108589729

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/565841.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IDEA Servlet页面报错

IDEA和MyEclipise使用方法不同,在IDEA里新建Servlet的时候会报错。 错误如图所示 这是因为idea中没有导入servlet-api包造成的 解决办法如下: file –> project Structure 点击Libraries ,然后绿色的号,找到自己tomact的部…

【OpenCV 例程200篇】76. OpenCV 实现图像傅里叶变换

【OpenCV 例程200篇】76. OpenCV 实现图像傅里叶变换 欢迎关注 『OpenCV 例程200篇』 系列,持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列,持续更新中 2.3 二维离散傅里叶变换(DFT) 对于二维图像处理,通常使…

Python入门基础篇(二)元组,更适合新手哦!!!

文章目录前言一、Python元组的创建与删除1.元组的创建2.元组的删除二、元组的访问与修改1.访问元组元素2.修改元组元素总结前言 元组(tuple)是Python中另一种重要的序列结构,它与列表(list)有着许多类似之处。但是元组…

IDEA 载入jQuery的方法

使用IDEA开发java web时&#xff0c;页面写入了jquery代码&#xff0c;但是可能因为未能添加该模块&#xff0c;所以并不能起到作用。 那么如何添加Jquery模块呢&#xff1f;&#xff1f;&#xff1f; 最简单的添加方法 1.在jsp中写入&#xff1a; <script src"htt…

【OpenCV 例程200篇】77. OpenCV 实现快速傅里叶变换

【OpenCV 完整例程】77. OpenCV 实现快速傅里叶变换 欢迎关注 『OpenCV 完整例程 100 篇』 系列&#xff0c;持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列&#xff0c;持续更新中 傅里叶变换在理论上需要 O(MN)2O(MN)^2O(MN)2 次运算&#xff0c;非常耗时&#xff1…

python入门基础篇(三)序列切片,列表、元组推导式

前面介绍了列表与元组&#xff0c;在这里补充一下关于列表、元组推导式&#xff0c;以及序列的切片。切片不仅仅用于列表元组&#xff0c;还可以用于字符串等等 文章目录一、序列切片二、列表推导式1.根据列表生成指定需求的列表2.生成指定范围的数值列表3.从列表中选择符合条件…

Vue商品添加到购物车

用Vue实现把商品添加到购物车然后计算购物车里商品总金额。 功能分析&#xff1a; 1.商品添加到购物车 2.购物车显示商品的名称数量价格 3.计算购物车商品的总金额 4.删除购物车商品 效果演示 原始样式 添加商品 增加商品数量 下面向大家展示一下实现的过程。 代码演示 …

【OpenCV 例程200篇】78. 频率域图像滤波基础

【OpenCV 例程200篇】78. 频率域图像滤波基础 欢迎关注 『OpenCV 例程200篇』 系列&#xff0c;持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列&#xff0c;持续更新中 3. 频率域低通滤波器 图像变换是对图像信息进行变换&#xff0c;使能量保持但重新分配&#xff0…

H5 Canvas下雨特效

模仿下雨的特效&#xff0c;雨点从空中随机飘落。 这个特效使用了H5的新特性Canvas。 效果演示 代码展示 body代码 <!DOCTYPE html> <html lang"en" > <head> <meta charset"UTF-8"> <title>H5 Canvas下雨特效</titl…

用Notepad++来编写第一个HTML网页程序,你也可以!!!

学习任何一门编程语言&#xff0c;我们都要迈出第一步&#xff0c;运行第一个代码.我还记得当第一次运行成功python的"hello word"时的激动&#xff0c;还有html时的开心&#xff0c;反正收获蛮大的。哈哈&#xff0c;还是进入正题吧^o^/ 1.打开notepad&#xff0c;点…

【OpenCV 例程200篇】79. 频率域图像滤波的基本步骤

【OpenCV 例程200篇】79. 频率域图像滤波的基本步骤 欢迎关注 『OpenCV 例程200篇』 系列&#xff0c;持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列&#xff0c;持续更新中 3. 频率域低通滤波器 空间域滤波器和频率域滤波器实际上是相互对应的&#xff0c;有些空间…

别踩白块小游戏

用H5新特性实现别踩白块小游戏。 功能分析&#xff1a; 1.游戏开始按钮 2.每点中一个记一分 3.分数达到二十弹出鼓励弹框 4.点击错误则游戏结束 效果演示 看了效果有没有急迫的心情呢&#xff1f; 代码演示 body内容 <body><h2>本次得分</h2><h2 id…

鸿蒙不是安卓也不是Linux

1.1 鸿蒙不是Linux&#xff0c;也不是安卓 很多人会混淆鸿蒙跟Linux的关系。 先举个例子&#xff0c;大家很熟悉的Windows里面含有内核&#xff0c;也含有UI系统&#xff0c;含有桌面程序&#xff0c;普通人可以直接使用Windows。但是Linux仅仅是一个内核(它提供进程管理、文…

【OpenCV 例程200篇】80. 频率域图像滤波详细步骤

【OpenCV 例程200篇】80. 频率域图像滤波详细步骤 欢迎关注 『OpenCV 例程200篇』 系列&#xff0c;持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列&#xff0c;持续更新中 3. 频率域低通滤波器 3.2 频率域图像滤波的步骤 上节例程中通过一个简单的低通滤波遮罩 mas…

Struts 2框架创建的第一个项目

创建我的第一个Struts 2项目。 用Struts 2框架创建一个简单的WEB项目。 效果演示 登录页面 登陆成功之后显示的页面 在程序正式开始之前注意引入架包&#xff08;注意&#xff1a;架包放在WEB-INF下面的lib包里&#xff09; Struts 2一共有13个架包如下图所示 在开始我们…

Python入门基础篇(四)字符串的常用操作,全面易懂,简单实用!!!

请认真阅读哦&#xff01;&#xff01;&#xff01; 字符串几乎是所有编程语言在项目开发过程中涉及最多的一块内容&#xff0c;许多地方都是用到字符串的基本操作&#xff0c;前面讲了列表、元组&#xff0c;这次就来说说字符串吧 文章目录字符串的常用操作&#xff1a;1.拼接…

【OpenCV 例程200篇】81. 频率域高斯低通滤波器

【OpenCV 例程200篇】81. 频率域高斯低通滤波器 欢迎关注 『OpenCV 例程200篇』 系列&#xff0c;持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列&#xff0c;持续更新中 3.3 频率域高斯低通滤波器&#xff08;GLPF&#xff09; 例程 8.16 以理想低通滤波器为例&…

设备缺陷管理系统

用Jsp Servlet和Jquery实现设备缺陷管理系统。 设备缺陷管理系统采用MVC三层架构模式进行开发&#xff0c;有效地解决了对缺陷设备的管理和修正。 效果演示&#xff1a; 查询和联合查询页面 添加页面 点击删除之后 功能分析&#xff1a; 1.查询所有设备 2.联合查询 3.添…

【OpenCV 例程200篇】82. 频率域巴特沃斯低通滤波器

【OpenCV 例程200篇】82. 频率域巴特沃斯低通滤波器 欢迎关注 『OpenCV 例程200篇』 系列&#xff0c;持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列&#xff0c;持续更新中 3.4 频率域巴特沃斯低通滤波器&#xff08;BLPF&#xff09; 截止频率位于距频率中心 D0D_…

商品管理系统

用Jsp Servlet和Jquery以及SQLServer实现商品管理系统。 采用MVC三层架构进行此程序的开发。 功能分析&#xff1a; 1.登录功能 2.查询和联合查询商品 3.增加商品 4.删除商品 效果演示 登录页面 查询页面 添加商品 点击删除 实现商品管理系统需要数据库和程序两部分。…