数据库在软件开发中的地位是怎样的
1个回答
展开全部
某种程度上,一个计算机软件的运行本质上是数据流动的过程,即Dataflow,不过一般用workflow这个词,给我感觉它们是类似的,不过软件系统里也有不流动的数据,比如你代码里定义的临时变量什么的。
数据库的查询过程是告诉DBMS要什么结果而不是告诉DBMS怎么做,然后由DBMS生成查询方案,即Dataflow。历史的查询算法积累分析告诉我们,DBMS自动生成的查询计划比人写的代码一般靠谱(前提是你查询语句写对了)。所以从这个角度上,如果在软件开发中如果能借鉴数据库中的Dataflow的一些算法,指不定对于整个系统的设计优化是有帮助的。事实上大型企业软件workflow优化也是数据库研究社区里面的一个研究热点。过两天我去听个这方面的报告,回来想起来也许会补充补充。
不过,实际上,对于软件开发,还是有什么工具就用什么工具。在把一个软件从无到有做出来的第一步,什么都重要,别想太多,这个时候数据库就是个存储平台。在第二歩的优化过程中,做出来再想优化,指不定这套东西有点用,前提是你能驾驭这些算法,并且有足够的空间让你去施展这套东西
数据库的查询过程是告诉DBMS要什么结果而不是告诉DBMS怎么做,然后由DBMS生成查询方案,即Dataflow。历史的查询算法积累分析告诉我们,DBMS自动生成的查询计划比人写的代码一般靠谱(前提是你查询语句写对了)。所以从这个角度上,如果在软件开发中如果能借鉴数据库中的Dataflow的一些算法,指不定对于整个系统的设计优化是有帮助的。事实上大型企业软件workflow优化也是数据库研究社区里面的一个研究热点。过两天我去听个这方面的报告,回来想起来也许会补充补充。
不过,实际上,对于软件开发,还是有什么工具就用什么工具。在把一个软件从无到有做出来的第一步,什么都重要,别想太多,这个时候数据库就是个存储平台。在第二歩的优化过程中,做出来再想优化,指不定这套东西有点用,前提是你能驾驭这些算法,并且有足够的空间让你去施展这套东西
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询