- 博客(98)
- 收藏
- 关注
原创 mysql 根据create_time删除user表一个月之前的数据
第一步:先查询确认要删除的数据。第二步:使用事务执行删除。第三步:分批删除大量数据。
2025-09-22 14:16:46
327
原创 mysql/doris如何高效删除历史数据
它直接删除整个分区的物理数据文件并更新元数据,避免逐行扫描和删除标记操作。删除大量数据时,需扫描相关数据并生成大量删除标记,后续Compaction合并时才真正物理删除,资源消耗大且存在延迟。适用于需要完全替换某个历史分区数据的场景。优势:可与其他数据导入合并进行,效率远高于逐行执行 DELETE 语句。优势:替换操作瞬间完成,避免删除旧数据和导入新数据期间的数据不可见窗口期。建议:仅用于删除少量、分散的历史数据,避免高频或大批量使用。优势:比逐行删除或删除所有分区更快。
2025-08-08 13:20:04
480
原创 SQL的LEFT JOIN优化
*优化四:**按照sql开发规范,多表LEFT JOIN不能超过三个表,拆分两个sql执行,同时根据doris主键模型(该模型保证 Key 列的唯一性,插入或更新数据时,新数据会覆盖具有相同 Key 的旧数据,确保数据记录为最新。**优化一:**减少base表的取数据范围,将base表写成子查询,而不是将where语句写到最后,经验证性能可以提升40%左右(单表千万以上的数据量),但是由于b,c,d表数据量很大,LEFT JOIN依然会内存爆掉。
2025-08-05 15:38:06
332
原创 Java忽略https ssl证书
private SSLContext createSslContext(RestClientBuilder restClientBuilder, Map<String, String> settings) {if (!isHttpsHost(settings)) {return null;}String certBase64 = settings.get(“sslCert”);if (Strings.isNullOrEmpty(certBase64)) {LOGGER.error(“sslCer
2025-07-21 16:27:26
536
原创 mysql客户端执行sql报错You are using safe update mode and you tried to update a table without a WHERE
这个错误表明你正在使用MySQL的安全更新模式(Safe Update Mode),但尝试执行的UPDATE语句没有包含使用关键列(如主键)的WHERE条件12。反复遇到这个问题,这里做个笔记,防止遗忘。确保WHERE子句使用索引列(如主键)– 执行你的UPDATE语句。
2025-07-21 10:37:12
388
原创 kafka部署和基本操作
producer msg:# 使用控制台生产者写入数据(逐行输入),写入后可以通过kafka-console-consumer.sh实时查看写入结果。该问题实际上是个乌龙,实操通过kafka-console-consumer.sh消费topic,一直没有数据,查看kafka日志,发现了上面日志;2.修改config/zookeeper.properties。1.修改config/server.properties。经验证,发现是没有最新日志写入,所以消费不到日志。消费topic(实时查看写入的日志)
2025-06-19 15:58:48
340
原创 Apache Doris建表总结
分桶数 ≈ 集群磁盘总数 ×(1~2) (如 10 台 BE × 3 盘/台 → 分桶数 30-60)单分区数据量:建议 10-50GB(避免过小导致元数据膨胀,过大影响迁移效率)varchar(32) NULL COMMENT ‘ip所属省份’,varchar(32) NULL COMMENT ‘ip操作者’,varchar(64) NULL COMMENT ‘会id’,varchar(64) NULL COMMENT ‘会id’,varchar(64) NULL COMMENT ‘会id’,
2025-06-18 11:03:49
665
原创 Anaconda3卸载和重新安装
anaconda-clean --yes # 自动删除配置文件(备份在~/.anaconda_backup):ml-citation{ref=“2,7” data=“citationList”}./Anaconda3-2023.01-Linux-x86_64.sh # 运行安装脚本:ml-citation{ref=“3” data=“citationList”}conda create --name 新环境名 --clone 原环境名。
2025-06-17 11:16:39
1294
原创 python时间操作笔记
print(f"今天时间上一个小时: {previous_hourAndMin_time_formatted}")print(f"昨天年-月-日: {yesterday_time_formatted}")print(f"前天零点: {day_before_yesterday_zero}")print(f"今天时间上一个小时: {previous_hour_time}")print(f"明天零点: {midnight_24}”)print(f"今天零点: {zero_today}“)
2025-06-06 17:04:02
412
原创 elasticsearch基本操作笔记
verify_certs=False # 自签名证书需关闭验证:ml-citation{ref=“4” data=“citationList”}“field”: “ext.traceId.keyword”, // 确保使用keyword类型字段。“size”: 1000 // 覆盖所有重复项(按需调整)“min_doc_count”: 2, // 只返回出现2次以上的结果。“size”: 0, // 不返回原始文档。b.GET / 执行。
2025-06-06 16:59:40
615
原创 python查询elasticsearch 获取指定字段的值的list
【代码】python查询elasticsearch 获取指定字段的值的list。
2025-05-21 16:37:42
323
原创 linux crontab定时执行python找不到module问题解决
这个问题通常是由于Linux定时任务执行环境与直接执行时的环境不一致导致的,定时任务默认使用系统Python解释器,若脚本依赖虚拟环境,需显式指定虚拟环境中的Python路径;本地window执行正常;生产linux服务器手动执行正常;linux crontab定时执行报错,找不到module;3.问题解决:在定时任务脚本中显式指定Python路径和环境变量。
2025-05-20 11:41:56
411
原创 python查询elasticsearch并将结果插入mysql
from elasticsearch import Elasticsearch报错cannot import name ‘decodestring’ from ‘base64’最终原因:发现elasticsearch==7.15.1,测试环境是7.5,第一次安装的是7.5,于是卸载重新安装。1.准备工作:开发环境安装elasticsearch和pymysql module。python卸载elasticsearch并重新安装适合的module。python 安装elasticsearch module。
2025-05-19 17:30:54
347
原创 高级架构软考之网络OSI网络模型
c.IEEE802、ATM(异步传输)、PPP(点对点协议)、SDLC(同步数据链路控制)、HDLC(高级数据链路控制)、STP(生成树协议)等;a.在物理层基础上,在通讯实体间建立数据链路链接,传输以“帧”为单位的数据包,并采用差错控制和流量控制的方法,无差错的数据链路;c.协议:http、ftp、smtp、telnet、dns、dhcp、pop3等。c.协议:IP、IPX、ICMP、IGMP、ARP、RARP。c.协议:SSL/TLS、JPEG、ASCII等。a.数据可靠的端到端数据传输、并处理报错;
2025-05-08 11:39:08
372
原创 windows的txt文档每行头和末尾添加英文单引号、末尾加英文逗号
方法一:PowerShell脚本(推荐)方法一:PowerShell脚本(推荐)方法二:批处理脚本(CMD)方法二:批处理脚本(CMD)
2025-04-28 09:46:51
542
原创 JDBC连接mysql常用参数说明
zeroDateTimeBehavior=convertToNull 将 MySQL 中的 0000-00-00 00:00:00 转换为 null。characterEncoding=utf-8 指定字符编码为 UTF-8,保证数据传输一致性。与数据库服务器时区一致 若数据库时区为 UTC,可能导致时间字段偏差(如存储时间差 8 小时)。禁用 SSL 会导致数据明文传输,存在安全风险(建议测试环境用,生产环境强制启用 SSL)。utf-8 需确保数据库、表和客户端编码均为 UTF-8。
2025-04-27 14:34:24
387
原创 msyql按天按小时统计数量并排序
AND created_date < ‘2025-04-28 00:00:00’ – 精确匹配2025-04-27当天。AND created_date IS NOT NULL – 排除空值。指定日期按小时统计数量并排序。
2025-04-27 10:09:48
194
原创 doris _stream_load There is no 100-continue header 报错解决
request headers增加参数即可:“expect”: “100-continue”
2025-03-31 13:59:26
599
原创 cron表达式
不包含 8 点整:若需在 8:00 停止,将小时字段改为 23,0-7,最后一次执行时间为 7:55。:23,0-8 表示 当天 23 点 + 次日 0 点至 8 点,覆盖完整时间范围。分(Minutes) 0/5 从 0 分钟开始,每 5 分钟触发一次。时(Hours) 8-23 每天 8 点至 23 点之间触发。包含 8 点整:若需在 8:00 执行最后一次,表达式保持 0-8。需求二:23点到第二天8点 每五分钟执行一次。需求一:每天8点到23点五分钟执行一次。
2025-03-21 17:18:25
3624
原创 centos安装python3.9.9总结和笔记
2.上传到centos服务器,我验证的目录为:/data/py3install/Python-3.9.9.tgz。(1)/data/py3install/Python-3.9.9路径问题,第一次home路径错误,导致安装失败。解释说明一下(标记核心的包务必安装。注意路径/data/py3install/Python-3.9.9,路径一定要对。解压:tar -zxvf Python-3.9.9.tgz。两个都是官网地址,本次安装我选择的是3.9.9。
2025-03-11 17:51:39
376
原创 Flink测试环境Standalone模式部署实践
6.优化参看另一篇实践总结:https://blog.youkuaiyun.com/weixin_43103956/article/details/145569759?本次验证用的是:https://www.apache.org/dyn/closer.lua/flink/flink-1.18.1/flink-1.18.1-bin-scala_2.12.tgz。1.下载Flink:https://flink.apache.org/downloads/
2025-03-11 13:42:10
428
原创 MVN the trustAnchors parameter must be non-empt问题解决
分支问题三原因:com.google.guava:guava:jar:32.1.3-jre依赖的是OracleJDK,而我本地安装的是openJDK,用openJDK,证书验证不通过。##在IDE工具IDEA上增加上面参数,继续报错,参考:https://blog.youkuaiyun.com/kai563596378/article/details/112699671。(3)分支问题一解决:在当前工程目录下(pom文件所在的目录)执行cmd命令,再执行。至此,全部问题解决,工程跑起来了。Maven官方入门教程链接。
2025-03-04 16:28:20
1323
原创 使用spring-boot-starter-test做单元测试简单示例
【代码】使用spring-boot-starter-test做单元测试简单示例。
2025-02-19 15:26:59
502
原创 Test ignored.java.lang.ClassNotFoundException:TestContextAnnotationUtils问题解决
将spring-boot-test版本改成和spring-boot-starter-test版本一致即可。问题:使用@SpringBootTest做单元测试时报错。
2025-02-19 15:16:58
214
原创 pom: unexpected markup <!d (position: START_DOCUMENT seen \n<!d... @2:4) @ line 2, column 4问题解决
解决:把本地maven localRepository 删除掉报错的jar包(C:\appinstall\maven\localRepository\org\lz4\lz4-java\1.7.1),然后重新下载(maven/ Reload project);原因:jar依赖包报错,我遇到的是lz4-java-1.7.1.jar报错,可以查看报错信息;
2025-02-19 14:58:17
280
原创 Flink提交python或pyflink任务实战
1.官方文档:2.提交PyFlink作业 - Submitting PyFlink Jobs #(1)环境检查当前用户可以通过命令行提交PyFlink作业。不要指定 jar 文件路径或者主类入口,跟Java作业提交不一样。当使用 flink run 提交Python作业时,Flink会运行命令 python。请运行下面的命令确保Python可执行程序在当前环境中,并指向Python 3.6+ 版本。
2025-02-12 17:46:11
1463
原创 批量修改mysql字符串字段子字符串
将 table_name 表中 column_name 字段的所有 old_value 替换为 new_value。WHERE 子句用于限制只更新包含 old_value 的行(可选)。REPLACE 函数会查找并替换所有匹配的子字符串。
2025-02-12 17:34:47
358
原创 mysql:You are using safe update mode and you tried to update a table问题解决
You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column.问题解决。启用了安全更新模式 (SET sql_safe_updates = 1;或WHERE条件中未使用索引列(KEY column)UPDATE语句中缺少WHERE条件。方案一:修改UPDATE语句(推荐)方案三:调整WHERE条件。方案二:临时禁用安全模式。
2025-02-12 17:32:17
1448
原创 Flink内存配置和优化
taskmanager.memory.task.off-heap.size:设置 TaskManager 的堆外内存大小(用于网络缓冲、状态后端等)。jobmanager.memory.process.size:设置 JobManager 的总内存大小,包括堆内存和堆外内存。taskmanager.memory.task.heap.size:设置 TaskManager 的 JVM 堆内存大小。taskmanager.memory.process.size:设置 TaskManager 的总内存大小。
2025-02-11 13:33:48
1445
原创 java解析复杂json
二、基于jackson,spring内部解析json也是这个,最终生产上使用的这个;2.test json,精简后的测试json。3.解析源码,代码都是验证过的。一.基于org.json。我个人验证了两个方法。
2025-02-06 10:23:10
306
原创 flink报错Could not acquire the minimum required resources.解决方案
taskmanager.numberOfTaskSlots: X(调大点,比如30,50)解决方法是修改配置文件 flink-conf.yaml,重新设置任务槽的数量。
2025-01-24 16:20:30
864
原创 flink job busy(max)100%
主要是消息有挤压,本次遇到的问题是消费kafka offset从earlist开始,消费从十天前开始的,所以出现了短暂的busy(max)100%
2025-01-24 16:18:24
375
原创 【Flink】flink或java异常日志输出不完整问题解决
flink submit job,报错查看日志,只有Caused by: java.lang.ClassCastException,异常详情没有,jvm解决办法:增加jvm参数:-XX:-OmitStackTraceInFastThrow。flink或java异常日志输出不完整问题解决。
2025-01-09 11:39:55
613
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1