关于数据库选择,我的一些浅显的看法
早几年开始,互联网界就掀起了轰轰烈烈的去IOE, 这oracle 就成了万人唾.很多很多公司的开发/运维,听到你用oralce,鄙夷的眼神似能杀人.
今天,我从自己的角度,来掰扯掰扯,我的建议:
根据 公司数据库净数据(不含日志、回滚等)
初创阶段, 小于 100G 的, 尽管用mysql;
发展阶段, 100G ~ 10T, 建议用oracle; 超过5T时,考虑整体 微服务+mysql 的方案,并开始实施;
喷发阶段, 大于10T, 整体的改造: 包括开发、中间件,整个架构改造,使用mysql;
理由如下:
初创阶段, 公司人员少,资金有限,所需功能不多,mysql 免费且已用,完全能够胜任. 在这个级别,公司没有dba,开发人员也能搞定,实在有难题,可以找人搞定(比如我,嘿嘿嘿--可免费嗷,要排队).
发展阶段, 资金聚集,资深人员多了起来,业务功能要求多,数据量爆发,mysql就吃力了. 动辄 好多个表的关联,是mysql的弱项.而oracle咧,自动优化向导,完备的监控系统,实在是好货.
有问了,oracle不免费啊? 从老板角度看: mysql 上开发周期长--时间成本; 维护起来费劲,可能要多个dba甚至值班--人力成本(随便一个初级dba,年薪等成本地够支付oracle永久费用了);这个阶段,用mysql未必省钱;
喷发阶段, 大概有多个数据中心了,及好多好多个数据库+一群dba,oracle在超快速部署方面,确实是相对较弱的,这个阶段oralce授权费方面也不少,整体大改造不但解决掉本身的问题,还能输出技术赚外快,比如bat的A公司,当然不错.
公司和人一样,在不同的阶段,有不同的需求,不要鳄梨火了就鄙视鸭梨.
网红不是万能药,根据自身情况,选择适合的,才是最好的.