Druid

springboot druid sql 监控和 spring监控 无数据 问题解决

会有一股神秘感。 提交于 2020-08-19 13:55:56
1. sql 监控 无数据 #druid连接池 spring.datasource.type: com.alibaba.druid.pool.DruidDataSource #最大活跃数 spring.datasource.maxActive: 20 #初始化数量 spring.datasource.initialSize: 1 #最大连接等待超时时间 spring.datasource.maxWait: 60000 #打开PSCache,并且指定每个连接PSCache的大小 spring.datasource.poolPreparedStatements: true spring.datasource.maxPoolPreparedStatementPerConnectionSize: 20 #通过connectionProperties属性来打开mergeSql功能;慢SQL记录 #connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000 spring.datasource.minIdle: 1 spring.datasource.timeBetweenEvictionRunsMillis: 60000 spring.datasource

常用开发命令

被刻印的时光 ゝ 提交于 2020-08-19 05:36:25
-----------------------------------github code-snippet-master.zip https://codeload.github.com/VictorBu/code-snippet/zip/master demo-druid-master.zip--->mybatis-plus-druid springboot2.x_mybatisPus3.x-master.zip springboot-myabatis-plus-sample-master.zip springboot2-demo.zip blob:https://start.spring.io/0a7d8670-5a60-4ee2-82b8-05d6eb112d29 springboot2-learning-part1-master-6-4.zip -------------------------------------telnet telnet ip port telnet 127.0.0.1 80 -------------------------------------redis cd D:\Program Files\Redis redis-cli -h 127.0.0.1 -p 6379 ------------------------------------

LSM设计一个数据库引擎

北城以北 提交于 2020-08-17 18:20:36
Log-Structured Merge-Tree,简称 LSM。 以 Mysql、postgresql 为代表的传统 RDBMS 都是基于 b-tree 的 page-orented 存储引擎。现代计算机的最大处理瓶颈在磁盘的读写上,数据存储无法绕开磁盘的读写,纯内存型数据库除外,但由于内存存储的不稳定性,我们一般只将内存型的存储作为缓存系统。 为提升数据库系统的写性能,我们发现磁盘的 顺序写性能远远大于随机写性能 ,甚至性能高于内存的随机写。所以在很多偏向写性能的数据库系统中,以牺牲一部分读性能和增大写放大的情况下引入了 LSM 数据结构。 设计一个数据库引擎 我们从头开始设计一个数据库引擎。数据模型很简单,我们选最简单的 Key-Value 结构,一条数据只有一个 Key 和一个 Value。操作只有 get 和 put,如下: get(key); put(key, value); 从最简单的开始,每个数据库一个 data.db 文件,我们像写日志一样,将每条记录 append 到文件结尾。 key1,value1 key2,value2 key3,value3 key10,value10 key8,value8 这样我们已经完成了 80%了,然后需要完成读功能。如上数据文件,若需要查询 key2 数据,我们只能从文件开头开始遍历,当直到读取到 key2 数据: for

Apache Druid 0.13 升级至 0.18.1 过程分享,最新版本升级实战

点点圈 提交于 2020-08-17 03:59:55
简述 0.18.1 作为一次重大升级,包含了sql 的join查询,解决了很多问题。 本周一不小心就把apahce druid 在 0.13 升级至 0.18.1 .升级过程中有些小陷阱做了一个chat 分享下升级过程。 本 Chat 主要是 0.13 升级至 0.18.1 过程分享。通过本 Chat 可以了解到: 0.13 不停机的情况下升级至 0.18.1 的方案 日志配置 同一台机器上启动两个 Supervise 方法 启动后节点自动退出问题. 总结 如果你有相关的升级需求,本案例可以给予一定参考。目前升级后,运行良好。 如果需要订购请 点击 Gitchat 地址 来源: oschina 链接: https://my.oschina.net/u/3247419/blog/4285482

回应 "SpringBoot中文社区 " 网友的贴

