用数据库做个管理系统 SQL实战新手入门:数据库管理系统
SQL实战新手入门:数据库管理系统
数据库管理系统
什么是数据库管理系统?它包揽了一切 管理数据的存储 安全性 可伸缩性 提供了一组工具以便输入数据和从数据库中取出数据等 在选择一个DBMS时 需要考虑这些问题 下面几个小节简要地介绍了其中一些需要考虑的因素
存储容量
所选择的DBMS是否能满足当前和将来的需要?如果只是想存储喜欢的菜谱或者管理家庭的藏书 那么采用一个桌面型数据库(例如Microsoft Access)就够了 当需要存储百万兆字节级别的信息(例如最近 年纽约证券交易所的金融交易信息)时 则应该采用一个企业级的DBMS 例如Oracle Microsoft SQL Server或者IBM DB
用户数量
如果你是数据库唯一的用户 那么也许并不需要数据库具有某些专门设计用于支持并发数据使用的功能 例如 当前版本的Microsoft Access最大支持 个并发用户(在实践中 实际的并发数量取决于很多因素 包括网络 带宽和处理能力等) 如果使用高级的群集技术 那么在诸如Oracle这样的企业级DBMS中 用户的数量在理论上并没有什么限制
安全性
数据应该达到什么样的安全级别?如果你最喜欢的菜谱被偷走 你可能并不会为此特别烦恼 但是对于我们的银行信息或健康信息 则要求尽可能安全(对于各种数据资料应该执行哪一个级别的保护要有一定的规章制度) 企业级DBMS与桌面型数据库两者之间的一个重要区别在于健壮的 精细粒度的安全实现 Microsoft Access数据库的一个简单文件比起基于服务器的 具有多级保护的IBM DB 数据库来说 它的安全性相对较低
性能
数据库需要多快的速度?对于一个股票交易平台 在获取信息时可以等待几分钟还是必须具有亚秒级的响应能力?这一问题的答案与并发用户数和可伸缩性有关 某些DBMS天生就比其他DBMS要慢 因此在处理速度要求较高的环境中不应该采用这样的数据库
可伸缩性
正如Yogi Berra所说 预言是困难的 特别是关于未来的预言 数据库必须能够适应商业需求的变化 尽管没有人可以预见所有的未来 但可以根据可能的情形和行业趋势作出一些有把握的猜测 商业需求会发生改变(例如业务发展壮大或者企业并购) 数据库也需要随之而改变 可以打赌的是 数据的生存期将比存储它们的数据库还要长 操作系统(例如大型机 UNIX/Linux Windows)可能会发生改变 程序设计环境(COBOL C/C++ Java Net)可能发生改变 相关规则也可能发生改变 但数据必须持久 这并不完全是因为情感的原因
对于所有这些因素 任何一种现代企业级RDBMS都可以获得一个良好的成绩 最终 商业需求将决定技术的选择 对于规模较大的数据库产品的部署 需要听取专家的意见 另外还需要有资质的数据库管理员来确保数据库保持最佳的状态 一旦掌握了数据库语言 就可以获取数据并将其转换为信息 然后从这些信息中获得我们所需的知识
成本

当然 在考虑安装和操作数据库的同时 考虑到数据库的成本因素也是很重要的 对于一个企业级DBMS 数据库厂商的售价可能高达数十万美元 而对于一个开源的DBMS 可能可以免费获取 请记住 天下没有免费的午餐 开源的DBMS可能在当前可以节省费用 但是在专业经验 时间 工具的可用性以及维护成本方面的代价很快就会超过节省的费用 对于选择的每一种DBMS 必须考虑其总成本(total cost of ownership TCO)
返回目录SQL实战新手入门
编辑推荐
Oracle索引技术
高性能MySQL
lishixinzhi/Article/program/SQL/201311/16494