MySQL 进阶 面经级

会用数据库,找大厂工作是远远不够的。

本人2025美团暑期AI面试好几个MySQL场景问题不会答,已脏面评。遂在此整理学习!

文章目录

  • 美团AI面
    • 1.数据库分片sharding的概念,它有什么优势和挑战?
        • 优势
        • Sharding 挑战
    • 2. 分库分表的常见策略有哪些
        • a. 取模分片
        • b. 范围分片
        • c. 按业务
        • d. 按时间分
        • e. 混合分片

美团AI面

1.数据库分片sharding的概念,它有什么优势和挑战?

我当时甚至不清楚分片啥意思——其实就是分布式数据库,将数据拆分到多个数据库节点上。

每个数据库节点存储数据的一个子集,被称为分片(Shard)。

优势
  1. 水平扩展,能够支持海量数据

  2. 提高性能:

  • 多个数据库节点可以并行处理查询和写入请求,减少单个数据库的负载。
  • 每个分片只存储部分数据,索引体积更小,提高查询效率。
  1. 隔离
    单个分片出现故障,不会影响其他分片的数据
Sharding 挑战
  1. 怎么分?
    需要选择合适的分片键(Shard Key),否则:

数据倾斜:部分分片存储的数据量过大,导致查询压力集中,影响性能。

查询跨分片:如果查询涉及多个分片(如 JOIN、GROUP BY),可能导致性能下降。

  1. 维护

随着数据增长,可能需要重新分片。数据迁移过程复杂,可能影响在线业务。

需要额外的工具监控各个分片的健康状况,防止单点瓶颈。

  1. 跨分片问题

联合只能在应用层。

跨分片事务,需要引入两阶段提交(2PC)等机制。而且要保证数据一致性。

2. 分库分表的常见策略有哪些

延续上一个问题了,,

a. 取模分片

num % 3 == 0/1/2

✅ 数据均匀

❌ 拓展困难,模数想跳转只能重新计算。
      范围查询表现不佳

b. 范围分片

每10W个编号分到一个数据库中

✅ 支持数据查询,扩展方便

❌ 数据倾斜风险:可能部分连续数据访问量大,分片压力大

c. 按业务

常规,不要宽列

d. 按时间分

日志,订单等

e. 混合分片

先分用户表,再对其取模分片,再按时间分

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/74198.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于单片机的智能奶茶机(论文 +源码)

1总体架构设计 本课题为基于单片机的智能奶茶机设计,其系统架构上设计如图2.1所示,整个系统包括了DS18B20温度传感器、继电器模块、LCD液晶、蜂鸣器、按键、STC89C52单片机等器件,在功能上用户可以通过按键键控制选择甜度和添加物以及设置温度…

Hue:一个大数据查询工具