China☆狼群 提交于 2020-08-16 22:20:19
我是在17年无意看到一条关于"光连接池与Druid的"性能PK的新闻,也是那个时候才知道OSChina这个网站(当时还以为它是个小网站),当时用光连接池程序跑了一下,我当时非常震惊:这世界上还有如此之快的作品? 至此激发个人对连接池的学习兴趣: 我也要练习做一个. 个人做开发小蜜蜂连接池,纯属业余爱好,去年用光连接池的性能基准测试后发现跑分居然比光连接池还高,说实话,我也很质疑之前的跑分结果.由于能力有限,无法找出问题的原因,求助无门(曾在一些光连接池宣传贴下发贴提问, 可惜无人愿意帮忙, 无奈只好说比光更快了, 本意就是激发大家质疑它,发现问题.) 我记得曾经在光连接池的论坛上发个帖子请教:为什么小蜜蜂连接池比光连接池更快的原因,好像有个Bill的回了我的帖子,说了应该是Connection在使用之后需要重置,(这个应该是Brett说的不安全的问题吧),在他的建议下,加入了重置逻辑,并制作了一些测试案例, 在打包前是自动执行, 如果TestCase测试失败的打包过程自然会中止.加入了重置逻辑后再跑,跑分依然高啊. 实事求是的说,我确实阅读过光连接池的代码,但是能力有限,很多地方看不懂,最终放弃,至于他说的小蜜蜂连接池与光连接池在使用方法上存在相似性,Java是面向接口变成,再加上都是数据库连接池,一些方法名,类名相同不足为奇,当然有兴趣的网友可以进一步对比一下两套代码是否相同

用户画像标签体系——从零开始搭建实时用户画像(三)

心不动则不痛 提交于 2020-08-16 09:52:09
用户画像标签体系 ​ 用户画像的核心在于给用户“打标签”,每一个标签通常是人为规定的特征标识,用高度精炼的特征描述一类人,例如年龄、性别、兴趣偏好等,不同的标签通过结构化的数据体系整合,就可与组合出不同的用户画像。 ​ 梳理标签体系是实现用户画像过程中最基础、也是最核心的工作,后续的建模、数据仓库搭建都会依赖于标签体系。 ​ 为什么需要梳理标签体系,因为不同的企业做用户画像有不同的战略目的,广告公司做用户画像是为精准广告服务,电商做用户画像是为用户购买更多商品,内容平台做用户画像是推荐用户更感兴趣的内容提升流量再变现,金融行业做用户画像是为了寻找到目标客户的同时做好风险的控制。 ​ 所以第一步,我们要结合所在的行业,业务去分析我们用户画像的目的。这其实就是战略,我们要通过战略去指引我们最终的方向。 对于电商企业来说,可能最重要的两个问题就是: 现有用户- 我的现存用户是谁?为什么买我的产品?他们有什么偏好?哪些用户价值最高? 潜在客户- 我的潜在用户在哪儿?他们喜欢什么?哪些渠道能找到他们?获客成本是多少? 而对于金融企业,还要加上一条: 用户风险—用户的收入能力怎么样?他们是否有过贷款或者信用卡的逾期?他们的征信有问题吗? 我们做用户画像的目的也就是根据我们指定的战略方向最终去解决这些问题。 在梳理标签的过程还要紧密的结合我们的数据,不能脱离了数据去空想

自己动手写SQL执行引擎

北慕城南 提交于 2020-08-14 14:02:26
自己动手写SQL执行引擎 前言 在阅读了大量关于数据库的资料后,笔者情不自禁产生了一个造数据库轮子的想法。来验证一下自己对于数据库底层原理的掌握是否牢靠。在笔者的github中给这个database起名为Freedom。 整体结构 既然造轮子,那当然得从前端的网络协议交互到后端的文件存储全部给撸一遍。下面是Freedom实现的整体结构,里面包含了实现的大致模块: 最终存储结构当然是使用经典的B+树结构。当然在B+树和文件系统block块之间的转换则通过Buffer(Page) Manager来进行。当然了,为了完成事务,还必须要用WAL协议,其通过Log Manager来操作。 Freedom采用的是索引组织表,通过DruidSQL Parse来将sql翻译为对应的索引操作符进而进行对应的语义操作。 MySQL Protocol结构 client/server之间的交互采用的是MySQL协议,这样很容易就可以和mysql client以及jdbc进行交互了。 query packet mysql通过3byte的定长包头去进行分包,进而解决tcp流的读取问题。再通过一个sequenceId来再应用层判断packet是否连续。 result set packet mysql协议部分最复杂的内容是其对于result set的读取,在NIO的方式下加重了复杂性。

