10 bluexue0724

尚未进行身份认证

我要认证

每天进步一点点总会有所成功

等级
TA的排名 5k+

Spark提交命令和参数调优

参数意义和参考值:1.num-executors  线程数:一般设置在50-100之间,必须设置,不然默认启动的executor非常少,不能充分利用集群资源,运行速度慢2.executor-memory 线程内存:参考值4g-8g,num-executor乘以executor-memory不能超过队列最大内存,申请的资源最好不要超过最大内存的1/3-1/23.executor-cores 线程CPU core数量:core越多,task线程就能快速的分配,参考值2-4,num-execu.

2020-05-29 16:35:45

稍微整理一下 scala中的:: , +:, :+, :::, +++, 等操作

面试老是会问一些简单的操作 总是不会 总结一下package test/** * scala中的:: , +:, :+, :::, +++, 等操作; */object listTest { def main(args: Array[String]): Unit = { val list = List(1,2,3) // :: 用于的是向队列的头部追加数据,产生新的列表, x::list,x就会添加到list的头部 println(4 :: list) //输出

2020-05-12 16:16:47

数据仓库之拉链表,流水表,全量表,增量表

全量表:每天的所有的最新状态的数据,增量表:每天的新增数据,增量数据是上次导出之后的新数据。拉链表:维护历史状态,以及最新状态数据的一种表,拉链表根据拉链粒度的不同,实际上相当于快照,只不过做了优化,去除了一部分不变的记录而已,通过拉链表可以很方便的还原出拉链时点的客户记录。流水表: 对于表的每一个修改都会记录,可以用于反映实际记录的变更。拉链表通常是对账户信息的历史变动进行处理保留的...

2020-04-14 18:04:48

spark设置日志输出级别

Spark 通过 spark-submit 设置日志级别(对我好像没有起作用但是记录一下吧)这里的log4j配置可以是 log4j.properties 或者 log4j.xml ,没有限制spark-submit --conf "spark.driver.extraJavaOptions=-Dlog4j.configuration=file:log4j.properties"配置示例...

2020-01-17 18:32:06

用hive命令行动态往分区表里插入数据

set hive.exec.dynamic.partition=true; -- 打开动态分区sethive.exec.max.dynamic.partitions.pernode=1000;set hive.exec.dynamic.partition.mode=nonstrict;-- 设置为非严格模式这个跟第一个是必须的insert overwrite table app_bigdat...

2020-01-20 15:08:39

doris 部署总结

最近调研doris 吧一些安装和部署的细节做一下记录吧 以后可以用:首先是安装 建议用docker 11的版本在Linus安装一直都有问题 在docker就可以成功安装:具体步骤:1. pull doris dev docker imagesudo docker pull apachedoris/doris-dev:build-env-1.1 2. dowload doris-0.1...

2020-02-27 13:17:34

学习怎么Hive表导出成csv文件

命令hive -e "set hive.cli.print.header=true; -- 将表头输出 select * from data_table where some_query_conditions" | sed 's/[\t]/,/g' > ttt.csvset hive.cli.print.header=true将表头输出;sed ‘s/[\t]/,/g’ ...

2020-03-16 22:35:04

如何限制Spark作业失败的重试次数?

前言最近有个spark程序因为资源不足以及其他原因会在第一次提交时候失败,然后又会不断提交,导致过多的系统资源被无效占用。因此想限制Spark作业失败的重试次数,如果第一次失败,就让作业直接失败,那么该具体该如何实现呢?解决方法首先查看了spark的属性配置,发现我们使用spark.yarn.maxAppAttempts属性在提交程序时限制其重试次数,如:spark-submit --...

2020-01-11 14:13:37

hive小文件处理方法

hive方法处理set hive.merge.mapfiles=true; -- map only job 结束是合并小文件set hive.merge.mapredfiles=true; -- 合并reduce输出的小文件set hive.merge.smallfiles.avgsize=256000000; -- 当输出文件平均大小小于该值,启动新job合并文件set hive.mer...

2019-12-20 10:41:51

Hive 开窗函数 汇总

近期用开窗函数比较多老是用不好 ,这里做一下汇总

2019-08-18 16:35:54

安装pyspark

pip install pyspark 太慢切换镜像源pypi 镜像使用帮助pypi 镜像每 5 分钟同步一次。临时使用pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package注意,simple 不能少, 是 https 而不是 http设为默认升级 pip 到最新的版本 (>=10.0...

2019-08-11 00:15:25

hive拆分json数组取出各个值的第二层

select id,secondLevel item,indexValue scorefrom (select id,split(regexp_replace(regexp_extract(detail,'^\\[(.+)\\]$',1),'\\}]}\\,\\{', '\\}]}\\|\\|\\{'),'\\|\\|') as L1select * from datatable....

2019-08-10 11:33:18

Hive Hive性能调优总结

一、Fetch抓取1、理论分析Fetch抓取是指,Hive中对某些情况的查询可以不必使用MapReduce计算。例如:SELECT * FROM employees;在这种情况下,Hive可以简单地读取employee对应的存储目录下的文件,然后输出查询结果到控制台。在hive-default.xml.template文件中hive.fetch.task.conversion默认是mo...

2019-05-30 20:32:43

Impala中的invalidate metadata和refresh

前言Impala采用了比较奇葩的多个impalad同时提供服务的方式,并且它会由catalogd缓存全部元数据,再通过statestored完成每一次的元数据的更新到impalad节点上,Impala集群会缓存全部的元数据,这种缓存机制就导致通过其他手段更新元数据或者数据对于Impala是无感知的,例如通过hive建表,直接拷贝新的数据到HDFS上等,Impala提供了两种机制来实现元数据的更...

2019-03-13 15:14:04

HDFS文件误删除之恢复

启动HDFS的垃圾回收站为了防止误删,一般默认是关闭的,需要我们自己配置文件打开。修改core-site.xml <property> <name>fs.trash.interval</name> <value>1440</value> ...

2019-03-13 11:24:37

python环境安装 hive支持步骤

sudo yum install gcc gcc-c++ python-virtualenv cyrus-sasl-develpip install pyhivepip install thriftpip install saslpip install thrift-sasl

2019-02-21 16:35:23

linux查找文件中含某字符串的行数

查看某个文件中包含某个字符串的行数 sudo find analytics_2019-02-13.csv.51 | xargs cat | grep .*bookorder.* |wc -l 例子说明:统计含"bookorder"字符串的总行数查看某个文件中不包含某个字符串的行数find analytics_2019-02-13.csv.51 | xargs cat | grep ...

2019-02-14 14:56:50

比较大的文件 不想删除文件 只是想清空文件内容 怎么做

方法有三种第一种:cp /dev/null nohup.out 有时候 cp要用\cp 因为cp 是cp -i 的缩写 \ 作用也是取消cp的别名。第二种:cat /dev/null > nohup.out第三种 :>nohup.out #相当于echo ‘’ >nohup.out...

2019-01-29 15:35:42

vim 中如何在每行行首或行尾插入指定字符串

操作语法:行首 :%s/^/your_word/行尾 :%s/$/your_word/按键操作:注释:ctrl+v 进入列编辑模式,向下或向上移动光标,把需要注释的行的开头标记起来,然后按大写的I,再插入注释符,比如”#”,再按Esc,就会全部注释了。删除:先按v,进入visual模式,横向选中列的个数(如”#”注释符号,需要选中两列),再按Esc,再按ctrl+v 进入列编辑模式...

2019-01-21 17:52:34

MySQLdb库和pymysql库的区别

MySQLdb只支持Python2.,还不支持3.可以用PyMySQL代替。安装方法:pip install PyMySQL然后在需要的项目中,把 init.py中添加两行:import pymysqlpymysql.install_as_MySQLdb()就可以用 import MySQLdb了。其他的方法与MySQLdb一样。...

2019-01-21 17:49:05

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。