自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (4)
  • 收藏
  • 关注

原创 【每日一道面试题】MySQL 中 NULL 和 NOT NULL 一定不走索引么

MySQL字段NULL值对索引使用的影响:当字段定义为NOT NULL时,IS NULL查询会被优化器识别为不可能条件,而IS NOT NULL会走全表扫描;允许NULL值时,两者都可能使用索引。测试表明,NULL值分布占比显著影响优化器决策:低占比的NULL/非NULL条件更可能走索引,高占比则倾向全表扫描。此外,覆盖索引能优化IS NOT NULL查询。建议根据业务需求合理设计字段约束,避免过度使用NULL值以提升查询性能。

2025-07-27 22:05:38 717

原创 【每日一道面试题】聚簇索引、覆盖索引以及索引下推到底是什么

本篇介绍聚簇索引、二级索引、覆盖索引以及索引下推相关概念。索引的基本概念对于学习MySQL至关重要。聚簇索引:叶子节点直接存储实际数据,包含所有完整的用户数据。二级索引:叶子节点则存储主键值,而非实际数据。覆盖索引:能够在二级索引上直接查询到所需要的数据。索引下推: 直接在二级索引上做条件判断。

2025-07-25 22:44:08 1781

原创 【每日一道面试题】MySQL索引失效的场景

MySQL索引失效的常见场景及优化建议:全文分析了6种导致索引失效的情况,包括模糊匹配、函数计算、表达式计算、隐式类型转换、联合索引非最左匹配以及WHERE子句中的OR条件。针对每种情况详细解释了失效原因,并提供了相应的优化方案,如使用函数索引、调整查询条件、确保类型匹配等。特别强调了联合索引的最左匹配原则和MySQL 5.6引入的索引下推功能。通过合理设计索引和优化查询条件,可以有效避免全表扫描,提升数据库查询性能。

2025-07-23 21:27:49 582

原创 【每日一道面试题】MySQL 为什么选择B+树作为底层的数据结构

本文探讨了MySQL为何选择B+树作为索引结构而非其他数据结构。首先分析了二叉搜索树和红黑树的不足:二叉搜索树在顺序插入时会退化为链表,红黑树虽能自平衡但高度仍较高且节点存储数据有限。然后对比B树和B+树的差异,指出B+树在非叶子节点仅存储键值、叶子节点通过链表连接等特性,使其更适合范围查询和顺序访问。最后通过计算节点存储容量,说明B+树在三层结构下即可支持千万级数据存储,具有更高的空间利用率和查询效率。

2025-07-21 22:37:22 656

原创 【每日一道面试题】MySQL场景相关面试题

2025-07-20 08:07:55 113

原创 【每日一道面试题】MySQL索引相关面试题

2025-07-20 07:59:46 140

原创 【每日一道面试题】谈谈对索引的理解?哪些字段适合加索引,哪些不适合

MySQL索引优化指南 本文介绍了MySQL索引的核心知识点,包括常见索引类型(B树、哈希、全文索引等)、适合加索引的字段(高基数、常用查询条件、外键等)和不适合加索引的字段(低基数、频繁更新、大文本等)。文章还提供了索引设计的最佳实践,如合理设计复合索引、避免过多索引、使用覆盖索引等。最后强调索引设计应平衡查询性能和维护成本,根据业务需求选择性添加索引,并定期优化。合理使用索引能显著提升查询效率,但滥用会降低写入性能。

2025-07-20 07:57:28 1528

原创 【每日一道面试题】为什么不推荐使用外键

摘要: 外键虽能确保数据完整性,但在实际开发中常被弃用,主要原因包括: 性能影响:增加插入/删除操作的检查开销,降低批量处理效率; 灵活性不足:阻碍数据迁移与表结构重构; 分布式系统限制:跨服务或分库场景下难以维护一致性; 管理复杂度:加剧事务锁竞争,需应用层补充校验逻辑。 尽管外键适用于强一致性需求或简单模型,团队需权衡性能、架构灵活性与开发成本,通过业务逻辑或替代方案保障数据正确性。

2025-07-20 06:44:26 251

原创 【每日一道面试题】如何实现多次请求幂等

本文介绍了在用户多次点击提现按钮时保证幂等性的综合解决方案。核心流程包括:1)前端预申请Token防重复提交;2)数据库唯一索引拦截重复请求;3)乐观锁确保余额扣减安全;4)分布式锁防止并发操作;5)事务保证数据一致性。同时还提出了结果缓存、有效期设置等优化措施,并强调了对账机制的必要性。该方案通过多层次防护,有效解决了重复提现问题,在保证资金安全的同时提升系统健壮性。

2025-07-19 16:12:01 428

原创 【每日一道面试题】加密后的数据该如何支持模糊查询

MySQL加密数据模糊查询的三种解决方案:1)内存解密:简单但性能差,易OOM;2)加密函数:低成本实现但无法利用索引;3)分片加密(推荐):将数据分段加密存储,支持模糊查询但需额外存储空间。阿里文档建议采用类似分片加密方案,根据数据安全性和查询性能需求选择合适方案。

2025-07-18 22:48:07 802

原创 【每日一道面试题】MySQL的深度分页如何优化

MySQL深度分页性能下降的主要原因是需要扫描大量数据。优化方法包括:1)利用主键/唯一索引定位记录;2)子查询先获取ID再关联;3)使用覆盖索引减少回表;4)应用缓存分页结果;5)根据业务调整分页逻辑;6)限制最大翻页数。建议结合EXPLAIN分析选择适合的优化策略。这些方法能有效提升深度分页查询效率。

2025-07-16 22:52:07 346

原创 图解Spark源码(一)--- Spark 通信架构

Spark1.6 之前使用的是 Akka 作为内部通讯组件,Spark1.6 之后将 Akka 换成了 Netty。但是它借鉴了 Akka 中的设计,即 Actor 模型。Spark 是一个分布式计算系统,因此节点间存在很多通信,那么Spark 就会借助这些通讯框架进行RPC 通信。driver 和 master 之间的通信,比如 driver 回向 master 申请计算资源。

2022-10-23 21:48:36 2877

Presto0.196 server以及客户端.zip

Presto0.196 server、客户端cli 以及可视化客户端

2021-03-30

(kubernetes-dashboard)recommended.yaml

kubernetes-dashboard的资源描述文件

2021-01-12

(Ingress-nginx)mandatory.yaml

k8s 安装Ingress-nginx的资源描述文件

2021-01-12

harbor-offline-installer-v1.10.1.tgz

harbor离线安装包

2021-01-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除