腾讯面试题:数据库分库分表该怎么玩?

Posted 涛歌依旧

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了腾讯面试题:数据库分库分表该怎么玩?相关的知识,希望对你有一定的参考价值。

涛哥推荐语:

牛牛普通二本,校招进腾讯,后来又去了外企,然后为期权而去字节跳动,最后又回到 腾讯 ,每次跳槽,涨幅真香。牛牛虽然才二十多岁,但经历已经非常丰富。校招社招想进腾讯的朋友,直接找牛牛内推就对了。
所以,还说什么呢?让我们给牛牛一个关注,让牛牛还大家一份干货。接下来,一起来看看牛牛的技术分享。


BEGIN

牛牛从业以来,经历了4家公司,面试过程中,前前后后数十次被问及:切西瓜,你会吗?

‍切西瓜是什么?

哦?你已经猜到了,那证明牛牛的比喻非常贴切呀!
什么?没有头绪?别着急,我们带着疑问往下看。

数据库是后台开发必考的知识点,而分库分表则是该领域的高频问题。什么是分库分表?简单来说,就是把过大的数据集合,切分成多份,就像一个大西瓜,切开才好下嘴腾讯面试题:数据库分库分表该怎么玩?

熟练掌握分库分表无论是找面试求职,还是在实际开发中,都会带来不错的收益。

腾讯面试题:数据库分库分表该怎么玩?


在面试中,关于分库分表知识点通常的问法有如下几种:

    1. 数据库数据过大,该怎么办?
    2. 如果让你设计一个预估有一亿数据的微服务,你将如何设计表?
    3. 全表语句查询特别慢,如何进行优化?

这些问题都可能指向分表的知识,下面牛牛就来对数据库的分表要点进行一些阐述。



01
分表的必要性
数据库数据会随着业务的发展不断增多,数据操作的开销也会越来越大。简单一条count语句,在1000w数据量下,也需要运行几秒甚至超过十秒。

同时,由于物理服务器的资源有限,数据量过大产生的慢查询,最终会拖累整个服务,整体数据处理能力都将遭遇瓶颈。

如果你的业务出现了这种问题,可以先去喝一杯

以上是关于腾讯面试题:数据库分库分表该怎么玩?的主要内容,如果未能解决你的问题,请参考以下文章

分库分表如何平滑过渡?

分库分表的几个面试题

读写分离与分库分表,分布式事务面试题

上亿数据怎么玩深度分页?兼容MySQL + ES + MongoDB

三年以上php开发经验常见面试题

面试8家公司,拿到8份 offer的Mysql100道面试题