卢冯是一家互联网创业型企业的老总,他最近比较烦,一张技术部门的人申请需要增加带宽和购买新的服务器的报告摆在了他的面前;而在3个月以前,他记得已经给公司增加了带宽和两台服务器,没想到这么快就不够用了,尽管公司的业务的确有很大增长,但不应该这么快就反应到系统上吧,他百思不得其解。卢冯所在的公司是一个互联网企业,通过网站提供服务,类似于百度的知道,不过是一个细分的专业“知道网站”。公司网站的技术基于ruby,后台采用了开源数据库Mysql。
卢冯对公司的技术部门产生深刻的怀疑和不信任,于是通过关系找到一些技术上的朋友对他们公司的网络和系统进行诊断。诊断结果让他出了一声冷汗: 公司近2年的数据处在危险之中,缺乏有效安全的保护机制,几乎没有任何备份措施,急需聘请专业的DBA调优和管理数据;访问压力和瓶颈主要集中在数据库部分,网络带宽浪费很严重。
记者了解到,卢冯公司面临的问题,其实是大多数创业型公司在成长初期所遭遇的普遍问题。
“我并不懂技术,选择Ruby开发网站,只是听说这种技术很新颖,开发网站快速灵活。另外,后台数据库的选择考虑到成本原因就直接使用了开源的产品。”
“那是否对数据的增长有一个预期呢?或者说,对数据库以及存储有一个整体的规划?”记者问道。
“这个并没有,当时抢时间,就是为了快速上线,很多东西都没有想清楚。业务上的,技术上的等。”
技术选型的迷失
今天的大型企业,几年甚至几十年前,都是中小企业,如果能将这些企业在信息化过程中的酸甜苦辣书写出来,给今天的中小企业以借鉴,则善莫大焉。
初创型企业和中小型企业,计算成本往往是第一要务。然而,大部分企业在计算过程中都会错误将成本计算为“产品购买成本”,所以很多中小企业在建设业务系统时,直接使用开源免费数据库甚至盗版的数据库软件产品。
实际上大部分的企业已经意识到,企业信息化运营必须考虑综合成本。在数据库产品的使用上,一个产品的成本应该包含以下几个部分:购买成本+服务成本+管理维护成本+开发成本,即经常说的总体拥有成本。
据记者了解,开源数据库Mysql的服务成本的价格并不在Oracle之下,并且购买服务还相对比较困难。
“中小企业选择数据的范围其实可以很大,即便是在考虑初期成本的前提下。除了开源的产品以外,还有很多商业数据库的免费版本,都是不错的选择。不管是选择何种产品,一定需要对自己的数据规模有个估计和规划。否则即便是你选择最贵的商业和数据库,系统也会问题百出。”ITPUB社区的一位数据库专家在采访中表示。
然而,大部分企业还是迷失在开源产品和缺乏服务的产品之中。卢冯听从专家的建议以后,马上在市场上招聘Mysql的数据库管理和维护人员,然而在底薪1W的条件下,招聘了2个多月,也没有招聘到胜任的技术人员。另外,目前IT人才市场上,懂得Ruby的人才也十分稀缺,不得不花高薪聘请。这样整个下来,人力的成本马上急剧上升;而这一切,都是企业初创时期没有想到的。
卢冯的公司也有一次数据库故障的惊心动魄的经历,当时由于停电故障,放在廊坊机房的数据库服务器down机了,当时排了2个工程师出差过去维修,卢冯诊断刚开始,工程师告诉他可能是数据库文件损坏了,卢冯急得赶紧从北京又赶过去,折腾了2天多,数据库才回复,整个网站的服务才恢复正常。
“这次整个下来,公司损失比较大,特别是成长到一定阶段的网站,用户对服务的稳定性要求较高,这种在用户心目中造成的对网站的不良影响,代价也较大。”卢冯谈到此事,显得很是激动。“如果当初选择商业数据库的话,服务肯定会好一些,至少不会让我的业务停止达到3天的时间。”
卢冯公司的案例显然不仅仅是是否采纳使用商业数据库的问题,技术运行维护管理也是一个很重要的原因。