hadoop(HDFS、MapReduce、Yarn)(学习)
主要内容
HDFS是什么
HDFS 是分布式存储,数据冗余,
分布式结构
把数据进行分割,默认是128M,存储3份
组件是什么
master-slave结构
client 负责文件的拆分
name node 元数据存储,监控datanode的状态
data node 存储数据,及时汇报自身情况
架构是什么
应用场景是什么,解决什么问题
操作HDFS的shell命令,进行与客户端的交互
格式:
hadoop -fs 命令
安装及配置
就是hadoop的安装和配置
MapReduce是什么
mapReduce 是分布式计算 离线计算(1秒以上的反应都是离线计算)
编程思维 map 分(分开计算) Reduce 合(结果合并)
hadoop streaming Mrjob进行封装
把数据进行分割,默认是128M,存储3份
组件是什么
架构是什么
应用场景是什么,解决什么问题
Yarn是什么
资源管理工具 管理cpu和内存
数据分布在各个节点上,在进行分布式计算时就需要考虑资源的调度,把cpu 和内存 进行合理分配
组件是什么
RM
NM
AM
架构是什么
应用场景是什么,解决什么问题
每日一题(力扣)
题库
125题字符串回文 (以前面试中有问过)
正读和反读都一样的字符串(不区分大小写和数字) abba 是 abca 就不是
简单方法:字符串翻转
sgood = “”.join(ch.lower() for ch in s if ch.isalnum())
print(sgood == sgood[::-1])
isalnum() 是检测字符串是否由字母和数字组成
随机面试模块
1. 大小写转换函数
str.lower() str.upper()
每日liunx练习5条
文件管理类
-
cat 用于连接文件并打印到标准输出的文件或设备上。
用法 cat fileName
实例
1. 把 textfile1 的文档内容加上行号(空白也加)后输入 textfile2 这个文档里:
cat -n textfile1 > textfile2
2. 把 textfile1 和 textfile2 的文档内容加上行号(空白行不加)之后将内容附加到 textfile3 文档里:
cat -b textfile1 textfile2 >> textfile3
3. 清空 /etc/test.txt 文档内容:
cat /dev/null > /etc/test.txt -
chattr 用于改变文件属性
用法 chattr [-RV][-v<版本编号>][+/-/=<属性>][文件或目录…]
实例
用chattr命令防止系统中某个关键文件被修改:
chattr +i /etc/resolv.conf
lsattr /etc/resolv.conf
让某个文件只能往里面追加数据,但不能删除,适用于各种日志文件:
chattr +a /var/log/messages -
chgrp 用于变更文件或目录的所属群组。
用法
实例1:改变文件的群组属性:(说明: 将log2012.log文件由root群组改为bin群组)
chgrp -v bin log2012.log
-v或–verbose 显示指令执行过程
原文件是在root组下面的现在变成了bin下面
实例2:根据指定文件改变文件的群组属性
chgrp --reference=log2012.log log2013.log
改变文件log2013.log 的群组属性,使得文件log2013.log的群组属性和参考文件log2012.log的群组属性相同 -
chmod
Linux/Unix 的文件调用权限分为三级 : 文件拥有者、群组、其他。利用 chmod 可以藉以控制文件如何被他人所调用。
用法 chmod [-cfvR] [–help] [–version] mode file…
实例1将文件 file1.txt 设为所有人皆可读取
chmod ugo+r file1.txt
此外chmod也可以用数字来表示权限如 :
chmod 777 file
语法为:chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
r=4,w=2,x=1
若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=5。
每日sql练习
sql基本语法
对数据库的操作
- 创建一个名字为sql_learn的数据库
create database sql_learn; - 删除一个名字为sql_learn的数据库
drop database sql_learn;
3.选择一个名字为sql_learn的数据库
use sql_learn;
4.sql_learn的数据库进行展示
show databases;
对数据表的操作 - 创建一个名字为table1的数据表
create table table1(column1 column_type not null);
create table table1 (
id
int(11) NOT NULL,
name
varchar(255) DEFAULT NULL,
primary key (id
),
unique keyname_key
(name
)
) ENGINE=InnoDB DEFAULT CHARSET=utf8; - 删除一个名字为table1的数据库表
drop table table1;
(*用星级表示自己的掌握程度,看自己是什么段位)