06 2020 档案
摘要:maven的pom文件中的依赖jar包可能因为网络问题, 无法完整下载, 导致依赖无法加载, 需要先对其进行清理. 手动清理: 删除maven仓库中的相应文件夹, 或者使用一下脚本, 批量删除. @echo off rem set REPOSITORY_PATH=E:\develop\repository rem for /f "delims=" %%i in ('dir /b /s "%REP...
阅读全文
摘要:启动ResouceManager不成功, 查看日志文件: Failed on local exception: com.google.protobuf.InvalidProtocolBufferException: Protocol message end-group tag did not mat
阅读全文
摘要:打开 https://search.maven.org/ 可以将该网址加入到chrome的搜索框:Chrome浏览器如何快速切换搜索引擎 一. 已知全类名 输入fc:org.apache.poi.xssf.usermodel.XSSFWorkbook (注:fc 代表 full class) 二. 已知类名 输入c:类名(注:c 代表 class) 三. 已知 Group ID...
阅读全文
摘要:pox.xml文件 4.0.0 org.scala-lang scala-library 2.11.8 org.apache.kafka kafka-clients 1.0....
阅读全文
摘要:flume版本: 1.5.2 source:netcat 查看flume监听端口是否打开: netstat -tunlp | grep 44444 # Name the components on this agent a1.sources = r1 a1.sinks = k1 a1.channels = c1 # Describe/configure the source a1....
阅读全文
摘要:ps -ef | awk '/进程名/ && !/awk/{print $2}'| xargs kill -9 && !/awk/ : 并且不匹配"awk" {print $2}: 打印按空格分割的第二个字符串 xargs: kill不支持管道, 是使用xargs读取数据
阅读全文
摘要:如果没有添加以下依赖, 那么maven则无法编译scala文件 org.scala-lang scala-library 2.11.8 net.alchim31.maven ...
阅读全文
摘要:概述 开窗函数的理解参见: 理解hive中的开窗函数 over()中除了可以使用partition by选择分组字段外, 还有以下函数 order by 排序 指定聚合行的范围, 配合order by使用 current row: 当前行 n PRECEDING: 往前 n 行数据 n FOLLOWING: 往后 n 行数据 UNBOUNDED PRECEDING 表示从前面的起点 UN...
阅读全文
摘要:开窗函数简单介绍 与聚合函数一样,开窗函数也是需要对行进行分组, 然后使用聚合算子. 可是它不像普通聚合函数那样每组只返回一个值,而是每一行返回一个窗口的聚合结果. 举例说明 数据如下 hive (default)> select * from over_test; open_test.name o
阅读全文
摘要:端到端一致性: exactly-once传输过程要保证exactly-once, 需要内部能够实现状态保存, 当下游保存失败时, 能够更加保存的历史状态再次提交数据.而下游接受数据, 需要具备去重能力. 去重有两种方式:幂等写入, 事务写入内部: 支持checkpoint或者状态保存下一级: 数据不会被重复写入幂等写入根据key去重, 比如k-v数据库: hbase, redis事务写入能够在失败...
阅读全文
摘要:SparkSQL & Spark on Hive & Hive on SparkSpark On Hive, 将Hive做为数据库, 获得表数据后, 使用Spark SQL对表操作.Hive On Spark, 将Hive的计算引擎替换Spark RDD操作.
阅读全文
摘要:转载: hive常用的日期函数 ## 当前日期和时间 SELECT current_timestamp(); -- 2018-04-28 11:46:03.136 ## 获取当前日期,当前是 2018-04-28 SELECT current_date; OR SELECT current_date(); -- 2018-04-28 ## 获取unix系统下的时间戳 SELECT UNIX_...
阅读全文
摘要:KeyedSteam可以调用process方法, 该方法可以接受一个KeyedProcessFunction类型的参数. KeyedProcessFunction类型的上层父类是RichFunction, 对分流后每一个元素调用一次KeyedProcessFunction中的elementProcess方法,可以通过Context调用timeServier, 注册定时器, 获得当前水位线...
阅读全文
摘要:概述 过程: 新建初始表, 增加开始时间, 结束时间, 两个字段 新建临时表, 包含开始时间, 与结束时间 修改初始表(旧表)中变化数据对应的结束时间后, 将初始表(旧表)数据插入到临时表中, 之后UNION ALL 当天的新增与变化数据. 将临时表覆盖初始表(或旧表)的数据 核心是生成临时表的两步: 只要修改旧表中变化数据的日期(当天日期-1) 然后UNION ALL 当天变化和新...
阅读全文
摘要:使用set去重的问题: 只要用到set就需要完整的数据集, 大量数据会导致OOM 大数据去重的唯一解决方案是布隆过滤器 [详解布隆过滤器的原理]( https://zhuanlan.zhihu.com/p/43263751) 计算bloom filter误判率
阅读全文
摘要:推荐系统的分类根据不同分类原则可以对推荐系统进行分类.根据实时性分类:离线推荐实时推荐根据是否个性化分类基于统计推荐(热门推荐, 每个用户的推荐内容一样)基于个性化推荐根据原则分类基于相似性的推荐根据相似的人, 或内容进行推荐基于知识的推荐事先设定推荐规则基于模型的推荐通过机器学习发掘规则, 进行推荐根据数据源分类基于人口统计学的推荐用户数据, 一般难以获取基于内容的推荐基于协同过滤的推荐(用户与...
阅读全文
摘要:resources文件夹中的文件不会经过编译, 但是会和编译后的字节码文件打包到jar包中. 获取resources文件夹中的文件的路径方法: String filePath = this.getClass().getClassLoader().getResource("文件名").getPath();
阅读全文
摘要:在flink中设置事件时间时需要将时间的表示转换为毫秒 如果不需要转换 def main(args: Array[String]): Unit = { // ... env.setStreamTimeCharacteristic(TimeCharacteristic.EventTime) // 将时间特性设置为事件时间 env.setParallelism(1) ...
阅读全文
摘要:REDIS缓存穿透,缓存击穿,缓存雪崩原因+解决方案 - 大码哥 - 博客园 https://www.cnblogs.com/xichji/p/11286443.html
阅读全文
摘要:fastjson虽然快但常常出现bug.
阅读全文
摘要:例如在scala中的oject写个方法返回一个字符串. 该方法在java代码中使用. 好处: scala支持多行字符, 以及字符串插值 Scala和Java方法的相互调用https://blog.csdn.net/u010398771/article/details/78885009
阅读全文
摘要:缓存的作用, 避免行动算子导致之前的转换算子重复计算(尤其是之前的转换算子中存在副作用) SparkCache的几点思考https://blog.csdn.net/qq_27639777/article/details/82319560
阅读全文
摘要:They are actually different with regards to where you can use them. A.class works at compile time while a.getClass() requires an instance of type A and works at runtime. The .class Syntax...
阅读全文
摘要:网上相关文章较少, 得到了一些结论:1 . 无法满足数据仓库调度对于数据体系依赖分析及元数据管理相关要求,故不能作为数据仓库的主要使用方式.2. hbase主要海量数据的存储,hive比较适合数据仓库分析相关大数据时代的争议:Spark 能替代 Hive 吗?
阅读全文
摘要:rdd.mapPartitions与Dstream.transform需要返回值RDD, 是转换算子(存在重复计算的问题)rdd.foreachPartion与Dstream.foreachRDD不需要返回值, 是行动算子注意:如果没有缓存, 没调用一次行动算子, 都会对涉及到的转换算子计算一次.
阅读全文