数据库的基本结构三个层次

原创 2007年07月30日 20:18:00
数据库是依照某种数据模型组织起来并存放二级存储器中的数据集合。这种数据集合具有如下特点:尽可能不重复,以最优方式为某个特定组织的多种应用服务,其数据结构独立于使用它的应用程序,对数据的增、删、改和检索由统一软件进行管理和控制。从发展的历史看,数据库是数据管理的高级阶段,它是由文件管理系统发展起来的。

数据库的基本结构分三个层次,反映了观察数据库的三种不同角度。

(1)物理数据层。它是数据库的最内层,是物理存贮设备上实际存储的数据的集合。这些数据是原始数据,是用户加工的对象,由内部模式描述的指令操作处理的位串、字符和字组成。

(2)概念数据层。它是数据库的中间一层,是数据库的整体逻辑表示。指出了每个数据的逻辑定义及数据间的逻辑联系,是存贮记录的集合。它所涉及的是数据库所有对象的逻辑关系,而不是它们的物理情况,是数据库管理员概念下的数据库。

(3)逻辑数据层。它是用户所看到和使用的数据库,表示了一个或一些特定用户使用的数据集合,即逻辑记录的集合。

数据库不同层次之间的联系是通过映射进行转换的。数据库具有以下主要特点:

(1)实现数据共享。数据共享包含所有用户可同时存取数据库中的数据,也包括用户可以用各种方式通过接口使用数据库,并提供数据共享。

(2)减少数据的冗余度。同文件系统相比,由于数据库实现了数据共享,从而避免了用户各自建立应用文件。减少了大量重复数据,减少了数据冗余,维护了数据的一致性。

(3)数据的独立性。数据的独立性包括数据库中数据库的逻辑结构和应用程序相互独立,也包括数据物理结构的变化不影响数据的逻辑结构。

(4)数据实现集中控制。文件管理方式中,数据处于一种分散的状态,不同的用户或同一用户在不同处理中其文件之间毫无关系。利用数据库可对数据进行集中控制和管理,并通过数据模型表示各种数据的组织以及数据间的联系。

(5)数据一致性和可维护性,以确保数据的安全性和可靠性。主要包括:①安全性控制:以防止数据丢失、错误更新和越权使用;②完整性控制:保证数据的正确性、有效性和相容性;③并发控制:使在同一时间周期内,允许对数据实现多路存取,又能防止用户之间的不正常交互作用;④故障的发现和恢复:由数据库管理系统提供一套方法,可及时发现故障和修复故障,从而防止数据被破坏 

数据库层级结构实现

主要参考了,这两篇文章: 层次关系数据库表的设计,无线层次 在数据库中存储层级结构 总的来说主要就是两大类方法 (1)自关联外键引用 就是加一个属性是parent_id存储,父亲的id也存下来。 ...
  • u010087886
  • u010087886
  • 2016-04-02 11:37:39
  • 3459

数据库设计的基本步骤

数据库设计的基本步骤 按照规范设计的方法,考虑数据库及其应用系统开发全过程,将数据库设计分为以下6个阶段 1.需求分析 2.概念结构设计 3.逻辑结构设计 4.物理结构设计 5.数据库实施...
  • huyr_123
  • huyr_123
  • 2017-03-11 15:09:25
  • 14432

数据库的三种模式结构

       数据库的三种模式分别为外模式、模式、内模式。       模式描述的是数据的全局逻辑结构,外模式描述的是数据的局部逻辑结构。对应与同一个模式可以有任意多个外模式。在数据库中提供两级映象功...
  • suwait
  • suwait
  • 2007-03-14 00:38:00
  • 2577

树形结构 数据库表设计

转载:逻辑数据库设计 - 单纯的树(递归关系数据) 相信有过开发经验的朋友都曾碰到过这样一个需求。假设你正在为一个新闻网站开发一个评论功能,读者可以评论原文甚至相互回复。   这个需求并不...
  • tiantiandjava
  • tiantiandjava
  • 2015-04-30 09:46:09
  • 38951

典型数据库架构设计与实践 | 架构师之路

本文将介绍数据库架构设计中的一些基本概念,常见问题以及对应解决方案.
  • zyw_java
  • zyw_java
  • 2017-06-01 21:39:24
  • 1420

关系型数据库工作原理-数据结构(3)

本文翻译自Coding-Geek文章:《 How does a relational database work》。 原文链接:http://coding-geek.com/how-database...
  • ylforever
  • ylforever
  • 2016-04-29 07:07:15
  • 12138

数据库(表结构)设计技巧及注意事项

库设计: 1、数据库名称要明确,可以加前缀或后缀的方式,使其看起来有业务含义,比如数据库名称可以为Business_DB(业务数据库)。 2、在一个企业中,如果依赖很多产品,但是每个产品都使用同一套用...
  • Truong
  • Truong
  • 2014-06-10 13:39:07
  • 17408

使用Navicat for MySQL数据库结构同步和数据同步的方法

有的时候会有线上数据库和测试数据库两个不同的版本,在开发的过程中,往往会在某个库中添加或者删除一些表或者注释,之前都是手动删除某个表,然后重新导入最新的表结构,那样不是很方便,往往会有很大的限制。 ...
  • c910511
  • c910511
  • 2016-12-02 17:30:33
  • 9820

数据库的架构设计与性能优化

本文首发于阿里云&《程序员》杂志联合出品的《凌云》专刊中。 作者: 杭州湖畔网络技术经理 王鑫鹏 杭州湖畔网络技术有限公司是一家专业提供SaaS化电商ERP服务的创业公司,主要用户群体为经...
  • liu870915
  • liu870915
  • 2016-07-05 15:07:16
  • 2860

数据库软件架构设计些什么

2015-11-02 58沈剑 架构师之路 缘起:受@萧田国 萧总邀请,上周五晚上在“高效运维1号群”内分享了《58同城数据库软件架构设计与实践》(这个topic今年在数据库大会上分享过...
  • zhaifengmin
  • zhaifengmin
  • 2015-11-02 22:53:43
  • 1432
收藏助手
不良信息举报
您举报文章:数据库的基本结构三个层次
举报原因:
原因补充:

(最多只允许输入30个字)