大数据技术介绍

article/2025/10/3 13:42:45

为了方便大家梳理清楚大数据学习路线,本文从以下四个方面来介绍大数据技术:
大数据技术栈
大数据发展史
大数据应用
大数据开发岗位

一、大数据技术栈

之前有同事问我怎么转大数据开发,他在网上搜了一堆大数据相关的技术,但是不知道从哪里开始入门,也不知道要学习哪些技术,这些技术栈之间的关系是什么。我一开始转大数据的时候也有点懵逼,整体接触了一遍之后才把大数据技术栈给弄明白了。

做大数据开发,无非要干四件事情,采集、存储、查询、计算。此外,一些开发必备的基础语言能力是需要的。我按照这几个维度,对大数据常见技术栈做了下划分。

在这里插入图片描述
基础能力
java不用说,当今世界使用最广泛的语言,做程序员基本必会的,而且大数据生态很多组建都是通过java开发的。python通常用在爬虫,数据分析,机器学习上,部分大数据组件是python开发的,例如airflow。scala底层还是java,由于spark是scala开发的,且scala也集成了很多spark的算子,所以scala一般用在spark开发上。

数据采集
一般通过filebeat,logstash,kafka,flume做日志采集。一些应用系统的数据,也会通过kafka或者binlog的方式同步到大数据组件做存储。

数据存储
这里的数据存储引擎和传统的关系型数据库有很大的区别。常见分布式存储文件系统有hdfs。此外,对于一些非结构化的数据会通过nosql的方式做存储,常见的nosql存储组件有hbase,redis。

数据查询
常见的有hive、spark sql、presto、kylin、impala、durid、clickhouse、greeplum,每个组件都有自己的查询特性和使用场景。这里不展开篇幅详细介绍了,后面慢慢聊。

数据计算
常见的计算方式有流计算和批处理,按实效性又分离线计算和实时计算。对应的计算组件有storm,spark stream,flink。

其它
分布式协调器:大数据组件为了提高可靠性通常是分布式存储的,这样就涉及到各个组件之间的协调同步。最常见的协调器就是zookeeper。
资源管理器:为了提高计算能力,会对计算资源(CPU,内存,磁盘)做分配,常见的组件有yarn,mesos。
调度管理器:调度管理器管理任务何时执行,周期执行,是否重试等。常见的有airflow,dalphine schduler,oozie,azkaban。

二、大数据技术发展史

学习一门技术,知道会用已经够了,至少能解决问题。但是要想走得更远,还是需要知道一门技术的发展历史,通过发展史可以更深刻的理解为何会产生这门技术,它背后这样设计的原有,它的使用场景。

大数据技术的起源
大数据最早是起源于google。大家都知道google主要是提供网页检索服务,而这项服务依赖两个能力:网页的收集,索引的构建。有了这两个能力,我们才能通过检索服务搜索到互联网上的网页。这些网页和索引都需要大量的存储和计算能力。为了提高这两个能力,谷歌发表了三篇重要的论文。
2003年,分布式文件系统GFS。
2004年,大数据分布式计算框架MapReduce。
2006年,NoSql数据库系统。
这三篇论文奠定了大数据技术的基础。

Hadoop技术
受谷歌论文启发,2004年7月Doug和Mike Cafarella在Nutch(Nutch的设计目标是构建一个大型的全网搜索引擎,包括网页抓取、索引、查询等功能)中实现了类似于GFS的功能,也就是HDFS的前身。2005年2月,Mike Cafarella在Nutch中实现了MapReduce的最初版本。GFS和MapReduce作为hadoop前身,2006年hadoop从Nutch项目中分离出来,贡献给了Apache,至此成为Apache顶级项目。

Yahoo的Pig
2006年,为了让MapReduce技术更好使用,雅虎对MapReduce技术做了封装,开发了一套通过类似于SQL脚本查询的工具Pig,使用Pig写SQL会自动转换成MapReduce来执行,大大优化了MapReduce的使用难度。

Facebook的Hive
2007年,facebook对查询方式做了进一步优化,开发出了一套可以直接使用SQL的工具做大数据查询-HIVE,只要懂得SQL的开发人员都能使用这个组件。

Powerset的HBASE
2007年Powerset的工作人员,通过google的论文开发出了BigTable的java版本,即HBASE。2008年HBASE贡献给了Apache。

Spark的产生
2009年,UC伯克利里面的研究员在使用MapReduce做实验项目时,性能无法满足需求。于是着手开始设计spark,基于内存计算的spark性能要远远高于spark


