随笔分类 - 大数据
摘要:一、窗口函数 聚合函数: sum() min() max() avg() 排序函数: rank() dens_rank() row_number() ntile() 统计比较函数: lead() lag() first_value() 二、窗口大小 partition by order by 三、窗
阅读全文
摘要:思路:使用正则替换json数组内部json串之间的逗号。"},{" > "}|{",再使用炸裂函数lateral view explod(split(col,"|"))将列转行,最后使用get_json_object()单独处理每个展开行的数据。 SELECT explode(split( rege
阅读全文
摘要:大数据在进行ETL过程中,为了避免因为源、目标表字段因为数据类型不一致造成抽数失败,所以在目标表一般都会将字段设置成string类型,后续数据同步过来后再进行类型转换。 以ARRAY类型字段举例: 通过正则将字符串左右两边的中括号[]进行去除 explode(split(REGEXP_REPLACE
阅读全文
摘要:【问题】org.apache.spark.shuffle.FetchFailedException: Connection from /172.xx.xx.xx:port closed。导致任务耗时较长。 【排查方法】查看磁盘当时使用情况
阅读全文
摘要:一、日期 TRUNC函数为指定元素而截去的日期值。 其具体的语法格式如下: TRUNC(date[,fmt]) 其中:date 一个日期值 fmt 日期格式,该日期将由指定的元素格式所截去。忽略它则由最近的日期截去 如果当日日期是:2011-3-18 select trunc(sysdate) fr
阅读全文
摘要:hive的分区排序 需求:对插入的数据分组,并且排序 案例实操: (1)先按照部门编号分区,再按照员工编号降序排序。 hive (default)> set mapreduce.job.reduces=3; hive (default)> insert overwrite local directo
阅读全文
摘要:flink1.11添加水位线 object UpdateWindowResultWithLateEvent { def main(args: Array[String]): Unit = { val env = StreamExecutionEnvironment.getExecutionEnvir
阅读全文
摘要:1.向JDBC读数据 object SparkSQL02_Datasource { def main(args: Array[String]): Unit = { //创建上下文环境配置对象 val conf: SparkConf = new SparkConf().setMaster("local
阅读全文
摘要:数据源test.json {"username": "zhangsan","age": 20} {"username": "lisi","age": 18} {"username": "wangwu","age": 16} 强类型及弱类型 DateFrame是弱类型,意思是数据只有二维结构,没有数据
阅读全文
摘要:datax自带的jdbc连接工具mysql-connector-java-5.1.34.jar自带bug,同步json数据时,会将中文转换为乱码,需要替换为较新版本,这里我替换为mysql-connector-java-5.1.49.jar,事情完美解决。 json数据中文乱码问题与useUnico
阅读全文
摘要:一、RDD概述 1.1 RDD叫做弹性分布式数据集,是spark中最基本的抽象数据。它代表一个弹性的、不可变、可分区、里面的元素可并行计算的集合。 1)弹性: 存储的弹性:内存与磁盘的自动切换 容错的弹性:数据丢失可以自动恢复 计算的弹性:计算出容错机制 分片的弹性:可根据需要重新分片 2)分布式
阅读全文
摘要:1.默认分区 setMaster("local"):采用的是默认值,核数1 setMaster("local[*]"):最大分区数与物理机cpu核数相同,最小值为2,具体分区数量需要计算 2.从不同位置创建rdd,分区数量 -从集合中创建rdd 取决于分配给应用的cpu核数 -从外部文件中创建rdd
阅读全文
摘要:一、Local模式:在本地部署单个Spark服务 Local模式就是运行在一台计算机上的模式,通常就是用于在本机上练手和测试。 二、Standalone模式:Spark自带的任务调度模式。(国内常用) Standalone模式是Spark自带的资源调动引擎,构建一个由Master + Slave构成
阅读全文