数据库基本概念
参照b站【计算机三级数据库技术】
1.数据(data)是数据库中储存的基本对象
定义为:描述事物的符号序列
数据的种类:数字,文字,图形,图像,声音,及其他特殊符号
计算机中的数据类型
临时性数据
eg:在运行过程中在运行中产生,储存在内存中的数据,在断电后,内存中的数据会丢失。
持久性数据
eg:存储在磁盘中的数据,只要不经人为删改,将持久性保存在磁盘中。
数据的构成
型(Type):数据表示的类型,如:整型,字符型等
值(Value):给出符合型的值
2.数据库
数据库(database)简称DB
数据的集合,具有统一的结构形式并存放于统一的储存介质中,是多种应用数据的集成,并可被各个应用数据所共享
按数据所提供的数据形式存放
如:在关系数据库中,以二维表单的形式出现
3.数据库系统
数据库系统(Database System)简称DBS
指在计算机系统中引入数据库和数据库管理系统(DBMS)后的完整系统
在不引起混淆的前提下常常把数据库系统简称为数据库
实现有组织地,动态的储存大量数据提供数据管理和共享服务
组成:
- 数据库(数据)
- 数据库管理系统(软件)
- 数据库管理员(人员)
- 硬件平台:计算机和网络
- 软件平台:操作系统、数据库系统、开发工具、接口软件
4.数据库应用系统
数据库应用系统(Database Application System),简称DBAS
层级表现为:
- 应用软件
- 应用开发软件
- 数据库管理系统
- 操作系统
- 硬件
- 操作系统
- 数据库管理系统
- 应用开发软件
软件工程与数据库技术
软件工程:用工程化的思想来开发软件
软件工程是用工程、科学和数学的原则与方法开发、维护计算机软件的有关技术和管理办法。
软件工程由方法、工具和过程三部分组成
软件工程的三要素
- 方法
- 工具
- 过程
软件生存周期
一般来说,软件产品从定义开始,经过开发、使用和维护,直到最后退役的全过程称为软件生存周期。
数据库工程
数据库应用系统的开发是一项软件工程,但又有自己的特点,所以特称为“数据库工程”
数据库工程按内容分可以分成两个部分一部分是数据库设计,另一部分是相应的应用设计与实现。
数据库应用系统的设计与开发必须要有软件过程模型作为指导。
典型的软件开发模型有:瀑布模型、快速原型模型、螺旋模型等。
瀑布模型:遵循软件开发规则,跟瀑布一样,从上到下,从生命周期始到生命周期末。
快速原型模型:有现成样板为参照,快速复制成为基础,后续进行修缮细节处理。
螺旋模型:引入了风险控制过程。
DBAS生命周期模型
参照软件工程中软件开发瀑布模型原理,DBNS的生命周期由项目规划、需求分析、系统设计、实现与部署、运行管理与维护等5个基本活动组成。
根据DBAS的软件组成和各自功能,分为数据组织与储存设计、数据访问与处理设计、应用设计 三条设计主线,分别用于设计数据库、数据库事务和应用程序
根据数据库系统三级模式结构,DBAS设计阶段包括概念设计,逻辑设计,物理设计 三个步骤,每一步设计内容涵盖了三条设计主线
1.规划与分析
是DBAS生命周期的第一步,目标是面向实际应用和需求,确定整个数据库应用系统的目标和任务、确定整个数据库应用系统的目标和任务,从技术、操作和经济三个方面进行可行性分析,并制定合理的项目开发计划。
规划与分析的主要内容:
- 系统规划与定义:任务陈述、确定任务目标、确定范围与边界、确定用户视图
- 可行性分析:技术、经济、操作可行性、开发方案的选择
- 项目规划:项目团队、环境、活动、成本预算、进度计划
2.需求分析
准确了解与分析用户需求(包括数据与处理)
是最困难,最耗时间的一步
需求分析过程由需求获取、需求分析、需求描述与规范说明、需求验证等步骤组成
各种需求分析的主要工作:
- 数据需求分析
- 描述用户需要组织的信息内容形成数据字典
- 功能需求分析
- 数据处理需求分析、业务规则需求分析
- 性能需求分析
- 描述系统应当做到什么地步,数据响应时间、系统吞吐量、硬件资源等
- 其他需求
- 存储需求、安全性需求、备份与隔离需求等
3.系统设计
如果需求分析阶段的任务是解决“干什么”的问题,那么系统设计阶段的任务是确定“怎么干”。
系统设计包括
- 概念设计
- 数据库概念模型设计、系统总体设计
- 逻辑设计
- 数据库逻辑结构设计、应用程序概要设计、数据库事务概要设计
- 物理设计
- 数据库物理结构设计、数据库事务详细设计、应用程序详细设计
4.实现与部署
也称为DBAS的实施。需要根据设计结果建立数据库编写应用程序,继承DBAS软硬件,组成完整的DBAS
包括建立数据库结构,数据加载,事务和应用程序的编码及测试,系统集成、测试与运行,系统部署。
5.运行管理与维护(后期)
主要包括日常维护、系统监控与分析、系统性能调整、系统进化升级等。这些工作主要由DBA负责。
应用案例分析
1.案例概述
针对商场建立一个数据库应用系统,即商场经营管理系统。该系统应实现顾客管理、商品采购入库、商品销售、财务管理、人力资源管理和查询统计等大类功能。出于篇幅。忽略财务核算、退货、发票等功能。
2.案例业务功能需求及非功能需求
(1)会员网络查询本人积分情况并修改自己个人信息(顾客功能需求)
(2)等级供应商及其提供的商品信息(商品采购功能需求)
(3)系统应能支持顾客现金支付或银行卡刷卡方式支付(商品销售业务功能需求)
(4)对各类员工进行绩效考核,核定管理员工工资(人力资源管理功能需求)
(5)系统能支持商场的财务业务活动,如银行业务往来,生成财务报告等(财务管理需求)
(6)提供商场业务情况数据查询服务(查询统计管理功能需求)
(7)整个系统对基本销售业务实现秒级响应(性能需求)