三、大数据应用

在这里插入图片描述
推荐领域:电商购物,猜你喜欢。信息流方面,像头条文章推荐,抖音视频推荐。

风控:仿电信诈骗,黄赌毒识别,反洗钱等等。

医疗:通过用户一些医疗信息做疾病的识别。

智慧城市:自动驾驶,智慧物流,城市交通管理等等。


四、大数据开发岗位

基础组件开发:需要扎实的java或者C++语言能力,对大数据组件有独到认知,能对大数据组件结合公司业务场景做二次封装。

大数据应用开发:开发一些大数据工具,比如标签管理系统,元数据管理系统,埋点系统,爬虫系统等。需要具备扎实的java或者python能力,能熟练使用大数据相关组件。

数仓工程师:一般都是做一些BI报表的开发,数据治理。精通SQL,精通常见的数仓模型。

算法工程师:精通常见机器学习算法,能熟练使用大数据组件。结合公司的业务场景灵活的使用算法能力赋能。


更多大数据技术知识,欢迎搜索关注微信公众号“大数据入坑指南”。

在这里插入图片描述


http://chatgpt.dhexx.cn/article/KHscrsRJ.shtml

相关文章

大数据时代:大数据处理技术及采集方法

在大数据时代,传统的大数据处理技术还管用吗? 大数据处理环节下的需求 大数据环节下的数据来源是非常多,而且类型也很多花样,存储和数据处理的需求量很大,对于数据展现也非常的高,并且很看重数据处理的高效性和可用…

大数据处理的关键技术有哪些?

数据关键技术涵盖数据存储、处理、应用等多方面的技术,根据大数据的处理过程,可将其分为大数据采集、大数据预处理、大数据存储及管理、大数据处理、大数据分析及挖掘、大数据展示等。 1、大数据采集技术 大数据采集技术是指通过 RFID 数据、传感器数据…

大数据处理关键技术主要有五种,具体指的是什么?

大数据技术 ,就是从各种类型的数据中快速获得有价值信息的技术。 大数据 领域已经涌现出了大量新的技术,它们成为大数据采集、存储、处理和呈现的有力武器。大数据处理关键技术一般包括:大数据采集、大数据预处理、大数据存储及管理、大数据分析及挖掘、大数据展现和应用…

数据分析|SQL面试题集锦

https://zhuanlan.zhihu.com/p/136619982 https://www.cnblogs.com/diffrent/p/8854995.html 1.用一条SQL 语句 查询出每门课都大于80 分的学生姓名 name kecheng fenshu 张三 语文 81 张三 数学 75 李四 语文 76 李四 数学 90 王…

Sql面试50题 详解 持续更新

