1数据管理技术的回顾
数据管理技术主要经历了人工管理阶段、文件系统阶段和数据库系统阶段。随着数据应用领域的不断扩展,数据管理所处的环境也越来越复杂,目前广泛流行的数据库技术开始暴露出许多弱点,面临着许多新的挑战。
11 人工管理阶段
20 世纪 50 年代中期,计算机主要用于科学计算。当时没有磁盘等直接存取设备,只有纸带、卡片、磁带等外存,也没有 *** 作系统和管理数据的专门软件。该阶段管理的数据不保存、由应用程序管理数据、数据不共享和数据不具有独立性等特点。
12 文件系统阶段
20 世纪 50 年代后期到 60 年代中期,随着计算机硬件和软件的发展,磁盘、磁鼓等直接存取设备开始普及,这一时期的数据处理系统是把计算机中的数据组织成相互独立的被命名的数据文件,并可按文件的名字来进行访问,对文件中的记录进行存取的数据管理技术。数据可以长期保存在计算机外存上,可以对数据进行反复处理,并支持文件的查询、修改、插入和删除等 *** 作。其数据面向特定的应用程序,因此,数据共享性、独立性差,且冗余度大,管理和维护的代价也很大。
13数据库阶段
20 世纪 60 年代后期以来,计算机性能得到进一步提高,更重要的是出现了大容量磁盘,存储容量大大增加且价格下降。在此基础上,才有可能克服文件系统管理数据时的不足,而满足和解决实际应用中多个用户、多个应用程序共享数据的要求,从而使数据能为尽可能多的应用程序服务,这就出现了数据库这样的数据管理技术。数据库的特点是数据不再只针对某一个特定的应用,而是面向全组织,具有整体的结构性,共享性高,冗余度减小,具有一定的程序与数据之间的独立性,并且对数据进行统一的控制。
2大数据时代的数据管理技术
大数据(big data),或称巨量资料,指的是所涉及的资料量规模巨大到无法透过目前主流软件工具,在合理时间内达到撷取、管理、处理、并整理成为帮助企业经营决策更积极目的的资讯。大数据有 3 个 V,一是大量化(Volume),数据量是持续快速增加的,从 TB级别,跃升到 PB 级别;二是多样化(Variety),数据类型多样化,结构化数据已被视为小菜一碟,、音频、视频等非结构化数据正以传统结构化数据增长的两倍速快速创建;三是快速化 (Velocity),数据生成速度快,也就需要快速的处理能力,因此,产生了“1 秒定律”,就是说一般要在秒级时间范围内给出分析结果,时间太长就失去价值了,这个速度要求是大数据处理技术和传统的数据挖掘技术最大的区别。
21 关系型数据库(RDBMS)
20 世纪 70 年代初,IBM 工程师 Codd 发表了著名的论文“A Relational Model of Data for Large Shared DataBanks”,标志着关系数据库时代来临。关系数据库的理论基础是关系模型,是借助于集合代数等数学概念和方法来处理数据库中的数据,现实世界中的实体以及实体之间的联系非常容易用关系模型来表示。容易理解的模型、容易掌握的查询语言、高效的优化器、成熟的技术和产品,使得关系数据库占据了数据库市场的绝对的统治地位。随着互联网 web20 网站的兴起,半结构化和非结构化数据的大量涌现,传统的关系数据库在应付 web20 网站特别是超大规模和高并发的 SNS(全称 Social Networking Services,即社会性网络服务) 类型的 web20 纯动态网站已经显得力不从心,暴露了很多难以克服的问题。
22 noSQL数据库
顺应时代发展的需要产生了 noSQL数据库技术,其主要特点是采用与关系模型不同的数据模型,当前热门的 noSQL数据库系统可以说是蓬勃发展、异军突起,很多公司都热情追捧之,如:由 Google 公司提出的 Big Table 和 MapReduce 以及 IBM 公司提出的 Lotus Notes 等。不管是那个公司的 noSQL数据库都围绕着大数据的 3 个 V,目的就是解决大数据的 3个 V 问题。因此,在设计 noSQL 时往往考虑以下几个原则,首先,采用横向扩展的方式,通过并行处理技术对数据进行划分并进行并行处理,以获得高速的读写速度;其次,解决数据类型从以结构化数据为主转向结构化、半结构化、非结构化三者的融合的问题;再次,放松对数据的 ACID 一致性约束,允许数据暂时出现不一致的情况,接受最终一致性;最后,对各个分区数据进行备份(一般是 3 份),应对节点失败的状况等。
对数据的应用可以分为分析型应用和 *** 作型应用,分析型应用主要是指对大量数据进行分类、聚集、汇总,最后获得数据量相对小的分析结果; *** 作型应用主要是指对数据进行增加、删除、修改和查询以及简单的汇总 *** 作,涉及的数据量一般比较少,事务执行时间一般比较短。目前数据库可分为关系数据库和 noSQL数据库,根据数据应用的要求,再结合目前数据库的种类,所以目前数据库管理方式主要有以下 4 类。
(1)面向 *** 作型的关系数据库技术。
首先,传统数据库厂商提供的基于行存储的关系数据库系统,如 DB2、Oracle、SQL Server 等,以其高度的一致性、精确性、系统可恢复性,在事务处理方面仍然是核心引擎。其次,面向实时计算的内存数据库系统,如 Hana、Timesten、Altibase 等通过把对数据并发控制、查询和恢复等 *** 作控制在内存内部进行,所以获得了非常高的性能,在很多特定领域如电信、证券、网管等得到普遍应用。另外,以 VoltDB、Clustrix 和NuoDB 为代表的 new SQL 宣称能够在保持 ACDI 特性的同时提高了事务处理性能 50 倍 ~60 倍。
(2)面向分析型的关系数据库技术。
首先,TeraData 是数据仓库领域的领头羊,Teradata 在整体上是按 Shared Nothing 架构体系进行组织的,定位就是大型数据仓库系统,支持较高的扩展性。其次,面向分析型应用,列存储数据库的研究形成了另一个重要的潮流。列存储数据库以其高效的压缩、更高的 I/O 效率等特点,在分析型应用领域获得了比行存储数据库高得多的性能。如:MonetDB 和 Vertica是一个典型的基于列存储技术的数据库系统。
(3)面向 *** 作型的 noSQL 技术。
有些 *** 作型应用不受 ACID 高度一致性约束,但对大数据处理需要处理的数据量非常大,对速度性能要求也非常高,这样就必须依靠大规模集群的并行处理能力来实现数据处理,弱一致性或最终一致性就可以了。这时, *** 作型 noSQL数据库的优点就可以发挥的淋漓尽致了。如,Hbase 一天就可以有超过 200 亿个到达硬盘的读写 *** 作,实现对大数据的处理。另外,noSQL数据库是一个数据模型灵活、支持多样数据类型,如对图数据建模、存储和分析,其性能、扩展性是关系数据库无法比拟的。
(4)面向分析型的 noSQL 技术。
面向分析型应用的 noSQL 技术主要依赖于Hadoop 分布式计算平台,Hadoop 是一个分布式计算平台,以 HDFS 和 Map Reduce 为用户提供系统底层细节透明的分布式基础架构。《Hadoop 经典实践染技巧》传统的数据库厂商 Microsoft,Oracle,SAS,IBM 等纷纷转向 Hadoop 的研究,如微软公司关闭 Dryad 系统,全力投入 Map Reduce 的研发,Oracle 在 2011 年下半年发布 Big Plan 战略计划,全面进军大数据处理领域,IBM 则早已捷足先登“,沃森(Watson)”计算机就是基于 Hadoop 技术开发的产物,同时 IBM 发布了 BigInsights 计划,基于 Hadoop,Netezza 和 SPSS(统计分析、数据挖掘软件)等技术和产品构建大数据分析处理的技术框架。同时也涌现出一批新公司来研究Hadoop 技术,如 Cloudera、MapRKarmashpere 等。
3数据管理方式的展望
通过以上分析,可以看出关系数据库的 ACID 强调数据一致性通常指关联数据之间的逻辑关系是否正确和完整,而对于很多互联网应用来说,对这一致性和隔离性的要求可以降低,而可用性的要求则更为明显,此时就可以采用 noSQL 的两种弱一致性的理论 BASE 和 CAP关系数据库和 noSQL数据库并不是想到对立的矛盾体,而是可以相互补充的,根据不同需求使用不同的技术,甚至二者可以共同存在,互不影响。最近几年,以 Spanner 为代表新型数据库的出现,给数据库领域注入新鲜血液,这就是融合了一致性和可用性的 newSQL,这种新型思维方式或许会是未来大数据处理方式的发展方向。
4 结束语
随着云计算、物联网等的发展,数据呈现爆炸式的增长,人们正被数据洪流所包围,大数据的时代已经到来。正确利用大数据给人们的生活带来了极大的便利,但与此同时也给传统的数据管理方式带来了极大的挑战。
举两个例子吧:
1、上海浦东发展银行采用了Sybase高性能企业智能型关系数据库管理系统Adaptive Server Enterprise(ASE)及开发工具Sybase Power Buider、Power Designer已经正式应用在数据大集中项目的基金业务、外汇宝、ATM前置等业务系统中。
2、建行和工行都用informix。
3、还有一些银行用Oracle, DB2, TeraData 。
层次上严格、分层:数据库对数据 *** 作首先是分架构的,其次是分对象的,每一层有严格的权限控制,所以在层次上非常严格。 *** 作上严格:插入、更新、删除 *** 作的时候是分多种情况的,例如级联删除、触发器,每次执行检查数据完整性。严格按照参照完整性和用户定义完整性进行合理的 *** 作。 *** 作的有效性:每一步的数据库 *** 作都有严格的有效性审查,不过这个是数据库内部的建构思想,用户无需知道。
如果要用WEB方式来管理自己的mysql数据库,这是可以实现的,我们推荐用phpMyAdmin(这是一个Free software,不是一个商业软件)。
创建方法:
(1)下载并解压phpMyAdmin(可先到万网首页-->客户中心-->技术支持-软件下载处下载此软件,解压缩后将此软件上传至主机空间,即可使用此软件管理数据库 );
(2)修改configincphp文件内的设置,将其中的"用户名和密码"的值按下面的例子全部修改,并存盘;
如:$cfgServers[1]['user'] = 'u564321'; 将u564321改为您的用户名
$cfgServers[1]['password'] = 'abcd1234';将'abcd1234'改为您的密码
(3)完成修改之后,上传整个目录到htdocs目录(默认为phpMyAdmin,您可以根据需要进行修改);
或者您通过主机控制面板中的数据库管理功能也可以进行管理。
严格地说,数据库是“按照数据结构来组织、存储和管理数据的仓库”。在经济管理的日常工作中,常常需要把某些相关的数据放进这样的“仓库”,并根据管理的需要进行相应的处理。例如,企业或事业单位的人事部门常常要把本单位职工的基本情况(职工号、姓名、年龄、性别、籍贯、工资、简历等)存放在表中,这张表就可以看成是一个数据库。有了这个"数据仓库"我们就可以根据需要随时查询某职工的基本情况,也可以查询工资在某个范围内的职工人数等等。这些工作如果都能在计算机上自动进行,那我们的人事管理就可以达到极高的水平。此外,在财务管理、仓库管理、生产管理中也需要建立众多的这种"数据库",使其可以利用计算机实现财务、仓库、生产的自动化管理。分为事务管理数据库和地理信息数据库,其他数据库三类
在Oracle数据库中表空间是由段组成的 而段又是由盘区所组成的 通常情况下 在大型数据库中 合理选择盘区的管理方式 能够在很大程度上提高数据库的性能 并减轻数据库管理员的工作量 笔者对此事深有感触
一 盘区的管理方式
在Oracle数据库中盘区主要有两种管理模式 分别为目录盘区管理方式和局部盘区管理方式 目录盘区管理方式是一种比较老的管理模式 在这种管理模式下 数据库系统会跟踪数据目录中的自由和已用盘区 并利用递归的SQL语句来修改相关的内容 这种盘区管理模式效率比较低 现在很版本的 Oracle数据库系统虽然还支持这种管理模式 但是不建议使用 为此笔者认为 除非你现在使用的Oracle数据库系统比较旧 只支持目录盘区管理模式 否则的话 还是采用另外一种管理模式为好
另外一种管理模式就叫做局部盘区管理模式 在这种工作模式下 主要通过位图来跟踪盘区 从而消除了递归SQL带来的效率低下的问题 在 Oracle G以后的数据库系统中 都支持这种管理模式 而且是Oracle数据库推荐使用的管理方式 而这种管理方式 又可以分为Uniform与 Autoallocate两种 其中 Uniform是告诉数据库系统 利用相同的大小来分配和再分配盘区 此时数据库系统在分配盘区的时候都是以固定大小来分配对 而Autoallocate选项则是告诉数据库 根据实际情况来增量增加盘区的大小 如在Windows *** 作系统上部署Oracle数据库系统 其 *** 作系统的块大小一般为 KB 此时数据库系统在初始化的时候 会为刚开始的几个盘区(一般为 个盘区)分配比较小的空间 如可能只有 KB 当这个段占用的空间超过这个容量后数据库会再为其分配盘区 不过此时分配盘区的大小可能会 MB 如果还不够还需要增加盘区的话 那么这个盘区的大小可能会达到 MB甚至更多 这种分配方式有什么好处呢显而易见 当段中所含的数据量越大 由于后续分配对盘区比较大 为此这个段所含总的盘区数量在逐渐减少 从而易于管理 对数据库性能的提升也有很大的帮助
在选择采取哪种盘区管理方式时 笔者如下几个建议可供大家参考
一是一般情况下 局部盘区管理方式是数据库管理员的首选 除非为了跟以前的数据库兼容或者现在采用的数据库系统不支持这个局部管理方式 否则的话 笔者强烈建议采用这种盘区管理方式
二是在局部盘区管理方式下 有固定盘区与自动分配两种模式 此时该如何选择呢一般来说 这要看段所在的表空间的类型 如果这个段所在的表空间是临时表空间的话 那么段下面的盘区采用Uniform为好 如果在数据库中 大表空间与小表空间共存的情况下 则采用自动分配模式比较好 因为自动分配的算法能够让小段持有小盘区 而让大段采用大盘区 以免数据库拥有太多的盘区 所以一般这种管理方式 常用在小段与大段共存的一种情况 这有助于提升数据库的性能
三是需要注意一些限制的情况 如对于撤销表空间来说 其是不能够使用局部盘区管理模式下的Uniform管理方式 另外 虽然局部盘区管理方式与目录盘区管理方式可以利用系统提供的存储过程进行轻松的转换 但是其转换仍然受到一定的限制 如一般情况下 数据库管理员可以将一个持久表空间的管理模式从目录盘区管理方式转换为局部盘区管理方式 或者说进行相反的转换 但是 对于系统表空间和临时表空间来说比较特殊 他们只能够从低到高进行转换 而不能够从高到低进行转换 即指能够将系统表空间或者临时表空间从目录管理模式转换为局部盘区管理方式 而不能够进行相反的转换 所以对于系统表空间与临时表空间来说 在部署之前需要考虑清楚到底采用什么盘区管理方式 如果选择局部盘区管理方式的话 那么是没有后悔药可吃的 因为这两个表空间不能够进行相反的转换
二 局部盘区管理方式下的段空间管理方法
笔者之所以推荐使用局部盘区管理方式 除了以上所谈的原因外 还有一个重要的因素 在局部盘区管理方时下 在段空间的管理方式下也可以作文章 如果采取了局部盘区管理方式的话 数据库管理员可以选择是用手工或者自动的段空间管理方式
手工管理段空间的方式 主要是为了向后兼容性而保留的 在这种管理方式下 需要用到三个新的名词 分别为自由块列表(可以用来存储数据的块) PCT_FREE(规定块中必须留有的剩余空间以便后续更新块中数据的需要) PCT_USED(规定到块中的使用量达到多少时就不能够再存储数据) 这个手工管理方式的主要思路就是盘区中的块不能够全部存储 而需要留有一定的剩余空间 如此的话 如果这个块中的记录需要更改 如某个内容从 个字符更新到 个字符 那么更新后的纪录就还保存在同一个块中(因为需要更新的块还有一定的剩余空间) 而不会分块保存 从而可以提高数据库的性能 在每个插入或者更新 *** 作之后 数据库系统会比较这个数据块中的剩余自由空间与这个段的PCT_FREE设置 如果剩余空间已经不到这个值设置的时候 数据库系统就会把这个块从自由块列表中移除 如此的话 这个块以后就不能够再用来进行插入 *** 作 虽然有可能剩余的空间还可以插入一条记录 一般情况下只能够进行更新的 *** 作 然后再每次更新或者删除 *** 作之后 数据库系统同样会检查块中的已用空间与PCT_USED参数进行比较 如果更新或者删除 *** 作后 块的已用量低于这个参数设置的话 系统就会将这个块再放入到自由块列表中 后续系统可以对这个块进行插入 删除 更新等 *** 作 这种是数据库系统默认的段空间管理方式 但是需要明白一点 默认的管理方式并不是说数据库推荐使用这种方式 相反 在Oracle G以后的数据库系统中 Oracle官方推荐的是实用自动管理段空间的方式 而这里之所以要把手工管理设置为默认 主要是为了兼容性的考虑
如果采用自动管理方式的话 数据库系统使用位图而不是采用自由列来管理标识哪些数据块可用于插入 *** 作 那些块不可用 也就是说 如果采用自动管理方式的话 以上设置的一些参数将会被忽略 不过起管理的思路跟上面的是相同的 在确定某个块是否可以被进行插入 *** 作时 仍然会考虑到纪录的连续性 即会为块中数据的更新保留一定的空间 在自动管理方式下 数据库管理员不用费心的去考虑设置以上两个参数 数据库系统会根据实际情况自动进行调节 而这个控制的算法好比手工管理方式下复杂的多 所以采取字段管理段空间的方式 不仅可以减少数据库管理员的工作量 而且还可以提高数据库的性能
如果数据库管理员需要采用自动管理方式 那么需要注意以下几点
一是默认情况下 数据库采用的是手工管理段空间的方式 而不是自动管理段空间的方式 为此如果数据库管理员想使用自动管理段空间的模式时 必须要在建立表空间的时候进行明示 如可以通过如下的语句segment space management auto来告诉数据库系统采用自动管理表空间的方式 不过在采用这种段空间管理方式的时候 需要注意兼容性的问题
二是需要注意 某些表空间是不能够使用这种自动管理段空间的方是 如默认情况下 自动段空间管理方式下 不能够用户临时表空间与系统表空间 可见临时表空间 系统表空 撤销表空间在Oracle数据库中有一些比较特殊的限制 笔者在这里做一个小的总结 对于撤销表空间来说 不能够使用局部盘区管理模式下的autoallocate管理方式 即不能够采用可变的盘区管理方式 而对于临时表空间与系统表空间来说 他们不能够使用自动管理段空间的工作模式 而且在盘区管理方式上 只能够从低级向高级管理方式进行转换 而不能够进行相反的转换 所以在设置盘区与段空间管理方式的时候 这些限制需要引起数据库管理员的重视
lishixinzhi/Article/program/Oracle/201311/17768
分类: 电脑/网络 >> 程序设计 >> 其他编程语言
问题描述:
我买了MSSQL空间了,不知道MSSQL空间是怎么管理的?
我安装了SQL 2000了 企业管理器里面怎么 *** 作的?
IP地址是和空间一样的
数据库名和用户密码什么的是不是和conn一样啊?
解析:
你购买的mssql服务器
可以用本地的企业管理器来管理
管理方法
要输入sql的ip地址
用户名和密码不一定是conn中的用户名和密码
这个要看服务商提供的用户名和密码,
但是你的conn中的用户名和密码一定要和服务器提供的相同
否则你的程序会提示连接不上服务器。
以上就是关于大数据时代数据管理方式研究全部的内容,包括:大数据时代数据管理方式研究、银行数据库应使用什么管理方式、数据库管理信息的方式的特点是什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)