百科问答小站 logo
百科问答小站 font logo



如果谷歌、腾讯、阿里、百度这样的企业被删库跑路,会发生什么? 第1页

  

user avatar   Ivony 网友的相关建议: 
      

其实现代的巨型互联网公司已经很少用传统的关系型数据库了,很多时候压根儿就不存在很多初级运维理解的所谓的库的东西……


所谓的库其实只是一个命名空间,物理上很大可能与其他的什么库是共享一个资源池的。然后删库这个动作,本质上只是释放命名空间出来,很多云服务都支持不立即释放磁盘空间和其他资源(反正没那么快卖出去)。而且很多时候删库这种动作有很多保护,例如要求先把所有连接断开之类。再加上存储的快照和日志体系理论上可以恢复到任意时刻的数据……

所以你先确定他们真的有个库给你去删才行……


================================================


某些皇帝用金锄头的评论实在令人捧腹……

其实排名靠前的三个答案已经说了巨型互联网公司的三个保护数据的方式和思路,而巨型互联网公司的做法也是这三个方向的结合。

首先是 @pansz 提出的容灾和备份,其实这个是最容易想到的,也是最容易起施行的,只要是个互联网公司都会做,知乎肯定也做了。但是对于巨型互联网公司来说这是不够的。

然后是 @某火山 提出的公司内控和管理方式,这对于大公司基本也是都有的,尤其是金融机构和传统大型公司最喜欢这一套。这个钱公司到一定规模也会做。

最后就是 @绅士喵 说的,从物理层面上说,数据不可能凭空消失,你要灭失数据需要时间,否则别人几秒钟就恢复了。拆硬盘有RAID,拔电源有UPS,再不济还有异地容灾,删索引可以重建。要毁灭只能覆写,物理层面上决定了需要时间。

巨型互联网公司都是这三者全都有,容灾备份不可少,公司内控要搞好,最后,软件层面上,删库也不会立即释放资源,事实上一键就能恢复(不过到这一步已经要有人滚蛋了)。


当然还有很多程序员问,不用关系型数据库那用什么?问出这个问题的程序员分两种,一种是真心求知的,他压根儿就不知道怎么用别的数据库。另一种就是反问,好像地球上没有关系型数据库就没法写程序了。

我本来打算全部拉黑的,后来想想正好可以通过这些人找出来哪些互联网公司特不靠谱……早日发现CSDN这种SB公司……


正是因为这些程序员的存在,才使得关系型数据库的需求不断增加,各大厂都搞出了自己的分布式关系型数据库方案(你咋不想想没有这些方案之前Google用什么存数据,以及Google真的用吗?)。

目前成熟的一般来说是Amazon基于MySql搞的计算机集群和存储集群分开的方案Aurora,理论上因为两个集群都可以无限扩容从而达到无限扩容的目的。高明之处在于独立出存储集群来解决强一致性问题。

但是数学上一致性和分布式矛盾是不可解决的,也就是CAP不可能。所以无论如何强一致性都有极限。更何况强一致性数据库在海量数据下还有另一个不可突破的矛盾,即查询性能、写性能和一致性不能同时满足。因为查询性能高意味着增加索引,增加索引意味着写入性能差,要同时保住查询和写入性能,那就不得不异步分布式和缓存,强一致性就得不到保证。

或者简单说就是,一致性要求读写的地方在一起,而一个物理设备的吞吐量是有上限的,所以科技不发展的话三者矛盾不可调和



最后,任何一个靠谱点儿的互联网公司都不可能让运维人员直接用数据库管理客户端操作数据库的。查数据有专门的查询工具,维护有专门的维护系统。要执行的维护性SQL(高权限用户)是需要先预制SQL,多级审批,放到自动化运维库,然后按照计划在窗口时间执行的,你写个DROP语句进去过了审一批人都要滚蛋的……

更进一步地说,关键性业务数据存放的地方去压根儿没有destory这个选项,只有degrade,也就是服务降级,从SSD挪到磁盘去,压缩打包到磁带。删除?压根儿不存在的。


其实要瘫痪一个巨型互联网公司,开挖掘机就可以了,你想着怎么去删库外行了不是……


user avatar   pansz 网友的相关建议: 
      

其实有个恰当的比喻解释这个,就好像问以前99平的房子是二房,为什么现在会有人把99平的房子做成三房,买大点不行吗?

答案:因为大了,比较费钱。




  

相关话题

  假如宇宙是一个程序,怎么找出她的bug? 
  如何评论马云在淘宝投诉工商总局网监司后的言论:假货不由淘宝造成但认了? 
  谷歌当年为什么退出中国大陆?之后为什么不重返大陆? 
  请问大家一开始是怎么学编程的? 
  如何看待路透社报道:腾讯正在与美国谈判保留在 Riot 和 Epic 的股份? 
  用毛泽东思想怎样理解马云所说“地主斗倒了,农民没有富起来”? 
  你遇到过哪些高质量的 C++ 面试? 
  顶尖的淘宝模特是怎样的存在? 
  为什么每次中美有摩擦,苹果总会被网友拿出来抵制,而微软,谷歌,英特尔,高通,英伟达等公司却没事? 
  如何通俗地解释 C、C++、C#、Java、JavaScript、HTML、Python的用处? 

前一个讨论
为什么华为和阿里巴巴能成为行业规则制定者,而腾讯却不行?
下一个讨论
2020 年 618 买机械键盘有哪些建议和推荐?





© 2024-05-17 - tinynew.org. All Rights Reserved.
© 2024-05-17 - tinynew.org. 保留所有权利