-
2026-01-25 15:07:19
-
2026-01-25 15:11:02
- SQL CTE(WITH)解决了什么问题?
- CTE通过命名临时结果提升复杂查询可读性与可维护性,支持非递归和递归两种形式,但生命周期仅限单条语句,不可跨查询引用或索引,性能表现因数据库而异,核心价值在于结构化表达而非优化。
-
607
-
2026-01-25 15:21:59
- SQL 数据倾斜对性能的影响
- SQL数据倾斜是执行时因key分布不均导致某task负载过重的现象,常见于GROUPBY和JOIN操作,表现为单个reducer卡死、Shufflewrite巨大、GC频繁等;可通过打散倾斜key、加随机前缀、改用MapJoin缓解。
-
121
-
2026-01-25 15:36:10
- SQL 窗口函数如何处理时间断点?
- 窗口函数默认不识别业务时间断点,需用LAG()计算时间差并生成分组标识(如segment_id)来切分逻辑连续段,再通过PARTITIONBY实现断点隔离;RANGEBETWEEN仅控制物理时间范围,无法解决逻辑连续性问题。
-
993
-
2026-01-25 15:51:08
-
2026-01-25 15:59:39
- SQL 如何准确统计去重用户数?
- COUNT(DISTINCTuser_id)不准主因是NULL、空字符串、脏ID及跨系统ID格式不一致;需先过滤异常值并归一化,JOIN去重应前置子查询,时间窗口统计须用分区字段或左闭右开避免漏人。
-
307
-
2026-01-25 16:05:25
- 如何检测当前代码是否运行在 asyncio 事件循环中
- 最可靠方式是调用asyncio.get_running_loop(),它仅在当前线程有正在运行的事件循环时返回loop,否则抛出RuntimeError;不可用get_event_loop()或盲目捕获异常后启动新loop。
-
755
-
2026-01-25 16:13:05
- SQL 执行计划中的关键字段解读
- cost不是执行时间,而是优化器基于统计信息估算的相对开销单位,受seq_page_cost等参数影响;rows和width共同决定内存与网络开销;Buffers中sharedhit高不等于快;ParallelAware仅表示支持并行,需满足多项条件才实际启用。
-
144
-
2026-01-25 16:14:55
- Linux 文件系统层级结构的设计思路
- FHS是解决多用户多发行版路径冲突的接口契约,非技术强制;/usr为只读共享资源区,故不放可写且需隔离的/home;/usr/bin存发行版工具,/bin存启动必需命令;/etc仅存静态配置,运行时数据分属/run、/var/lib等。
-
168
-
2026-01-25 16:22:02
- Linux 僵尸进程是如何产生的?
- 僵尸进程产生的主要原因是父进程未调用wait()或waitpid()回收子进程退出状态,导致子进程残留task_struct并卡在Z状态;常见场景包括父进程忽略SIGCHLD、双fork隔离失败、父进程崩溃等。
-
708