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.pswp.cn/pingmian/74198.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/74198.shtml
英文地址,請注明出處:http://en.pswp.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仿真結果如下(完整代碼運行后無水印…