Java设计模式 对类来说,一个类应该只负责一项职责。如类A负责两个不同的职责:职责1,职责2。当职责1需求变更而改变A时,可能造成职责2执行错误,所以需要将类A的粒度分解为A1,A2客户端不应该依赖它不需要的接口,即一个类对另一个类的依赖应该建立在最小的接口上。
IDEA中Maven报错:Failed to read artifact descriptor for解决方案 1、 打开项目后,在Intellij 右侧有个Maven projects,点开后,有个Lifecycle,再点开,可以看到clean , validate, compile, ….,双击clean,这里的project是我们的项目实际的名字。2、 在同样的地方(Lifecycle)里找到install, 双击install,这里的project同样是我们的具体项目的名字,这个过程比较久,如果有遇到哪个jar包不能下载的情况,可以手动将其放到本地的maven目录下。.”消失,需要的依赖开始下载。
SQL执行顺序join在where前面 原本意图是取a表的昨日分区数据和b表的昨日分区数据进行join,但是发现加上and b.dt = '${daily}'的条件后就取不到在a表中存在的数据了。现在子查询中将b表的昨日分区查询出来,再和a表join。可以看到正常查询出a表中的数据了。
Flink内存调优篇-广告实时统计的优化 布隆过滤器本质上是一个二进制向量(位数组)和一系列随机映射函数(哈希函数),用于判断数据一定不存在,或者可能存在。使用布隆过滤器去重,首先准备长度为M的位数组和K个哈希函数,对于到来的数据进行K次哈希,并将位数组中hash值对应的位置修改为1。举例说明,现有4条所需处理数据(ZFB,WX,DY,ZFB),准备以下位数组以及2个哈希函数位数组第一条数据ZFB到来,经过两次哈希,分别将位数组哈希对应位置由0修改为1第二条数据WX到来,经过两次哈希,分别将位数组哈希对应位置由0修改为1。
正则表达式基础 正则表达式描述了一种字符串匹配的模式,也称规则表达式对字符串做这四件事 : 替换|分割|匹配|提取 首选正则\d 一个任意数字 0~9\D 一个非数字 除了0~9\w 一个字母 az|AZ|0~9\W 一个非字母\s 一个空格\S 一个非空格[] 字符选择器 只匹配一个“字符” [a-c]:a到c之间任意一个字符 [ac]:a和c之间任意一个字符{} 范围修饰符(修饰前面一个符号出现了多少次) \d{1,2}:最多出现2个,最少出现1个() 字符串选择器 分组 (com|org)? 修饰符(
clickhouse对比两台机器数据 select concat(database,'.',name),total_rows from system.tables where engine='MergeTree' and database != 'system' and total_rows!=0 order by database,name;两台机器分别跑,导出数据后对比