数据结构历史
Posted 数据库
篇首语:不戚戚于贫贱,不汲汲于富贵。本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据结构历史相关的知识,希望对你有一定的参考价值。
数据结构历史
关于数据结构
数据结构是一种高效使用数据的一种方法。
这是前辈总结出来处理数据的一整套路数。一部分现成的东西拿来用是可以的。
但是具体问题由于其具体性的限制要具体去写。用就是第一步:要结合你处理的问题适合那种结构具体设计自己的数据存储,第二步:根据存储的特点进行相应的操作实现功能。
数据结构对编程人员意义重大,理由是你会了解对复杂数据的处理方法,更是对编程思维和逻辑的最佳锻炼,数据结构有自己的应用场合,举个例子:如果你只会数组,要求你编写一个游戏引擎,要求满足20000人同时在一个服务器上,你每对一个人进行行走服务器都要记录你的状态,这时候你只会用数组存取数据,你把每个人的数据都按照数组的原则依次从头到尾更新内容,那么估计你这个游戏就很少有人有足够的耐心等待你后台处理的结果,这时候需要用到哈希表(一种常用数据结构)存取。数据库是用来提供数据的,然而前台的运算就要借助数据结构等功夫了。
学数据结构在于勤思考,动手写程序,多读优秀的程序。
数据库的概述和发展历史
数据模型是数据库系统的核心和基础。因此,对数据库技术发展阶段的划分应该以数据模型的发展演变作为主要依据和标志。总体说来,数据库技术从开始到现在一共经历了三个发展阶段:第一代是网状、层次数据库系统,第二代是关系数据库系统,第三代是以面向对象数据模型为主要特征的数据库系统。
第一代包括网状和层次数据库系统,是因为它们的数据模型虽然分别为层次和网状模型,但实质上层次模型只是网状模型的特例而已。这二者都是格式化数据模型,都是在60年代后期研究和开发的,不论是体系结构、数据库语言,还是数据的存储管理,都具有共同特征,所以它们应该划分为一代。
第二代数据库系统支持关系数据模型。关系模型不仅具有简单、清晰的优点,而且有关系代数作为语言模型,有关系数据理论作为理论基础。因此关系数据库具有形式基础好、数据独立性强、数据库语言非过程化等特点,这些特点是数据库技术发展到了第二代的显著标志。虽然关系数据模型描述了现实世界数据的结构和一些重要的相互联系,但是仍然不足以抓住和表达数据对象所具有的丰富而重要的语义,因而它属于语法模型。
第三代数据库系统的特征是数据模型更加丰富,数据管理功能更为强大,能够支持传统数据库难以支持的新的应用需求。
(一) 特点
数据库管理系统将具有一定结构的数据组成一个集合,它主要具有以下几个特点:
1. 数据的结构化 数据库中的数据并不是杂乱无章、毫不相干的,它们具有一定的组织结构,属于同一集合的数据具有相似的特征。
2. 数据的共享性 在一个单位的各个部门之间,存在着大量的重复信息。使用数据库的目的就是要统一管理这些信息,减少冗余度,使各个部门共同享有相同的数据。
3. 数据的独立性 数据的独立性是指数据记录和数据管理软件之间的独立。数据及其结构应具有独立性,而不应该去改变应用程序。
4. 数据的完整性 数据的完整性是指保证数据库中数据的正确性。可能造成数据不正确的原因很多,数据库管理系统通过对数据性质进行检查而管理它们。
5. 数据的灵活性 数据库管理系统不是把数据简单堆积,它在记录数据信息的基础上具有很多的管理功能,如输入、输出、查询、编辑修改等。
6. 数据的安全性 根据用户的职责,不同级别的人对数据库具有不同的权限,数据库管理系统应该确保数据的安全性。
(二) 功能
一个好的数据库管理系统应具有很多功能,其中最基本的有以下3种:
1. 数据定义 数据库管理系统提供定义数据类型和数据存储形式的功能。每个记录的每个字段中的信息为一个数据。因记录的信息不同,其数据类型也应不同。通过定义数据类型,可以在一定程度上保证数据的完整性。最简单的要求是,完整性规则应保证不能在定义为数字的字段中存放文本类型的数据。
2. 数据操作 数据库管理系统提供多种处理数据的方式。例如,在一张表中查找信息或者在几个相关的表或文件中进行复杂的查找;使用相应的命令更新一个字段或多个记录的内容;用一个命令对数据进行统计,甚至可以使用数据库管理系统工具进行编程,以实现更加复杂的功能。
3. 数据控制 数据库管理系统对数据提供一定的保护措施,从而保证在多个用户共享数据时,只有被授权的用户才能查看或修改数据。
数据集市的数据结构
数据集市中数据的结构通常被描述为星型结构或雪花结构。一个星型结构包含两个基本部分——一个事实表和各种支持维表。 事实表描述数据集市中最密集的数据。在电话公司中,用于呼叫的数据是典型的最密集数据;在银行中,与账目核对和自动柜员机有关的数据是典型的最密集数据。对于零售业而言,销售和库存数据是最密集的数据等等。
事实表是预先被连接到一起的多种类型数据的组合体,它包括:一个反映事实表建立目的的实体的主键,如一张订单、一次销售、一个电话等等,主键信息,连接事实表与维表的外键,外键携带的非键值外部数据。如果这种非键外部数据经常用于事实表中的数据分析,它就会被包括在事实表的范围内。事实表是高度索引化的。事实表中出现30到40条索引非常常见。有时实事表的每列都建了索引,这样作的结果是使事实表中的数据非常容易读取。但是,导入索引所需的资源数量必须为等式提供因数。通常,事实表的数据不能更改,但可以输入数据,一旦正确输入一个记录,就不能更改此记录的任何内容了。 维表是围绕着事实表建立的。维表包含非密集型数据,它通过外键与事实表相连。典型的维表建立在数据集市的基础上,包括产品目录、客户名单、厂商列表等等。
数据集市中的数据来源于企业数据仓库。所有数据,除了一个例外,在导入到数据集市之前都应该经过企业数据仓库。这个例外就是用于数据集市的特定数据,它不能用于数据仓库的其他地方。外部数据通常属于这类范畴。如果情况不是这样,数据就会用于决策支持系统的其他地方,那么这些数据就必须经过企业数据仓库。
数据集市包含两种类型的数据,通常是详细数据和汇总数据。 数据集市包含的第二种类型数据是汇总数据。分析人员通常从星型结构中的数据创建各种汇总数据。典型的汇总可能是销售区域的月销售总额。因为汇总的基础不断发展变化,所以历史数据就在数据集市中。但是这些历史数据优势在于它存储的概括水平。星型结构中保存的历史数据非常少。
数据集市以企业数据仓库为基础进行更新。对于数据集市来说大约每周更新一次非常平常。但是,数据集市的更新时间可以少于一周也可以多于一周,这主要是由数据集市所属部门的需求来决定的。
数据库发展历史是什么
数据库对于普通人来讲
就可以简单理解为有固定格式的数据集合,
专门为解决某一类数据保存和计算问题而存在的,
就像单位用的各种各样的报表和单据,
只不过软件会帮你保存管理这些单据和报表在计算机上,
帮你计算求和等等操作 生成你想要的各种数据报告。
利用数据库软件和计算机的高速运算特性,
可以大大提高工作效率和正确性。
减少工作时间成本和人力成本。
没有他们也可以,但是你不得不用手工的办法处理数据,
不管数据量多少都一样。
数据库的发展历史分哪几个阶段
数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。
数据管理技术的发展经历了四个阶段:人工管理阶段、文件系统阶段、数据库阶段和高级数据库技术阶段。——常识计算机篇。
数据库的应用系统数据结构是什么
看看你要找的这里有没有?※数据库的概念与用途?数据库的概念什么是数据库呢?当人们从不同的角度来描述这一概念时就有不同的定义(当然是描述性的)。
例如,称数据库是一个"记录保存系统"(该定义强调了数据库是若干记录的集合)。又如称数据库是"人们为解决特定的任务,以一定的组织方式存储在一起的相关的数据的集合"(该定义侧重于数据的组织)。
更有甚者称数据库是"一个数据仓库"。当然,这种说法虽然形象,但并不严谨。
严格地说,数据库是"按照数据结构来组织、存储和管理数据的仓库"。在经济管理的日常工作中,常常需要把某些相关的数据放进这样"仓库",并根据管理的需要进行相应的处理。
例如,企业或事业单位的人事部门常常要把本单位职工的基本情况(职工号、姓名、年龄、性别、籍贯、工资、简历等)存放在表20.6.3中,这张表就可以看成是一个数据库。有了这个"数据仓库"我们就可以根据需要随时查询某职工的基本情况,也可以查询工资在某个范围内的职工人数等等。
这些工作如果都能在计算机上自动进行,那我们的人事管理就可以达到极高的水平。此外,在财务管理、仓库管理、生产管理中也需要建立众多的这种"数据库",使其可以利用计算机实现财务、仓库、生产的自动化管理。
J.Martin给数据库下了一个比较完整的定义:数据库是存储在一起的相关数据的集合,这些数据是结构化的,无有害的或不必要的冗余,并为多种应用服务;数据的存储独立于使用它的程序;对数据库插入新数据,修改和检索原有数据均能按一种公用的和可控制的方式进行。当某个系统中存在结构上完全分开的若干个数据库时,则该系统包含一个"数据库集合"。
? 数据库的优点使用数据库可以带来许多好处:如减少了数据的冗余度,从而大大地节省了数据的存储空间;实现数据资源的充分共享等等。此外,数据库技术还为用户提供了非常简便的使用手段使用户易于编写有关数据库应用程序。
特别是近年来推出的微型计算机关系数据库管理系统dBASELL,操作直观,使用灵活,编程方便,环境适应广泛(一般的十六位机,如IBM/PC/XT,国产长城0520等均可运行种软件),数据处理能力极强。数据库在我国正得到愈来愈广泛的应用,必将成为经济管理的有力工具。
数据库是通过数据库管理系统(DBMS-DATA BASE MANAGEMENT SYSTEM)软件来实现数据的存储、管理与使用的dBASELL就是一种数据库管理系统软件。? 数据库结构与数据库种类数据库通常分为层次式数据库、网络式数据库和关系式数据库三种。
而不同的数据库是按不同的数据结构来联系和组织的。1.数据结构模型(1)数据结构所谓数据结构是指数据的组织形式或数据之间的联系。
如果用D表示数据,用R表示数据对象之间存在的关系集合,则将DS=(D,R)称为数据结构。例如,设有一个电话号码簿,它记录了n个人的名字和相应的电话号码。
为了方便地查找某人的电话号码,将人名和号码按字典顺序排列,并在名字的后面跟随着对应的电话号码。这样,若要查找某人的电话号码(假定他的名字的第一个字母是Y),那么只须查找以Y开头的那些名字就可以了。
该例中,数据的集合D就是人名和电话号码,它们之间的联系R就是按字典顺序的排列,其相应的数据结构就是DS=(D,R),即一个数组。(2)数据结构种类数据结构又分为数据的逻辑结构和数据的物理结构。
数据的逻辑结构是从逻辑的角度(即数据间的联系和组织方式)来观察数据,分析数据,与数据的存储位置无关。数据的物理结构是指数据在计算机中存放的结构,即数据的逻辑结构在计算机中的实现形式,所以物理结构也被称为存储结构。
本节只研究数据的逻辑结构,并将反映和实现数据联系的方法称为数据模型。目前,比较流行的数据模型有三种,即按图论理论建立的层次结构模型和网状结构模型以及按关系理论建立的关系结构模型。
2.层次、网状和关系数据库系统(1)层次结构模型层次结构模型实质上是一种有根结点的定向有序树(在数学中"树"被定义为一个无回的连通图)。例如图20.6.4是一个高等学校的组织结构图。
这个组织结构图像一棵树,校部就是树根(称为根结点),各系、专业、教师、学生等为枝点(称为结点),树根与枝点之间的联系称为边,树根与边之比为1:N,即树根只有一个,树枝有N个。这种数据结构模型的一般结构见图20.6.5所示。
图20.6.4 高等学校的组织结构图 图20.6.5 层次结构模型图20.6.5中,Ri(i=1,2,…6)代表记录(即数据的集合),其中R1就是根结点(如果Ri看成是一个家族,则R1就是祖先,它是R2、R3、R4的双亲,而R2、R3、R4互为兄弟),R5、R6也是兄弟,且其双亲为R3。R2、R4、R5、R6又被称为叶结点(即无子女的结点)。
这样,Ri(i=1,2,…6)就组成了以R1为树根的一棵树,这就是一个层次数据结构模型。按照层次模型建立的数据库系统称为层次模型数据库系统。
IMS(Information Manage-mentSystem)是其典型代表。(2)网状结构模型?在图20.6.6中,给出了某医院医生、病房和病人之间的联系。
即每个医生负责治疗三个病人,每个病房可住一。
相关参考
怎样查找股票的历史市盈率数据查找股票的历史市盈率数据,股票市盈率常被股民用来评估股价水平是否合理,因为市盈率是个实时变动的值,所以,投资者需要知道怎么查找股票的历史市盈率数据:1、登录正规股票软件或官
1.数据库发展历史是什么数据库对于普通人来讲就可以简单理解为有固定格式的数据集合,专门为解决某一类数据保存和计算问题而存在的,就像单位用的各种各样的报表和单据,只不过软件会帮你保存管理这些单据和报表在
一、双色球历史同期10期历史数据2003年2月16日,福利彩票双色球正式在中国上市销售。双色球第十期历史数据如下:第2003010期开奖结果:红球:010208131724蓝球:13第2004010期
一、(加500分)求七星彩所有历史数据://15868/qxclssj.asp?这个网站很全的。就看你能不能给我加分了。还有一个有2003年的数据。://95003/cp/notice/ty_list
一、美国债务上限的历史数据以下是美国政府借款上限历史数据的总结。(单位:10亿美元)统计日期债务上限债务上限相当于GDP比例2011年2010年14,29092.1%2009年12,10084.1%2
ifix5.5如何做历史数据库pSpace在企业信息化的作用对于现代工业企业,如何能使决策者随时查看生产过程数据,以便快速地做出更为灵活的商业决策,是企业信息化建设的关键,在企业MES所关注的各项资源
一、大数据的陷阱作文李娜再度夺得大满贯,超越了张德培的华人大满贯纪录,非举国体制下的奇迹造就了举国的愉悦。在总结李娜成功因素的时候,也再次看到了这样的言论:是大数据起到了重要的作用。但这次李娜夺冠,最
请问怎样用Java获取股票行情历史数据?新浪、搜狐、百度财经都可以publicclassStockConnectionpublicstaticvoidmain(String[]args)URLur=n
1.请问怎样用Java获取股票行情历史数据publicclassStockConnectionpublicstaticvoidmain(String[]args)URLur=null;try//搜狐股
1.哪里能查到历史的AQI数据历史:汉语词语,含义有三:1.记载和解释作为一系列人类进程历史事件的一门学科。2.沿革,来历。3.过去的事实。历史,简称史,一般指人类社会历史,它是记载和解释一系列人类活