银行科技招聘试题及答案.docxVIP

  • 1
  • 0
  • 约6.99千字
  • 约 18页
  • 2026-09-24 发布于未知
  • 举报

银行科技招聘试题及答案

一、技术基础题

1.数据库技术

题目1:某银行核心系统交易表(trade_info)包含字段:trade_id(主键,自增)、user_id(用户ID)、amount(交易金额)、trade_time(交易时间,默认当前时间)、status(交易状态,0-失败,1-成功)。近期生产环境反馈该表查询“近30天用户成功交易记录”的SQL执行耗时较长(平均2秒),请分析可能原因并提出优化方案。

答案:

可能原因分析:

(1)索引缺失或不合理:若查询条件涉及user_id、trade_time、status的组合,当前表可能仅存在主键索引(trade_id),未针对查询条件建立复合索引,导致全表扫描;

(2)数据量过大:交易表每日产生百万级数据,30天数据量可能达数亿条,全表扫描时间随数据量线性增长;

(3)统计信息过时:数据库优化器未获取最新表数据分布(如status=1的记录占比),导致选择错误的执行计划;

(4)锁竞争:高并发交易场景下,表级锁或行锁争用可能导致查询阻塞。

优化方案:

(1)创建复合索引:在(user_id,trade_time,status)上建立索引(注意顺序,将等值查询字段user_id、status前置,范围查询字段trade_time后置),覆盖查询条件;

(2)分区表设计:按tr

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档