【大数据面试】【框架】Linux命令、Shell工具、常见Shell脚本(群起脚本、数仓导入)
一、Linux
1、常用高级命令
ps -ef:查看进程详情,ps -ef|grep dae可以搜索指定进程,-e表示环境变量
ps -au:以用户为主的详细格式,显示进程平均占用资源,不包括cmd列
df -h:文件系统的磁盘空间占用情况,表示大文件,-i表示innode索引命名的小文件
iotop:进行输入输出的进程信息,类似iostate表示IO和CPU变化
xargs:将标准输入转为命令行参数,如echo "one two three" | xargs mkdir
tail:文件最后10行,如tail -n +20 notes.log是从20到最后
uptime:查看系统的平均负载,即特定时间间隔内运行队列中的平均进程数(最近1分钟、5分钟、15分钟系统的负载)。
netstat:显示不同端口的进程信息
2、查看磁盘使用情况、查看进程、查看端口号
df -h
top 或 ps
netstat
二、Shell
1、Shell的常用工具(只需要记住名称)
awk(停止flume进程时使用),显示匹配的文件:awk '/101/' file
sed:使用正则表达式打印文件信息,如sed -n '/^#/!p' /etc/vsftpd/vsftpd.conf
cut:查看指定分割的文字 who|cut -b 3,如:遍历文件夹、读取文件的某几行、截取相应的内容
sort:将文本文件内容加以排序,如sort seq,可以去除重复行-u
2、用Shell写过哪些脚本
(1)集群启动、分发脚本
#!/bin/bash
#涉及到启动停止分支
case $1 in
"start"){
#涉及到多台服务器
for i in hadoop102 hadoop103 hadoop104
do
ssh $i "每个集群内需要执行的命令"
done
};;
"stop"){ };;
#表示case块的结束
esac
(2)数仓与MySQL的导入导出sqoop
主要用到sqoop脚本,涉及到
sqoop --连接mysql hadoop102:3306 root qaz123
--hdfs 路径,存在要删除
--query 条件过滤,如"select id, name from 表 创建时间 操作时间的过滤" and 命令
全量:where 1=1
增量:创建时间
新增和变化:创建时间或操作时间
-- 空值处理
-- 一致性问题
(3)数仓内部的导入
如ODS-->DWD,标准的五步
#!/bin/bash
#2:定义变量,项目名及hive绝对目录
hive=/opt/module/hive/bin/hive
APP=gmall
#3:获取时间
#参数非空
if [-n "$1"]; then
do_date=$1
else
#格式化显示
do_date=`date -d "-1 day" + %F`
fi
#4:SQL,会变※
sql="
先写一天的脚本2020-03-10
遇到表,在表前面加上{$APP}.表名;
遇到事件,把时间替换为$do_date
"
#5:执行SQL
$hive -e "$sql"
【大数据面试】【框架】Linux命令、Shell工具、常见Shell脚本(群起脚本、数仓导入)的更多相关文章
- 大数据常用的Linux命令
Linux文件系统基础知识 要想熟练使用命令,就先要熟练掌握Linux文件系统基础知识: 三个路径 当前路径:也叫当前工作目录,就是当前状态下用户所处的位置 相对路径:相对于当前工作目录开始的路径,会 ...
- 77个常用Linux命令和工具
77个常用Linux命令和工具 Linux管理员不能单靠GUI图形界面吃饭.这就是我们编辑这篇最实用Linux命令手册的原因.这个指南是特别为Linux管理员和系统管理员 设计的,汇集了最有用的一些工 ...
- 12.Linux软件安装 (一步一步学习大数据系列之 Linux)
1.如何上传安装包到服务器 有三种方式: 1.1使用图形化工具,如: filezilla 如何使用FileZilla上传和下载文件 1.2使用 sftp 工具: 在 windows下使用CRT 软件 ...
- Linux命令行–更多bash shell命令(转)
4.1.1 探查程序 ps 命令 默认情况下,ps命令只会显示运行在当前控制台下的属于当前用户进程的进程 显示的当前进程的项目 进程号 运行在哪个终端(tty) 进程占用的CPU时间 Linux系统支 ...
- 大数据学习之Linux基础01
大数据学习之Linux基础 01:Linux简介 linux是一种自由和开放源代码的类UNIX操作系统.该操作系统的内核由林纳斯·托瓦兹 在1991年10月5日首次发布.,在加上用户空间的应用程序之后 ...
- Spark 介绍(基于内存计算的大数据并行计算框架)
Spark 介绍(基于内存计算的大数据并行计算框架) Hadoop与Spark 行业广泛使用Hadoop来分析他们的数据集.原因是Hadoop框架基于一个简单的编程模型(MapReduce),它支持 ...
- 《Linux命令、编辑器与shell编程》第三版 学习笔记---002
<Linux命令.编辑器与shell编程>第三版 学习笔记---001 Linux命令.编辑器与shell编程 Shell准备 1.识别Shell类型 echo $0 echo $BAS ...
- 面试系列二:精选大数据面试真题JVM专项-附答案详细解析
公众号(五分钟学大数据)已推出大数据面试系列文章-五分钟小面试,此系列文章将会深入研究各大厂笔面试真题,并根据笔面试题扩展相关的知识点,助力大家都能够成功入职大厂! 大数据笔面试系列文章分为两种类型: ...
- 坐实大数据资源调度框架之王,Yarn为何这么牛
摘要:Yarn的出现伴随着Hadoop的发展,使Hadoop从一个单一的大数据计算引擎,成为大数据的代名词. 本文分享自华为云社区<Yarn为何能坐实资源调度框架之王?>,作者: Java ...
- 大数据学习之Linux进阶02
大数据学习之Linux进阶 1-> 配置IP 1)修改配置文件 vi /sysconfig/network-scripts/ifcfg-eno16777736 2)注释掉dhcp #BOOTPR ...
随机推荐
- Kibana使用仪表盘汇总数据(Dashboard)
仪表板可用于集中管理和分享可视化控件集合.构建一个仪表板用以包含您在本教程中已保存的可视化控件,方法如下: 1.在侧边导航栏点击 Dashboard . 2.点击 Add 显示已保存的可视化控件列表. ...
- 使用python读取京东pdf发票信息导出到excel表格中
代码 #!/usr/bin/env python # -*- coding: utf-8 -*- """ pip install pdfminer3k pip insta ...
- jumpserver 2222端口的使用
可以这样理解: 通过在jumpserver的web界面添加的用户,相应的也有权限通过远程使用命令的方式登陆jumpserver,进行相应的管理,只不过使用的端口是2222端口,不是常见的22端口. 一 ...
- 2. Fluentd事件的生命周期
事件(Event)是Fluentd内部处理流程使用的数据结构,日志记录一旦进入Fluentd便被封装成一个event.Event由三部分组成:tag.time.record. tag: 标识事件的来源 ...
- SVM公式详尽推导,没有思维跳跃。
假定数据集\(T=\{(x_1,y_1),(x_2,y_2),...,(x_n,y_n)\},x_n \in R_k, y_n \in \{1,-1\}\)线性可分,SVM的优化目标是: 优化一个超平 ...
- 把train数据集生成txt(test同理)
import cv2 import numpy as np import os import sys import pickle data_dir = os.path.join("./&qu ...
- .Net Core redis 调用报错 '6000 Redis requests per hour' 解决 6000 此调用限制
问题描述 redis 是一种基于内存,性能高效的 NoSQL 数据库,性能高主要就体现在数据交互耗时较短,能够段时快速的对用户的请求做出反应,所以在业务比较复杂或交互量需求大时,必然会超过 6000次 ...
- Adobe Acrobat Pro 2021 for mac安装教程,完美使用!!!
adobe acrobat是最优秀的PDF编辑软件,有了它用户可以随时随地的进行签署.支持创建PDF.编辑PDF.导出PDF.合并文件等各种管理PDF文件的实用的功能,非常好用,可以说是PDF转换的必 ...
- nrf9160 做modem—— 连接云(接入方式MQTT)
今天测试把nrf9160作为modem的例程Serial LTE Modem程序(后面简称slm),何为做modem,通俗来说就是将nrf9160作为无线模块,主控由其余MCU做,主控通过AT命令控制 ...
- k8s运维之pod排错
k8s运维之pod排错 K8S是一个开源的,用于管理云平台中多个主机上的容器化应用,Kubernetes的目标是让部署容器化变得简单并且高效 K8S的核心优势: 1,基于yaml文件实现容器的自动创建 ...