LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

忘掉数据库

admin
2012年9月11日 23:4 本文热度 3741

发布时间:2012-04-05 15:48:55 来源:软件服务社

2010年的时候,我们就曾谈起过设计财务软件采用哪种数据库的问题,F12.2发布后,看到一些朋友对采用MySql有点担心,担心数据量大了之后性能是否有问题,所以再说一下我们的想法。


数据库是基础,而财务软件又极为重要,所以我们提前进行了非常慎重的考虑,对包括MySqlPostgreSql等开源数据库和SQL ServerOracleSybase等商业数据库都进行了全面的分析,比如对PostgreSql我们还进行了几个月的实际开发测试。最终选择了MySql,主要原因是:


1、开源、免费:这一点十分重要。我们的产品是完全免费的,但如果需要使用一个费用高昂的商业数据库,那么用户就只有二个选择:要么花大笔的银子,要么用盗版,这都不是我们希望看到的,我们希望用户能自由、免费、光明正大的使用。


2、跨平台:这一点可以保证用户不依赖于某种操作系统,您可以用windows,也可以用linux。如果做不到这一点,那么用户也只能有二个选择:要么高价购买windows server,要么用盗版。这同样是不行的。


3、性能:这是第一位重要的因素。但MySql的性能实际上远优于多数人的想象,而且由于它是开源的,因此,必要时我们可以进行针对性的优化。


有人担心MySql数据量大了之后性能是否有问题,这种担心往往来自于一些软件商的宣传,因为很多软件商为了宣传其产品如果强大,张嘴就胡喷什么OracleDB2SQL Server之类的,仿佛运行在OracleDB2SQL Server之上才显示它们的产品如何强大、复杂,也好象只有OracleDB2SQL Server之类的数据库才能支持他们如此“强大”的产品。


但实际上,数据库的性能很大程度取决于能否使用好。


举一个身边的例子:淘宝的数据量是非常大的,他们最初使用MySql,后来性能hold不住了,几年前改成了Oracle,当时好了一段时间,但后来发现到一定程度后,Oracle也出现难以解决的瓶颈,于是最终放弃了Oracle、又改回MySql。当然,他们对MySql进行了一些优化,结果取得了非常好的效果。现在他们使用的就是MySql,即使是在光棍节促销那种大并发量、大数据量的情况下,依然表现得非常给力。


又比如:我们以前使用的用友NC,那是用友号称最高端的产品,使用的是商业数据库,但在数据库中只有2000多员工信息的情况下,查询一个员工信息居然要用几十秒,这是数据库的问题吗?显然是使用的问题。使用不好,用什么大型数据库都白搭。


再说一个去年我们遇到的事情:我们有一个北京的用户福连家,是一家母婴用品专业销售企业。使用我们的产品换掉了他们原来的OA等系统后,感觉很好,就问起我们进销存,说他们现在的系统花了好几十万,但系统性能差到什么程度呢:白天没人敢做统计分析,因为极慢,只要有几个人做分析系统就死了,所以只好让IT部天天晚上在别人下班后才敢做一些分析,而且晚上也极慢,经常只能等一个通宵。后来他们的IT经理带着营运总监等几个人来看我们现在的系统,我们大约介绍了一下我们现有的数据量:在库品种数11万种,当前在用品种数3万多种,年销售记录数X亿条,年销售额N亿元,当前数据库中保存了三年多的数据。他们估了一下,这个数据量是他们的十倍以上。我们按他们的要求做了各种数据分析,结果很多他们要做5分钟、10分钟甚至更长时间的分析我们几乎都在5秒内解决,最多的也不过15秒,而且数据分析深度、广度比他们的需求更高。我们所用的是一台性能不到他们服务器性能50%的一台老机器,并且当时还有近200个同时在线的其他员工在处理各种工作。他们的总监当时大怒,让IT经理用手机把过程录下来,要回去找那个软件商算账(好笑的是,这位IT经理由于天天晚上加班、被折腾得实在受不了,就问那个软件商为什么用着那么好的服务器、数据量也不大,性能却比我们差这么多,结果对方回复:人家牛呗!)。其实这种事情没什么奇怪,因为很多问题我们经历过,我们知道问题在哪里。根本问题不在于使用什么数据库,而是在于怎样使用,在于优秀的算法。


在财务软件开发过程中,我们也遇到过性能不好的情况,比如开始有的功能要用20多秒,但这不是MySql的问题,我们调整了算法后,0.5秒内就解决了。现在,我们已经全面评估了所有环节,我们知道有哪些地方可能成为瓶颈,但可以确认,没有任何问题会成为我们的障碍。


如果有一天,有人告诉我们说自己公司的规模太大了、数据量太大了、程序慢得难以忍受了,我们倒真的很希望遇上这样的挑战,那时我们会非常高兴地立刻给您解决,而且是免费的。但我们相信不会遇到能阻碍我们的问题,我们相信自己的数学能力解决这些事情不是有八成或九成的把握,而是有百分之百的把握。


我们采用MySql还有一个原因是出于整体性考虑,目前OAHRPBTCCRM等各个系统都是基于MySql的,所以,财务系统等产品采用同样的数据库,可以保持非常好的整体性,我们希望能给用户提供整体的、全面的、可持续的解决方案。正是因为有这样的设计考虑,所以您现在看到的是完整而统一的F-air,而不是象用友All-in-One那种假整合的骗人玩艺。
很多人担心MySql在Oracle手中会不会越来越差甚至走向闭源,其实这根本不需要考虑,MySql现在就已经有很多非常优秀的分支,如XtraDB、MariaDB、Percona,现有的代码都可以很容易迁移过来。产生MySql并不需要Oracle,有Oracle也阻挡不了开源数据库的发展,所以您根本不必考虑地球上是否存在一个叫Oracle的东西。


您完全不需要担心什么数据库的问题,实际上,用户根本不用费心考虑这些事情、只管使用就可以了,具体的技术问题应当是开发者负责的。不只是软件,任何产品都应当这样。如果做不到这一点,那就是开发者的失职。我们甚至一直努力在使用手册中尽可能不提TomcatMySql、数据库等名词。用户要处理的工作很多,不应当再让用户考虑或担心这些问题。这样可以让用户有更多时间去优化管理流程和核心业务,或者去爬山、睡觉、看电影……


该文章在 2012/9/11 23:04:41 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved