clickhouse如何删除数据库和创建数据库以及分布式DDL创建数据库

原创 2021-02-25 17:20 阅读(10)次
[秒懂学习ClickHouse,请移步《ClickHouse原理解析与应用实践》](https://union-click.jd.com/jdc?e=&p=AyIGZRprFQEbDlIZXRQyVlgNRQQlW1dCFFlQCxxKQgFHRE5XDVULR0UVARsOUhldFB1LQglGa2F2CHUWYTpSYmZXF0wjfQB2QUtrKFMOHjdVE14UCxUAVhxfJQITBlUTUhYAFgRlK1sUMkRpVRpaFAMTAlQfWCUAEwZXGF0WAxcDZRtcFAQaAFYSWxECEgNlHFscMklXFlMQXVkiN1UYUhwFEAFUK1...

图片的base64字符转成BufferedImage

原创 2021-02-23 17:43 阅读(9)次
图片的base64字符转成BufferedImage 代码如下: ```java import javax.imageio.ImageIO; import java.awt.image.BufferedImage; import java.io.ByteArrayInputStream; import java.io.IOException; import java.util.Base64; import java.util.Base64.Decoder; public class ImageUtils { /** * base64 编码转换为 ...

java使用BufferedImage放大或缩小图片

原创 2021-02-23 11:32 阅读(16)次
BufferedImage可以用来简单编辑图片:包括裁剪、放大、缩小等。 下面贴的是利用BufferedImage做图片放大或缩小代码: ```java String imageBase64 = "xxxxxx";//图片base64字符串 BufferedImage image = ImageUtils.base64ToBufferedImage(imageBase64); int width = image.getWidth(); int height = image.getHe...

java使用guava cache实现本地缓存

原创 2021-02-04 15:39 阅读(48)次
在高并发的场景中我们不希望所有请求都打到数据库中,以免压垮数据库,这时我们就可能会使用本地缓存来实现解决并发性能问题,当然我们也可以选择redis来实现,但redis有时并发也并没有那么快。于是本地缓存就是我们的唯一救命手段了。 Guava的cache是线程安全的,是本地缓存的不二之选,默认情况下缓存过期是依赖于访问判断时间过期和数量限制过期。 我们再也不用自己手写一个基于ConcurrentHashMap的本地缓存了 #### maven引入guava包 ```html com.google.guava guava 18.0 ...

java stream List转Map与List转List与Map转List

原创 2021-02-03 17:26 阅读(43)次
我们写代码时经常会遇到List转Map或List转List,Map转List,看到我这标题有没有要晕(我在说什么??转来转去)。之前没有用stream的时候,都是用for循环转换,现在jdk8提供流式处理,性能稍快,还方便。 下面记录一下代码,免得自己老是不记得如果编写stream. #### List转Map ```java Map tgMap = tgList.stream().collect(Collectors.toMap(BazTgTO::getTgId, n -> n)); ``` #### Map转List ```java list = dbFilterM...

es聚合之实现日期按周一到周日的聚合统计

原创 2021-02-02 13:40 阅读(95)次
#### 前要说明 由于业务要查看日志,按周一到周天展示日志统计量 ![](http://img.classinstance.cn/20210202/1612244338577.jpg) 我们数据是存储在es中,找了半天聚合函数,发现可以用脚本定义周一到周日。 这里就需要用到es中的日期类org.elasticsearch.script.JodaCompatibleZonedDateTime 它其中就提供了一个函数getDayOfWeek()获取一周星期几对应的数值,这个函数刚好可以实现我们的需求。 #### getDayOfWeek函数的使用 我们先用script_fields...

mybatis一条语句实现一对一,一对多查询

原创 2021-01-26 14:56 阅读(44)次
有时我们要查询多张子表,或关联子表查询,如查询用户信息时,想要带出部门信息,正常使用mybatis要写两条语句,一个查询用户信息,一个查询部门信息,那么使用mybatis如何一条语句做到查询出多个对象信息呢? ##### 参考如下文章 [https://blog.csdn.net/qq_44066201/article/details/99656030](https://blog.csdn.net/qq_44066201/article/details/99656030 "https://blog.csdn.net/qq_44066201/article/details/99656030"...

java父类转子类报错?怎么办?如何父类转子类

原创 2021-01-21 15:01 阅读(48)次
我们java程序员经常会用到子类继承父类,在开发过程中就会遇到子类转父类,父类转子类的问题。 子类转父类不会报错,但父类转子类强转是不会报错的,但运行后就报错了,代码如下: public class UserInfo { private String userName; public UserInfo() { } public String getUserName() { return userName; } public void setUs...

CF由于网络原因连接服务器失败请重试 1033_10136

原创 2021-01-18 00:34 阅读(223)次
今天好不容易叫上以前朋友上CF玩几把游戏,兴致勃勃打开游戏,两人一起组队打排位,我游戏一进去就掉出来,一直弹出错误:由于网络原因连接服务器失败请重试 1033_10136。试了好多次都这样,就是进不去游戏。问了我朋友,他们都能进,就我不行。 错误如下图1: ![](http://img.classinstance.cn/20210118/1610899663050.jpg) # 解决过程 于是我怀疑是游戏出了问题,点CF的修复游戏一直不行,又重启电脑又重启游戏还是不行。 图2: ![](http://img.classinstance.cn/20210118/16108998521...

原生js如何判断PC端还是手机端

转载 2021-01-15 22:47 阅读(54)次
由于我的博客要判断用户或者说访客是手机端还是pc端访问,我又不能用bootstrap的布局,由是找了下如何实现,这里转载一下别人的方案。 ```javascript /** * 判断访问类型是PC端还是手机端 * 返回ture为手机端 */ function isMobile() { var userAgentInfo = navigator.userAgent; var mobileAgents = [ "Android", "iPhone", "SymbianOS", "Windows Phone", "iPad","iPod"]; ...
js

mybatis设置全局变量

原创 2020-12-29 15:19 阅读(144)次
clickhouse在分布式子查询中会将语句发送到多个分片执行,如果语句中的表前不写上库名,查询时会报在default库中找不到表,所以我们需要给每个clickhouse的查询中都写上库名,这样才能正常执行。但库名写死在语句中并不优雅,万一库名修改或测试环境的库名不同,我们开发要将这么多查询语句都要修改,不得累到死,于是就要将clickhouse库名进行配置到公共变量,并在mybatis中获取。下面分享下如何在mybatis设置和全局变量。先要spring boot配置文件中定义需要设置的全局配置,然后在clickhouse的mybatis sessionFactory中设置全局变量,这样my...

java数组转list

原创 2020-12-16 17:54 阅读(98)次
java中数组如何转list或者说ArrayList,每次码代码时,遇到这个问题都要想一下,这里给自己记录下,免得每次都跳坑。数组转list,有两种方法,代码如下: //方法一 List<String> lista = Arrays.asList(split); //方法二 List<String> listb = new ArrayList<>(split.length); Collectio...

druid执行clickhouse报错:sql injection violation, dbType clickhouse , druid-version 1.2.2, syntax error

原创 2020-12-15 11:45 阅读(461)次
今天遇到一个druid不支持clickhouse的问题,druid执行clickhouse报错:sql injection violation, dbType clickhouse , druid-version 1.2.2, syntax error错误如下: Caused by: java.sql.SQLException: sql injection violation, dbType clickhouse, , druid-version 1.2.2, syntax error: syntax error, error in :'icle r where first_appear_ti...

clickhouse如何删除数据

原创 2020-11-27 18:09 阅读(2460)次
clickhouse删除数据提供了三种方式:一、是删除分区,数据就会删除掉二、是通过Alter语句删除数据三、是还可以通过设置日期字段或表的TTL生命周期,到期自动清除数据注意:上面前2点都可以使用分布式DDL删除集群各节点数据,第三点是创建表时定义的,暂时不提。1.删除分区alter table 表名 drop partition 分区名分区名可以用下语句查询select * from system.parts p where table = '表名'以我下面这张表为例,分区函数是toYYYYMMDD(collect_time),按天分区,那分区名就是20201010这样的日期格式,只要按这...

clickhouse执行查询内存超出限制问题:Memory limit (total) exceeded

原创 2020-11-26 18:15 阅读(962)次
今天用clickhouse执行分布式查询报错:SQL 错误 [241]: ClickHouse exception, code: 241, host: 192.168.29.124, port: 18123; Code: 241, e.displayText() = DB::Exception: Memory limit (total) exceeded: would use 15.44 GiB (attempt to allocate chunk of 4294967296 bytes), maximum: 13.95 GiB (version 20.6.3.28 (official bui...

spring boot项目默认日志配置

原创 2020-11-26 17:43 阅读(121)次
spring boot默认日志为logback打印,默认不配置也可以打印日志,但生产环境中这样容易让日志打到机器磁盘不足,所以我们还是需要配置一下的:logging: file: name: app.log path: /home/java/ max-size: 50MB max-history: 7

clickhouse执行分布式DDL报错:Table `xxx` isn't replicated, but shard #2 is replicated according to its

原创 2020-11-17 18:06 阅读(181)次
clickhouse执行分布式DDL报错:Table `xxx` isn't replicated, but shard #2 is replicated according to its cluster definition执行的语句是:alter table engs_comp_clg_result_local on cluster shipin_cluster drop partition 20191101 我是想把我集群shipin_cluster中两个节点的本地表中一个分区删除掉,但是一执行报如上错误,说是我的本地表不是复制表,但是分片2却根据定义在复制。我的集群配置如下:<y...

quartz定时器改名后报错,删除多余的定时表数据

原创 2020-09-27 16:55 阅读(247)次
quartz定时器改名后报错,需要清除原来表中的对应数据,删除多余的定时表数据删除语句如下,对应的定时信息要传入:DELETE from qrtz_cron_triggers where TRIGGER_NAME = 'personTimeSpaceTaskTrigger'; DELETE from qrtz_triggers where TRIGGER_NAME = 'personTimeSpaceTaskTrigger'; DELETE from qrtz_job_details where JOB_NAME = 'personTimeSpaceTask';

win10双击winzip压缩里的exe文件安装软件产生文件碎片怎么删除

原创 2020-05-29 00:23 阅读(292)次
昨晚下载了dota2在安装时直接用WinRAR压缩软件打开,双击压缩包里的.exe文件直接安装游戏,解压到一半发现C盘满了,解压失败了。。这游戏解压后有20多G。然后看了C盘大小半天都没有恢复,一直处于满的状态,WTF!!!WinRAR这软件居然不会清除解压后的碎片文件!网上说等一小时后会自动清除,WTF!!!我等了一天都有,算了吧,我自己去C盘找,想想应该在用户目录里,还真给我找到了,解压碎片文件在C:\Users\jary\AppData\Local\Packages的一个WinZip开头的文件夹中,于是把他删除了,足足留下了13G的临时文件!!!,把我的C盘撑满了所以说解压时最好解压到指...

springboot项目初始化druid连接池时报错java.lang.NullPointerException: null

原创 2020-04-27 18:25 阅读(1069)次
新创建了一个springboot项目,一顿配置,以为能正常启动,结果打脸了,报错了:2020-04-27 18:14:04.655 ERROR 18376 --- [ main] com.alibaba.druid.pool.DruidDataSource : {dataSource-1} init error java.lang.NullPointerException: null at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:325) ~[na:1.8.0_191] at jav...

maven deploy新包到私服,别的工程不会自动引用新包的问题

原创 2020-04-15 17:41 阅读(553)次
在idea中将公共jar包maven deploy自动上传私服后,我并没有修改包的版本,同事在别的工程clean install后发现引用的还是原来的包。后来才发现,别人如果想使用这个最新的包,可以在idea的Maven Projects视图中点reimport,就可以了。install为什么不能下载新包呢,原来同样的版本情况下,install默认找本地的,所以才会出现引用的旧包的问题。也可以设置仓库的<updatePolicy>属性,参考https://www.iteye.com/blog/quinnhe-2066831

idea类找不到问题Caused by: java.lang.NoClassDefFoundError

原创 2020-04-15 17:02 阅读(859)次
我的项目A引用另一个名叫pip-data-model-solr.jar包,这个包是我们的实体module,我改过这个module里的代码,重新打包pip-data-model-solr.jar后,项目A clean install后就启动不了,我是用idea启动的。报如下错:Caused by: java.lang.NoClassDefFoundError: cn/com/datu/data/model/solr/entity/po/PersonDoc at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Clas...

Base64编码出现换行符

原创 2020-03-31 11:49 阅读(659)次
我有一个url图片地址,需要将他base64编码然后传给另一个服务,我本地一直是可以,将程序上传到linux服务器中一直发现图片出不来,看了下日志,base64编码后发现出来的数据多了换行符,如下:地址:kv://kv-face-video_face/2020/03/31/11/24/hmfdq-5439232d-8ab2-4403-8882-6b1d90fbeaee-1585625075325-1017433base编码后值:a3Y6Ly9rdi1mYWNlLXZpZGVvX2ZhY2UvMjAyMC8wMy8zMS8xMS8yNC9obWZkcS01NDM5MjMyZC04YWIyLTQ0...

feign报错java.lang.IllegalStateException: RequestParam.value() was empty on parameter 0

原创 2020-03-26 10:29 阅读(727)次
修改了一下feign接口,原本可以的接口突然报错:org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cn.com.datu.thirdpartapi.feign.OpodMetaOfProfileFeign': FactoryBean threw exception on object creation; nested exception is java.lang.IllegalStateException: RequestParam.value() was empty...

docker中启动elasticsearch报错:Error opening log file 'logs/gc.log': Permission denied

原创 2020-03-24 15:16 阅读(1544)次
最近公司组织学习elasticsearch,于是自己又重温了一下es,由于没有环境,又重新在docker安装了一下elasticsearch,启动命令如下:docker run --name es -p 9200:9200 -p 9300:9300 -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" -v /home/docker/es/plugins:/usr/share/elasticsearch/plugins -v /home/docker/es/data:/...

postgresql主从复制时报错:no pg_hba.conf entry for replication connection from host "192.168.15.131", user

原创 2020-03-20 13:39 阅读(792)次
今天在部署postgresql主从复制时,复制一直不成功,检查了主从库的配置没发现什么问题,于是修改主库的配置,修改postgresql.conf:logging_collector = on将日志功能打开,重启主库看到日志一直在报错:FATAL: no pg_hba.conf entry for replication connection from host "192.168.15.131", user "replicator", SSL off我以为pg_hba.conf中配置了如下就可以:local replication all ...

linux下docker安装postgreSql数据库,附带启动脚本

原创 2020-03-19 11:14 阅读(475)次
docker这东西安装中间件真是方便,不需要再去手动下载安装包,省事,今天分享一下我在docker中安装postgresql数据库的过程。1.搜索docker search postgresql2.上面可以看到NAME为postgres的镜像,直接安装,我选择的是10.5版本docker pull postgres:10.53.经过10分钟左右,镜像下载下来了,查看一下docker image listREPOSITORY          TAG              ...

postgresql生成uuid

原创 2020-03-12 15:41 阅读(730)次
我们postgresql数据库在插入数据时,需要生成uuid当作主键,这里分享下2种做法:1,参考这位朋友提供的https://www.cnblogs.com/chengyungzheng/p/10175515.html2,也可以直接自己拼接一下,但这不建议在高并发下使用,以下三个语句都可以生成SELECT uuid_in(md5(random()::text || now()::text)::cstring); SELECT uuid_in(md5(random()::text || clock_timestamp()::text)::cstring); SELECT md5(r...

切分List集合为多个List集合

原创 2020-03-12 10:57 阅读(1609)次
切分一个List变成多个List集合,代码如下:import java.util.ArrayList; import java.util.List; /** * @author: jary * @datetime: 2020/2/5 15:59 * @description: */ public class CollectUtils { /** * 切分list * @param sourceList * @param groupSize 每组定长 * @return */ public ...

the dependencies of some of the beans in the application context form a cycle

原创 2020-01-16 08:56 阅读(3074)次
spring项目工程在idea中运行正常,可是打包运行就报错:the dependencies of some of the beans in the application context form a cycle错误意思是spring循环依赖,开始以为是打包问题,可检查了包里面的内容是正常的,于是我build project后再打包,居然可以了。网上也找了下别人的解决办法有:1.不要使用基于构造函数的依赖注入2.在字段上使用@Autowired注解,让Spring决定在合适的时机注入3.用基于setter方法的依赖注入那我的解决办法是重新build project,在这里都记录下如果还有其...