分享一个后端实习最近比较高频的面试题

某头部大厂:十亿条数据如何从数据库下载并合并(假设十亿条数据进行了分库分表,且是分布式环境)?

某头部银行:一亿条数据如何删除其中几千万条(假设一亿条数据都在数据库一张表中,且是单机环境)?

都要求尽可能详细的说出流程和各种细节。

各位牛客大佬有什么好的答案没?

全部评论
GPT回答的:头部大厂处理十亿条数据下载并合并的流程和细节如下: (1)数据分片划分:将数据按照一定规则进行划分,每个分片的数据量不能过大,同时要考虑数据之间的依赖关系和分片之间的负载均衡问题。常用的划分方式包括按照数据ID或者时间戳进行范围划分等。 (2)并行下载和处理:可以使用多线程或分布式计算等技术手段来并行地下载和处理所有的数据分片,提高数据处理的效率。需要考虑到数据的同步、传输和安全性等问题,可以采用FTP、HTTP、RPC等协议和加密技术来保障数据传输的安全性。 (3)数据合并和去重:将所有分片的数据合并成一个完整的数据集,需要进行数据合并、去重、排序等操作。合并时需要注意数据的格式、字段对齐、数据类型的一致性等问题;去重时需要考虑到数据的唯一性约束和重复数据的处理方法;排序时需要根据具体需求进行排序字段和排序方式的选择等。 (4)数据存储和管理:最后将合并后的数据存储到目标数据库中,并进行数据管理和备份等操作。需要注意数据的一致性、安全性和可靠性等问题,可以采用数据库事务、备份、集群等技术手段来保障数据的完整性和可靠性。 头部银行删除一亿条数据中的几千万条的流程和细节如下: (1)备份数据:在删除之前,需要对数据库进行备份,以防误删或者数据丢失等情况发生。 (2)索引优化:对需要删除的数据进行索引优化,可以加快数据读取和删除操作的速度。 (3)分批次删除:每次删除一定数量的数据,根据具体情况可以动态调整每次删除的数据量。同时,需要注意数据删除的关联性和顺序,避免影响数据的一致性和完整性。 (4)监控和记录:对删除过程进行监控和日志记录,及时反馈删除进度和删除结果,方便后续排查和处理问题。 (5)分区、分表:可以采用分区、分表等技术手段来减小单张表的数据量,并降低删除操作对整个数据库的影响。需要根据具体需求选择合适的分区和分表策略,避免出现分区不均衡或者查询性能下降等问题。
5 回复 分享
发布于 2023-06-20 22:38 湖北
m
点赞 回复 分享
发布于 2023-06-20 19:33 浙江
m
点赞 回复 分享
发布于 2023-06-20 20:16 湖南
m
点赞 回复 分享
发布于 2023-06-20 20:55 广东
m
点赞 回复 分享
发布于 2023-06-21 11:53 上海
m
点赞 回复 分享
发布于 2023-06-21 18:16 陕西
m
点赞 回复 分享
发布于 2023-06-21 19:29 河北
点赞 回复 分享
发布于 2023-06-21 20:34 四川
m
点赞 回复 分享
发布于 2023-06-22 08:47 辽宁
m
点赞 回复 分享
发布于 2023-06-22 15:12 重庆
m
点赞 回复 分享
发布于 2023-06-23 13:03 河南
m
点赞 回复 分享
发布于 2023-07-06 08:37 陕西
m
点赞 回复 分享
发布于 2023-07-09 00:37 上海
m
点赞 回复 分享
发布于 2023-07-24 13:31 辽宁
m
点赞 回复 分享
发布于 2023-08-10 06:04 江西

相关推荐

排序中,发面经攒攒人品,希望早日 OC一面MySQL CPU飙高 如何排查?你们的服务具体部署在什么配置的机器上?整个系统的性能瓶颈是什么?讲一下 GC 垃圾回收。GC 垃圾回收时 CPU 大概会提升多少?如何排查的慢 SQL?MySQL 的索引结构是什么?详细讲一下 B+树。MySQL 的数据在 B+树上是如何存储的?Redis 的过期删除机制是什么?他的定时删除会发生冲突吗?Redis内存淘汰策略讲一下IO 多路复用,线程的资源占用大概是多少?select、poll、epoll 的区别。为什么 epoll 性能好?奇偶链表排序二面EPoll 是什么?同步 IO 和异步 IO 的区别在哪?如何将同步 IO 修改为异步 IO?常见的 IO 模式有哪些?这些 IO 模式有哪些区别?进程和线程的区别?GMP 模型中线程是一个什么样的角色?进程间的通信方式? 命名管道和匿名管道的区别。应用访问一块磁盘上的数据需要哪些步骤?讲一下上述过程中页表发生的变化。如何理解 DMA?设计一个数据库的表,需要遵循哪些原则?优化 MySQL插入 可以从哪几个角度进行优化?Socket 和 WebSocket 的区别?socket 的组成TCP 拥塞控制包括哪些阶段?如何判断 1亿个数某一个数是否存在,数的取值范围是 1 到 1 万亿。需要精确判断。字符串反转三面MySQL 锁机制讲一下。锁相关的这个使用上面有什么需要注意的吗?MySQL 读select的性能优化方案。MySQL 读写分离和水平扩展的方式。读多写少的场景,数据不经常发生变化,如何处理?redis 的性能受限于什么?如果需要对Redis性能进行扩展的话怎么做?Redis集群模式和主从模式有什么区别?集群模式下热 key 如何处理?如何保障缓存和数据库的一致性?删除缓存后的缓存击穿如何处理?zset 有了解过吗?跳表有什么好处?zrange 和zrangeby 的时间复杂度是多少?场景题:打赏排行榜大数乘法
点赞 评论 收藏
分享
21 173 评论
分享
牛客网
牛客企业服务