Hue(Hadoop User Experience)是一个用于大数据平台、数据库以及数据仓库查询的开源工具,旨在通过 Web 界面简化用户与 Hadoop 生态系统以及各种数据存储的交互。 Hue 支持的数据源包括数据库(Apache Hive、Apache Impala、MySQL、…

并发多线程八股

并发多线程 1.Java里面的线程和操作系统的线程一样吗?2.Java的线程安全在三个方面体现:3.保证数据一致性的方案4.线程创建的方式1)Thread类2)Runnable接口3)Callable接口和FutureTask4)线程池(e…

VBA数据库解决方案第二十讲:SQL在VBA中几种常见的表达方式

《VBA数据库解决方案》教程(版权10090845)是我推出的第二套教程,目前已经是第二版修订了。这套教程定位于中级,是学完字典后的另一个专题讲解。数据库是数据处理的利器,教程中详细介绍了利用ADO连接ACCDB和EXCEL的方法…

大语言模型智体的综述:方法论、应用和挑战(下)

25年3月来自北京大学、UIC、广东大亚湾大学、中科院计算机网络信息中心、新加坡南阳理工、UCLA、西雅图华盛顿大学、北京外经贸大学、乔治亚理工和腾讯优图的论文“Large Language Model Agent: A Survey on Methodology, Applications and Challenges”。 智体时代已经到来&a…

《STL 六大组件之容器篇:简单了解 list》

目录 一、list 简介二、list 的常用接口1. 构造函数(constructor )2. 迭代器(iterator)3. 容量、修改和访问(capacity 、modify and access) 一、list 简介 简单来说,list 就是数据结构初阶中学…

nmslib 是一个 超快、适用于高维向量的最近邻搜索库,基于 HNSW 算法,被广泛用于 语义搜索、推荐系统、人脸识别等任务

nmslib 是什么? nmslib(Non-Metric Space Library)是一个 高效的最近邻搜索(ANN, Approximate Nearest Neighbor Search) 库,专门用于 高维向量搜索,适用于 文本、图像、语音等嵌入向量 的相似…

前端流式输出实现详解:从原理到实践

前端流式输出实现详解:从原理到实践 前言一、流式输出核心原理1.1 什么是流式输出?1.2 技术优势对比1.3 关键技术支撑 二、原生JavaScript实现方案2.1 使用Fetch API流式处理关键点解析: 2.2 处理SSE(Server-Sent Events&#xff…

【STM32】最后一刷-江科大Flash闪存-学习笔记

FLASH简介 STM32F1系列的FLASH包含程序存储器、系统存储器和选项字节三个部分,通过闪存存储器接口(外设)可以对程序存储器和选项字节进行擦除和编程,(系统存储器用于存储原厂写入的BootLoader程序,用于串口…

梯度(Gradient)与步长(Step Size)

梯度(Gradient)与步长(Step Size) 梯度与步长是优化算法(如梯度下降法)的核心概念。以下是它们的详细解释: 梯度(Gradient) ​定义 梯度是一个向量,表示多元…

freecad二开 xmlrpc接口api qtgui

FreeCAD.ConfigGet("UserAppData") 文件夹下创建mod文件夹 mod文件夹底下创建插件文件夹my_server: freecad_server.py: from xmlrpc.server import SimpleXMLRPCServer import FreeCADGui import FreeCADimport queue from PySide2.QtCore import QTi…

鸿蒙NEXT开发日志工具类(ArkTs)

import hilog from ohos.hilog; import { JSON } from kit.ArkTS; import { BusinessError } from kit.BasicServicesKit; import { StrUtil } from ./StrUtil;/*** 日志工具类* author: 鸿蒙布道师* since: 2024/03/31*/ export class LogUtil {private static logSize: numbe…

《Linux运维总结:基于银河麒麟V10+ARM64架构CPU源码编译部署单实例redis7.2.6》

总结:整理不易,如果对你有帮助,可否点赞关注一下? 更多详细内容请参考:《Linux运维篇:Linux系统运维指南》 一、环境信息 环境信息如下: 主机IP 操作系统 Redis版本 CPU架构 192.168.1.111 K…

基于LSTM的文本分类1——模型搭建

源码 # coding: UTF-8 import torch import torch.nn as nn import torch.nn.functional as F import numpy as npclass Config(object):"""配置参数类,用于存储模型和训练的超参数"""def __init__(self, dataset, embedding):self.…

小了 60,500 倍,但更强;AI 的“深度诅咒”

作者:Ignacio de Gregorio 图片来自 Unsplash 的 Bahnijit Barman 几周前,我们看到 Anthropic 尝试训练 Claude 去通关宝可梦。模型是有点进展,但离真正通关还差得远。 但现在,一个独立的小团队用一个只有一千万参数的模型通关了…

nextjs使用02

并行路由 同一个页面,放多个路由,, 目录前面加,layout中可以当作插槽引入 import React from "react";function layout({children,notifications,user}:{children:React.ReactNode,notifications:React.ReactNode,user:React.Re…

github 无法在shell里链接

当我在shell端git push时,我发现总是22 timeout的问题。 我就进行了以下步骤的尝试并最终得到了解决。 第一步,我先确定我可以curl github,也就是我网络没问题 curl -v https://github.com 如果这个时候不超时和报错,说明网络…

当前主流的大模型知识库软件对比分析

以下是当前主流的大模型知识库软件对比分析,涵盖功能特性、适用场景及优劣势,结合最新技术动态和行业实践提供深度选型参考: 一、企业级智能知识库平台 1. 阿里云百炼(Model Studio) 核心能力:基于RAG技…

Java的比较器 Comparable 和 Comparator

在 Java 中,Comparable 和 Comparator 是用于对象排序的重要接口。它们提供了不同的排序方式,适用于不同的需求,同时在 Java 底层排序算法中发挥着关键作用。本文将从基础概念、使用方法、排序实现(包括升序、降序)、底…

基于Qlearning强化学习的太赫兹信道信号检测与识别matlab仿真

目录 1.算法仿真效果 2.算法涉及理论知识概要 2.1 太赫兹信道特性 2.2 Q-learning强化学习基础 2.3 基于Q-learning 的太赫兹信道信号检测与识别系统 3.MATLAB核心程序 4.完整算法代码文件获得 1.算法仿真效果 matlab2024b仿真结果如下(完整代码运行后无水印…