API
文章平均质量分 75
zdkdchao
这个作者很懒,什么都没留下…
展开
-
java8新特性,方法引用、Optional、函数式
java8新特性,包括方法引用、Optional原创 2021-11-16 09:17:18 · 585 阅读 · 0 评论 -
java-调用linux命令
分为调脚本和直接调用linux的命令。亲测,调脚本100%成功,调命令只有一部分成功,比如调用beeline时,在命令行可以正常执行的,在java中调会报ParseException line 1:0 character '' not supported here (state=42000,code=40000),这个问题暂时没解决,只能封装到脚本中,再用exec方法去调。java调用linux命令的原理就是开启一个子进程,并且是并行的,也就是说,如果代码中前后执行了2个命令,那么这2个是并行执..原创 2020-07-23 19:33:03 · 632 阅读 · 0 评论 -
linux-命令-压缩-gz、tar、zip
Linux 常用的压缩命令有 gzip 和 zip,两种压缩包的结尾不同:zip 压缩的后文件是 *.zip ,而 gzip 压缩后的文件 *.gz相应的解压缩命令则是 gunzip 和 unzipgzip 命令:gzip test.txt它会将文件压缩为文件 test.txt.gz,原来的文件则没有了,解压缩也一样gunzip test.txt.gz它会将文件解压缩为文件 test.txt,原来的文件则没有了,为了保留原有的文件,我们可以加上 -c 选项并利用 linux 的重定向gzip原创 2020-06-08 10:40:36 · 361 阅读 · 0 评论 -
时间戳格式化
须知:1. 时间戳分2种,一种是10位的,只包含年月日时分秒,也就是说,只精确到秒。一种是13位的,包含毫秒。这2种都叫时间戳,并不是只有精确到毫秒的才叫时间戳。10位时间戳就是从1970-01-01到当前的秒数,注意,不是毫秒数,所以需要按毫秒解析时,要 * 100013位时间戳就是从1970-01-01到当前的毫秒数,在java中用Instant对象对应。2. timestamp的格式化串用大写的S来表示毫秒数。S的个数和毫秒的位数严格对应,否则报错。如果规范中要求精确到毫秒,那么给的时间字符串原创 2020-05-25 15:58:11 · 14957 阅读 · 0 评论 -
代码-scala、java
break和continue2者都表示跳出,只是范围不同而已,scala中用breakable{ }表示范围,用break方法来标识在何处跳出。如果breakable{ }把整个循环包裹,表示跳出循环,如果只包裹了里面的某次循环,表示跳出当前次循环import util.control.Breaks._object BreakDemo { def main(args: Array[String]) { breakable { for (i <- 1 to 10) {原创 2020-08-22 08:26:23 · 200 阅读 · 0 评论 -
linux-命令-du
用来查看文件大小参数1. -h以G、M、K的方式展示大小(具体用哪个取决于文件大小是否达到这个量级)2. -d 几层目录,相当于–max-depth(如果用–max-depth,后面的参数要用=连接),0是不包括任何子目录,只查看当前目录;1是包括一级目录usage1. 查看指定目录下指定文件的大小及总大小du -ch *xxx*du -sh .ch和sh的区别就是ch会额外统计一个total......原创 2020-05-18 17:18:24 · 321 阅读 · 0 评论 -
spark-hdfs-自定义OutputFormat
SRC主要就是2个实现类TextOutputFormat和SequenceOutputFormatspark的rdd的saveAsTextFile()方法底层默认调的其实也是TextOutputFormat,这有2个问题:1是无法指定文件名(这个其实不是问题,因为逻辑上只需要指定目录名即可,分布式的情况下一个文件肯定要分成多个部分,给每个部分指定名称无意义)2是无法满足一些个性化需求所以需要自定义OutputFormat的作用就是把内存中一个个的kv变成文件usage1. 继承FileOut原创 2020-05-27 11:33:48 · 979 阅读 · 0 评论 -
scala-集合的API
https://blog.csdn.net/zyp13781913772/article/details/81428862转载 2020-05-13 09:29:14 · 140 阅读 · 0 评论 -
公司业务-etl-EDIP文件解析+添加分割符+转换编码
SRCEDIP叫定长双文件,是用来进行数据迁移的格式。一个表被转换为2个文件,1个flag用来存储表结构。1个压缩的dat.gz用来存储表数据,解压后是个dat文件。flg文件格式如下:编解码想要转换1个文件的编码,必须知道原来的编码。主要就是字符串操作...原创 2020-03-27 23:06:55 · 1728 阅读 · 0 评论 -
字符集+编解码
任何数据在计算机中都是二进制。原创 2020-03-27 23:06:07 · 113 阅读 · 0 评论 -
java-异常体系和try-catch操作
SRC没有tc时,如果程序出现异常,就会直接终止,实际场景中当然不希望因为出个错导致整个程序终止运行。所以可以使用tc增强程序健壮性,即使出了问题,也不至于直接go die。tc在实际业务逻辑中也可以使用,比如截取1个字符串,如果catch到OutOfBounds,说明String不在范围内。一、异常树二、须知1. tryWithResource2. 和finally的执行顺序3. ...原创 2020-03-27 22:53:50 · 94 阅读 · 0 评论 -
java-Stream
SRC是java为了方便数据处理,提供的一种数据处理方式的抽象,借鉴了FP,将数据处理抽象为多个入1出1的函数链。https://www.jianshu.com/p/11c925cdba50操作符Stream操作是惰性执行的,分为中间和终止获取Stream对象的方式List类的集合可以直接.stream()Map,不能直接获取stream,但可以通过ketSet来获取key的流...原创 2020-03-27 22:43:06 · 98 阅读 · 0 评论 -
java-FP
SRC无论FP还是OOP,都是为了解决问题。都需要化简,也就意味着封装,只不过封装的形式不同。FP是将行为封装,将属性抽象为不可变的输入和输出。???FP从使用上来说,可以将一段逻辑(也就是函数)作为输入和输出,形成一个类似递归的嵌套式结构。java将几种常用逻辑抽象为一种特殊接口,用@FunctionalInterface注解来标识。这种接口只有一个抽象方法,涵盖了3种常用的逻辑,每个函...原创 2020-03-27 22:34:16 · 351 阅读 · 1 评论 -
linux-查看文件数量
须知1. grep “^d"表示目录,”^-"表示文件一、查看当前目录下的文件数量(不包含子目录中的文件)ll | grep “^-” | wc -l二、查看当前目录下的文件数量(包含子目录中的文件) 注意:R,代表子目录ls -lR|grep “^-”| wc -l三、查看当前目录下的文件夹目录个数(不包含子目录中的目录),同上述理,如果需要查看子目录的,加上Rls -l|grep......原创 2020-03-27 18:09:38 · 20789 阅读 · 0 评论 -
hive-有用命令
查看一个hive表的总容量db_name=$1table_name=$2hadoop fs -du /user/hive/warehouse/db_name.db/table_name|awk ’ { SUM += $1 } END { print SUM/(102410241024) }’原创 2020-03-17 23:40:04 · 122 阅读 · 0 评论 -
java-BigDecimal,DecimalFormat
文章目录srcBigDecimal的构造器DecimalFormat格式化字符串\#和0examplesrcfloat和double在转换和运算时会损失精度,这在某些场景比如金融是不允许的,所以使用Decimal来封装,既不损失精度,又不会占用很大空间。思路就是把f和d封装成BigDecimal对象,然后计算即可。BigDecimal的构造器BigDecimal(java.math.Bi...原创 2020-03-17 23:25:30 · 307 阅读 · 0 评论 -
java-poi
一、srcHSSF - 提供读写Microsoft Excel格式档案的功能。XSSF - 提供读写Microsoft Excel07之前版本的功能。HWPF - 提供读写Microsoft Word格式档案的功能。HSLF - 提供读写Microsoft PowerPoint格式档案的功能。HDGF - 提供读写Microsoft Visio格式档案的功能。...原创 2020-03-17 15:49:57 · 177 阅读 · 0 评论 -
scala-使用-异常、多行字符串、模式匹配、偏函数、Option
scala的使用原创 2020-03-15 11:14:52 · 2807 阅读 · 0 评论 -
scala-Option
srcscala完全面向对象,本身没有null这个概念,为了跟java整合,才允许java的null出现。scala使用None来描述无这个状态。那么在代码中如何使用呢?涉及到无的操作:方法返回值:UnitNothingNilNoneOptionOption类似于IO流,主要封装动作,Option把非空判断的行为进行了封装。Option本身就是个容器,也有容器接口的一些方法,当...原创 2020-03-14 23:56:39 · 365 阅读 · 0 评论 -
spark-多RDD算子
一、zipdef zip[U](other: RDD[U])(implicit arg0: ClassTag[U]): RDD[(T, U)]zip是拉链的意思,就是将2个完全匹配的RDD合到一起。zip函数用于将两个RDD组合成Key -> Value形式的RDD,左边的元素为key,右边的为value。两个RDD的partition数量以及每个分区的元素数量都相同,否则会抛出异...原创 2020-03-14 15:25:29 · 300 阅读 · 0 评论 -
spark-PairRDD算子
文章目录lookuplookuppairRDD时,输入k,输出v的集合var rdd1 = sc.makeRDD(Array(("A",0),("A",2),("B",1),("B",2),("C",1)))rdd1.lookup("A") //Seq[Int] = WrappedArray(0, 2)rdd1.lookup("B") //Seq[Int] = WrappedArray...原创 2020-03-14 14:14:25 · 98 阅读 · 0 评论 -
spark-单RDD算子-聚合算子
spark-单RDD聚合算子aggregatefold原创 2020-03-14 23:41:09 · 1005 阅读 · 0 评论 -
hive-创建表、添加、导出数据
hive原创 2020-03-13 21:59:59 · 698 阅读 · 0 评论 -
hive-修改表结构
自定义标题http://www.manongjc.com/article/57670.html一、列的CRUD1. 增加列2. 改变列名/类型/位置/注释3. 删除列二、分区1. 新增分区2. 重命名(移动)分区example3. 表之间移动分区4. 恢复分区(加载分区文件)(MSCKREPAIR TABLE)example:5. 删除分区example三、表1. 重命名2. 修改表的`TBLPR...原创 2020-03-13 21:24:41 · 5659 阅读 · 1 评论 -
java-String.split(regex)
一、srcsplit是极为常用的方法,注意的是,入参不是string,是正则。在正则的规则中,* ^ | 等符号在正则表达式中属于一种有特殊含义的字符,如果使用此种字符作为分隔符,必须使用转义符即\或\\加以转义。https://www.cnblogs.com/xiaoxiaohui2015/p/5838674.html二、usage特殊情况有 * ^ : | . \。分割时需要在前面.........原创 2020-03-13 22:10:25 · 1409 阅读 · 1 评论 -
df的API
dataframe的API...原创 2020-03-13 22:12:16 · 325 阅读 · 0 评论 -
java-jdk8的时间日期API
一、时间处理会遇到的问题?时间的格式化,也就是同String的转换时间的国际化,时区的设置时间戳的转换时间的计算时间和时间差2个时间的时间差...原创 2020-03-02 00:13:02 · 450 阅读 · 0 评论 -
spark-共享变量
一、分布式程序中必然存在资源共享问题。分为2种,能互动的和不能互动的。1.https://blog.csdn.net/Android_xue/article/details/797804632.spark各部分代码分别在哪执行?3.把1个task1个的副本变为1个executor1个4.note不能将一个RDD使用广播变量广播出去,因为RDD是不存储数据的。可以将RDD的结果广播出去...原创 2020-10-07 21:50:06 · 427 阅读 · 0 评论 -
Java-IO
重要的IO原创 2020-03-14 10:32:16 · 112 阅读 · 0 评论 -
scala-容器
一、scala的容器设计1.有2个维度,是否可变,类型原创 2020-03-12 14:08:22 · 142 阅读 · 0 评论 -
hdfs-javaAPI
hdfs-javaAPIdeleterename原创 2020-02-13 18:16:52 · 424 阅读 · 0 评论 -
String/format + scala的格式化字符串
一、src1.作用:以特殊的格式化字符串来给指定字符串或日期对象转换格式2.两个重载:format(String format, Object … args) 格式化后的新字符串使用本地默认的语言环境。format(Local l, String format, Pbject … args)日期、金钱等格式化标识在不同国家地区有不同的表达方式l为格式化过程中要应用的语言环境。如果l............原创 2020-02-12 16:25:36 · 3134 阅读 · 0 评论 -
String/基本字符操作
加减乘除、切分排序原创 2020-03-17 15:43:58 · 175 阅读 · 0 评论