开始:2022年11月6日
以下内容仅为个人笔记整理。(第一阶段的内容并不完全。硬件上有点问题,暂时无法解决,空着的部分后续补上。)
第0章 大数据介绍
大数据可以从事的职位有: 大数据工程师 数据分析师(一般女孩较多,画图)
大数据和python的关系:
1-1大数据介绍
1.什么是大数据?(有价值的海量数据)
大数据(big data),是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,因此需要新处理模式,该模式就是大数据。
2.大数据处理的数据量有多大?
3.大数据解决什么问题
4.大数据的特点
(拓展)结构化数据、半结构化数据、非结构化数据的区别
结构化:文字、数字
非结构化:音频、视频、图片
半结构化(少):json
5.大数据应用场景
行业领域(上课ppt上的图片,数据来源尚不清楚。)
(拓展)数据的存储方式:
excel:单个sheet页,能存放6万多条数据。单个sheet页中存储不够的话可以在加一个sheet页,但是两个sheet页中的数据是彼此隔离的。(隔离的概念暂时比较模糊)
mysql、oracle:mysql单个表存储数据量达到百万级别之后就会变得非常卡。
痛点问题:增删改查,无法操作或响应时间太长
存不下 -> 存储问题
算不了 -> 计算问题
大数据来了
6.大数据分析业务步骤
流程
个人总结:
->了解了大数据的主要技术之后,你要搞清楚你现在面对的需求是什么?
->需求知道了下面就是怎么做。既然是大数据,首先这些数据属性是啥,在哪?
->大数据我有了。但是大数据都具有低价值密度性,先筛选掉部分没用或关系不大的数据。
->对留下来的数据,运用各种知识、工具进行分析。
->将分析结果换种方式表达,尽量让普通人也能看懂。同时也要保证数据的准确性、[实时性、]等。
->总结一下你都干了啥。解决的问题、解决流程、... 最终的结果。
7.大数据职业规划
岗位需求:
-
大数据开发工程师
-
Hadoop开发工程师
-- 上面两个差别不大
-
Spark开发工程师
-
实时计算开发工程师(flink+kafka,sparkstreaming+kafka)
-
数据仓库工程师(Hive脚本开发、Hive开发工程师)
-
ETL开发工程师 (与上一个差不多)
-
BI开发工程师(数据分析、工资偏低、Python+fineBI、tableau)
-
数据挖掘工程师 (算法)
-
数据架构师 (5年起步、年薪百万)
职业方向:
大数据开发工程师(初级、中级)
->高级大数据开发工程师(3-5年:30k+)
->大数据架构师(5年以上)
->大数据技术总监(基本不写代码、35岁之前牛皮的很)
8.大数据学习路线
1.Linux
| 大数据的所有组件都是在Linux的环境下搭建的。
2.编程语言 :Java、SQL(重点语言)、Scala、Python
3.大数据框架:
核心框架:Hadoop、Hive、Spark、Flink、Kakfa、Hbase
大数据工具:
-
zookeeper
-
Hadoop
-
MapReduce
-
hdfs
-
-
HIVE
-
azkaban:调度工具
-
impala
-
HBASE
-
Phoenix
-
Redis
-
elasticsearch
-
logstash
-
kibana
-
hue
-
oozie
-
scala
-
spark
-
flink
-
kafka
-
kudu
-
clickhouse
-
DS
第一章 Linux
1-2 Linux介绍及虚拟机网络配置
1.Linux介绍
-
Linux的创始人 林纳斯·托瓦兹
-
Linux的特点是:开源、免费、拥有最为庞大的源码贡献者。
-
Linux操作系统本身是一个整体,包括Linux内核、系统库和系统程序,Linux内核是其最基础的部分。
-
自发布Linux内核来,很多公司加入其中,在内核的基础上构建了自己的操作系统版本,被称为Linux的发行版。
-
Linux常见发行版本:Linuxmint、ubuntu、centos、redhat、debian、深度、麒麟、红旗...
2.Linux系统的安装介绍
需要有一台裸机或虚拟机。
●概述 要安装Linux系统,首先,我们需要找到一台计算机,才能安装。为了方便我们课堂上的操作,我们将使用【虚拟机】,在我们的笔记本电脑上模拟一台计算机。我们把Linux系统安装到这台计算机上。
●虚拟机介绍 虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的,运行在一个完全隔离环境中的完整计算机系统。
8.网络配置
9.网络配置2
10.解决网络问题
11.网络配置和连接工具
1-3 Linux的目录结构(了解)
-
Linux文件系统没有盘符的概念,就是没有C盘,D盘等等,所有文件入口是从根目录开始的。
-
系统自带的文件、文件夹不要删除或修改
1.常用的目录介绍
FHS根据文件系统使用的频繁情况,是否允许用户随意改动,将目录定义成4种交互作用的形态,如下:
-
可分享的:可以分享给其他系统挂载使用的目录。
-
不可分享的:仅与自身机器有关,不适合分享给其他主机的。如自己机器上运行的设备文件或者与程序有关的socket文件。
-
不变的:不会经常变动的数据,如说明文件,函数库,主机服务配置文件等。
-
可变动的:经常会改变的数据,如登录文件,新闻组等。
根目录与根目录下的文件夹存放说明
根目录是整个系统最重要的一个目录,因为所有的目录都是由它衍生出来,而且根目录也与开机,还原,系统修复等操作有关。
由于系统开机需要特定的开机软件、内核文件、开机所需要的程序、函数库等文件数据,若系统出现异常时,根目录也要有能够修复文件系统的程序。由此可见根目录的重要性,所以建议,根目录不要放在非常大的分区内(这里的分区是什么意思,话说Linux系统下不是部分C盘、D盘吗?),因为越大放置的文件越多,出错的几率也越大,性能也越不好,所以,根目录应该越小越好,且应用程序所安装的软件最好不要与根目录放在一个分区内。
其中有5个目录不可与根目录分开放在不同的分区。这5个目录分别为:etc,bin,dev,lib,sbin。
那么除啦以上的文件夹之外,还有一些linux系统中也非常重要的目录如下:
LIUNX系统的目录树,如下:
第二章 Linux命令(重点)
命令格式
command [-options] [parameter]
说明:
- command:命令名,相应功能的英文单词或单词的缩写。
- [options]:选项,可用来对命令进行控制,也可以省略。
- parameter:传给命令的参数,可以是零个、一个 或 多个
1. 显示文件列表命令:ls
[options] | 含义 |
---|---|
-a | 显示指定目录下所有子目录与文件,包含隐藏文件 |
-l | 以列表方式显示文件信息(ls -l 可以简写为ll) |
-h | 显示大小带单位。必须配合-l 一起使用 |
------------------------------------ | ------------------------------------------------------------------------- |