work env

目录:
一、关于Git
二、关于PyCharm
三、关于 Hive
四、关于 Impala
五、关于 Shell

一、关于Git

1.查看所有分支
 git branch -a
查看当前分支 git branch 
2.切换分支
git checkout 分支名

SSH密钥实现免密登陆后开始使用:
(1)生成SSH密钥
打开终端,使用密码登陆,输入 ssh-keygen -t rsa会提示密钥存放路径,一般存放在默认路径,直接回车即可。
(2)实现免密登陆:在密钥路径下复制公钥文件后,粘贴并改名为 authorized_keys。
(3)安装好git后,在命令行或终端中使用下面的命令可以设置git自己的名字和电子邮件。这是因为Git是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和Email地址。

git config --global user.name “name”
git config --global user.email “email_address”
注意git config命令的–global参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。
配置好之后可以使用 git config -l 查看配置。

(4)将公钥复制到github 的设置的ssh key信息中,就可以开始 git clone了。

二、关于PyCharm
因为工作中两个项目使用的python版本号不一样,下载了3.7.6的python 和 2.7.x的(x越大越好,是新的意思)。
安装pyspark 曲折路记录:
1、将python 路径和其下的Scripts路径添加到环境变量-系统变量中。
2、安装pyspark,-i 指定镜像, 默认安装的是最新的,如果要指定版本需要 pip install pyspark==3.0.0 ,默认会安装到python 路径。

pip install pyspark -i https://pypi.tuna.tsinghua.edu.cn/simple

3、列出已安装的包,可看到 pyspark (3.0.0) :pip list
清华大学开源软件镜像站
pypi网站可搜索包,如 https://pypi.org/project/pyspark/
4、这时pycharm 的 project interpreter 里Python 的package 列表就有 pyspark了。如果没有的话,需要设置指定一下python解析器,勾选 inherit global site-packages。
在这里插入图片描述
PyCharm和JDK安装与配置(windows): http://www.mamicode.com/info-detail-2959338.html
原本warning 位置是有下划线的,如何取消,effects 取消勾选即可。
在这里插入图片描述
三、关于 Hive
1、给hive表新增一列:alter table tablename add columns(columnname string) ;
2、Hive 不需要dual表也可以做函数功能测试。
3、建表时注释信息要放在分区信息前面。
4、查看表大小
hive内部表: hdfs dfs -du -h hdfs路径
外部表通过上面命令是查不出来的,要通过:show partitions 表名
5、hive的not in里面不能放 null,改为 is not null and …
6、数据倾斜情况场景:1009个任务有1个没完成。要先去看看关联字段是否存在大量无意义数据,像我遇到过大量为null值和’'值的情况,就需要过滤掉。
在这里插入图片描述

四、关于 Impala
1、查看impala版本号: impala-shell -v
在这里插入图片描述
2、查看 sql 语句的执行计划: explain sql语句;
3、增量刷新指令: refresh dbname.tablename。刷新某一张表的元数据,主要用于刷新 hive 当中数据表里面的数据改变的情况。
指令意义:Impala数据更新了会自动同步到hive,hive更新了不会自动同步到Impala。
4、全量刷新指令:invalidate metadata。性能消耗较大,主要用于 hive 当中新建数据库或者数据库表的时候来进行刷新。

五、关于 Shell
1、[ -z STRING ] “STRING” 的长度为零则为真。
2、多行注释:

:<<!
# 注释内容块

3、如何执行shell脚本,git路径下的bin 有sh命令,添加到环境变量就可以cmd使用了。
4、查看文件信息 ll *文件名*
5、shell脚本里的hql语句含注释会报错。可以将sql 放进sql 文件中,注释问题就解决了,然后在shell中调用运行sql文件命令。

${
    
    beeline_cmd} \
        --hivevar var1=${
    
    rename1} \
        --其它sql中会用到的变量(像函数入参一样)
        --hivevar var2=${
    
    rename2} \
        -f sql文件.sql

sql 文件中如何使用这些入参? 字符串的效果通过 ‘${var1}’ ,非字符串的效果 ${var2} 放进sql中即可。

6、新的shell文件上传到服务器时,记得要将文档格式转换为Unix(LF) ,不然会报\r的错。

  • PyCharm的方式:
    在这里插入图片描述
  • Notepad++的方式:
    在这里插入图片描述
    7、给变量显示赋值,"your_name="runoob.com",两边的等号不能有空格,不然会报 command not found 错误。变量的使用: ${变量名},推荐给所有变量加上花括号,这是个好的编程习惯。
    如何删除变量? unset variable_name

8、字符串的使用规则:推荐使用双引号。

  • 单引号中的变量也要用单引号围住才有效。
  • 双引号中的变量用不用双引号围住都有效,如果需要双引号有效,可加转义字符。(单引号字符串中不能出现转义字符)
filename="new_filename"
echo "${filename}"
echo "concat_${filename}_end"
echo "concat_"${
    
    filename}"_end"
echo "concat_\"${
    
    filename}\"_end"

echo 'concat_'${
    
    filename}'_end'
echo 'concat_\''

在这里插入图片描述
End: 感谢我的导师广超,让我这几周上班有不少所得,让我有动力试试看看这周末能不能把缺了三次的博客补上。

猜你喜欢

转载自blog.csdn.net/AnlaGodness/article/details/108201604
env