Sql面试50题 前言:此文章是根据【数据分析】- SQL面试50题 - 跟我一起打怪升级 一起成为数据科学家 学习整理而来,仅供复习参考。 建表与插入数据 --建立学生表 CREATE TABLE Student( s_id VARCHAR(20), s_name VARCHAR(20) NOT NULL DEFAULT , s_bi…

大厂SQL面试题,连续时间问题

今天分享一个非常常考,同时也不太容易的sql题目类型,求连续时间问题。 这类题的核心是:分组排序,用时间减去排序,如果连续的话他们的差会是相同值 记住下面的表,按照提供的三步思路理清楚里面的数据逻辑&a…

经典Hive-SQL面试题及答案

目录 第一题 求分区累加值 第二题 UV和每个店铺访问量top3信息 Hive sql解答 第一题 求分区累加值 我们有如下的用户访问数据 userId visitDate visitCount u01 2017/1/21 5 u02 2017/1/23 6 u03 2017/1/22 8 u04 2017/1/20 3 u01 2017/1/23 6 u01 2017/2/21 8 U02 2017/1/…

吊打面试官之SQL面试题30问及答案

经典SQL30问一: 编写查询,查找表中的行总数。编写查询,消除表结果中的重复记录。编写查询,获取t_employee表中designation字段前3个字符。查询t_employee表,合并输出Designation和Department两个字段的内容。如果使用union和union all合并4条SQL子查询,union会有多少次被用来去…

pl sql面试题_PL SQL面试问答

pl sql面试题 If you have worked on Oracle database and going for an interview, you should go through PL SQL interview questions and answers. 如果您曾经在Oracle数据库上工作过并且要进行面试,则应该阅读PL SQL面试问题和答案。 PLSQL stands for Procedural Langu…

常见的sql面试题

本章是SQL面试题的汇总,之后还会不断更新,文章的思维导图如下: 1.SQL初级查询 单表查询 -- 查询学生表中有几名学生的信息.显示学号 select distinct 学号 from student;查询条件 -- 查询学生表中性别为女的学生所有信息 SELECT * FROM student WHERE 性别女;结果排序 -- …

美团/得物sql面试题

解题思路: 1.找出uid不同的但是买过pro_id相同的商品的用户 [自连接] selecta.uid,b.pro_id fromtb_order ajoin tb_order bon a.pro_id b.pro_id where a.uid <> b.uid -- 找出uid不同的但是pro_id相同的商品2.对uid和pro_id进行分组 selecta.uid,a.pro_id fromtb…

Spark SQL面试题

1.RDD DataFrame DataSet的区别 &#xff08;1&#xff09; 三者之间的关系 DataFrame是特殊的RDD(它相当于RDDschema&#xff0c;即RDD表信息)&#xff0c;可以将他看成数据库中的一张数据表&#xff0c;但是只知道这个"表"中的各个字段&#xff0c;不知道各个字段…

SQL常见面试题

SQL常见面试题关系型数据库&#xff08;SQL&#xff09;非关系型数据库&#xff08;NoSQL&#xff09;数据库三大范式主键与外键CHAR与VRCHAR数据类型临时表数据库函数、触发过程与存储器 SQL语句SQL语言分类DROP、TRUNCATE、DELETE的区别sum、count(\*)、count(1)、count(colu…

常见的SQL面试题:经典50例

SQL基础知识整理 select 查询结果&#xff0c;如: [学号,平均成绩&#xff1a;组函数avg(成绩)] from 从哪张表中查找数据&#xff0c;如:[涉及到成绩&#xff1a;成绩表score] where 查询条件&#xff0c;如:[b.课程号0003 and b.成绩>80] group by 分组&#xff0c;如:…

5个必考的大厂SQL面试题

学Python的同学&#xff0c;SQL也一定要学习&#xff0c;SQL几乎是每个数据岗的必备题目&#xff0c;下面分享几个常见的大厂SQL习题。 &#xff08;1&#xff09;找出连续7天登陆&#xff0c;连续30天登陆的用户&#xff08;小红书笔试&#xff0c;电信云面试&#xff09;&am…

7 大开源数据库利弊全对比

1、CUBRID CUBRID 是一个很好的免费开源选择&#xff0c;专门针对 Web 应用程序进行优化&#xff0c;当复杂的 Web 服务需要处理大量数据并生成巨大的并发请求时&#xff0c;CUBRID 非常有用。这个解决方案是用 C 写的。 优点&#xff1a; 多粒度锁定 在线备份 用于开发语言…

还在用Navicat?这款开源的数据库管理工具界面更炫酷!

数据库管理工具&#xff0c;是后端程序员使用频率非常高的的工具。Navicat、DataGrip虽然很好用&#xff0c;但都是收费的。最近在逛Github的时候&#xff0c;无意间发现了一款开源的数据库管理工具Beekeeper Studio&#xff0c;界面非常炫酷推荐给大家&#xff01; Beekeeper…

开源数据库管理系统现在比商业产品更受欢迎

原文链接&#xff1a;https://db-engines.com/en/blog_post/86 2021年1月13日 作者&#xff1a;马蒂亚斯盖尔曼&#xff08;Matthias Gelbmann&#xff09; Matthias Gelbmann是奥地利维也纳Solid IT联合创始人&#xff0c;董事总经理兼顾问。 Matthias Gelbmann在维也纳学习了…

你了解世界上功能最强大的开源数据库吗?

如果不是领导强制要求&#xff0c;可能根本不会留意到这款号称世界上功能最强大的开源数据库——PostgreSQL。如果你不读这篇文章&#xff0c;或许也会错过一个跃跃欲试想挤进前三的优秀数据库。 为了能够熟练运用&#xff0c;特意买书研究&#xff0c;发现这款数据库还真有点…

开源数据库列表

转载于&#xff1a;http://database.csdn.net/subject/databaseopen.htm 编辑导语 开源数据库最初的诞生和发展大都依靠自由软件开发者&#xff0c;但是&#xff0c;现在越来越多的IT公司开始把触角伸向了开源数据库。而早期投身于其中的IT厂商早已获利&#xff0c;比如Sleepy…