sql injection violation, syntax error, expect DIMENSION oracle 数据库时报错

删除回忆录丶 提交于 2020-08-13 19:09:19
oracle 数据库时报错 : java.sql.SQLException: sql injection violation, syntax error, expect DIMENSION, actual COMMA : select a.material_type num,d.text material_type, c.equipment_model model ,c.serial_number from mv_spm_spt_material_info a, t_ept_config b, t_ept_base_info c ,t_base_dictionary d where b.material_id = a.id and b.equipment_id = c.base_id and a.material_type = d.value and d.key = 'MATERIAL_TYPE' and a.module_level = 'A' and a.module_type = 'B000' and c.serial_number = '116381' at com.alibaba.druid.wall.WallFilter.check(WallFilter.java:582) at com.alibaba.druid.wall.WallFilter.connection

大数据的下一站是什么?服务/分析一体化(HSAP)

﹥>﹥吖頭↗ 提交于 2020-08-13 16:25:05
云栖号资讯:【 点击查看更多行业资讯 】 在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 既然 HTAP 有了分析的能力,它是不是将取代大数据系统呢?大数据的下一站是什么? 因为侧重点的不同,传统的数据库可以分为交易型的 OLTP 系统和分析型的 OLAP 系统。随着互联网的发展,数据量出现了指数型的增长,单机的数据库已经不能满足业务的需求。特别是在分析领域,一个查询就可能需要处理很大一部分甚至全量数据,海量数据带来的压力变得尤为迫切。这促成了过去十多年来以 Hadoop 技术开始的大数据革命,解决了海量数据分析的需求。与此同时,数据库领域也出现了一批分布式数据库产品来应对 OLTP 场景数据量的增长。 为了对 OLTP 系统里的数据进行分析,标准的做法是把里面的数据定期(比如说每天)同步到一个 OLAP 系统中。这种架构通过两套系统保证了分析型查询不会影响线上的交易。但是定期同步导致了分析的结果并不是基于最新数据,这种延迟让我们失去了做出更及时的商业决策的机会。为了解决这个问题,近几年出现了 HTAP 的架构,这种架构允许我们对 OLTP 数据库里的数据直接进行分析,从而保证了分析的时效性。分析不再是传统的 OLAP 系统或者大数据系统特有的能力,一个很自然的问题是:既然 HTAP 有了分析的能力,它是不是将取代大数据系统呢?大数据的下一站是什么? 背 景

SpringBoot集成MyCat

♀尐吖头ヾ 提交于 2020-08-13 15:53:43
什么是Mycat   MyCat是一个开源的分布式数据库系统,前端用户可以把它看作是一个数据库代理。其实现的核心原理是“拦截” 。Myacat拦截用户发送过来的Sql语句,做一些特定的分析:如分片分析,路由分 析,读写分析,读写分离分析。然后将SQL发往真实的数据库。不同于其他的中间件比如druid连接池,Mycat使用的是Nio异步通信机制(非阻塞型的),它的线程池数量默认为1,实际生产环境线 程数=CPU的核数。推荐使用Mycat1.6版本,项目中MyCat配置代替原数据源的配置,非常简单。 应用场景: 1)单纯的读写分离,此时配置最为简单,支持读写分离,主从切换; 2)分表分库,对于超过 1000 万的表进行分片,最大支持 1000 亿的单表分片; 3)多租户应用,每个应用一个库,但应用程序只连接 Mycat,从而不改造程序本身,实现多租户化; 4)报表系统,借助于 Mycat 的分表能力,处理大规模报表的统计; 替代 Hbase,分析大数据; 5)作为海量数据实时查询的一种简单有效方案,比如 100 亿条频繁查询的记录需要在 3 秒内查询出来结果,除了基于主键的查询,还可能存在范围查询或其他属性查询,此时 Mycat 可能是最简单有效的选 SpringBoot集成MyCat   Mycat已经帮我们在内部实现了路由的功能,我们只需要在Mycat中配置以下切分规则即可