数据库是什么东西
- 提问者网友:佞臣
- 2021-04-14 08:08
- 五星知识达人网友:第幾種人
- 2021-04-14 09:13
- 1楼网友:蕴藏春秋
- 2021-04-14 14:35
- 2楼网友:一叶十三刺
- 2021-04-14 13:37
传统上,为了确保企业持续扩大的IT系统稳定运行,一般用户信息中心往往不仅要不断更新更大容量的IT运维软硬件设备,极大浪费企业资源;更要长期维持一支由数据库维护、服务器维护、机房值班等各种维护人员组成的运维大军,维护成本也随之节节高升。为此,企业IT决策者开始思考:能不能像拧水龙头一样按需调节的使用IT运维服务?而不是不断增加已经价格不菲的运维成本。
常用数据库
1. IBM 的DB2
作为关系数据库领域的开拓者和领航人,IBM在1977年完成了System R系统的原型,1980年开始提供集成的数据库服务器—— System/38,随后是SQL/DSforVSE和VM,其初始版本与SystemR研究原型密切相关。DB2 forMVSV1 在1983年推出。该版本的目标是提供这一新方案所承诺的简单性,数据不相关性和用户生产率。1988年DB2 for MVS 提供了强大的在线事务处理(OLTP)支持,1989 年和1993 年分别以远程工作单元和分布式工作单元实现了分布式数据库支持。最近推出的DB2 Universal Database 6.1则是通用数据库的典范,是第一个具备网上功能的多媒体关系数据库管理系统,支持包括Linux在内的一系列平台。
2. Oracle
Oracle 前身叫SDL,由Larry Ellison 和另两个编程人员在1977创办,他们开发了自己的拳头产品,在市场上大量销售,1979 年,Oracle公司引入了第一个商用SQL 关系数据库管理系统。Oracle公司是最早开发关系数据库的厂商之一,其产品支持最广泛的操作系统平台。目前Oracle关系数据库产品的市场占有率名列前茅。
3. Informix
Informix在1980年成立,目的是为Unix等开放操作系统提供专业的关系型数据库产品。公司的名称Informix便是取自Information 和Unix的结合。Informix第一个真正支持SQL语言的关系数据库产品是Informix SE(StandardEngine)。InformixSE是在当时的微机Unix环境下主要的数据库产品。它也是第一个被移植到Linux上的商业数据库产品。
4. Sybase
Sybase公司成立于1984年,公司名称“Sybase”取自“system”和“database” 相结合的含义。Sybase公司的创始人之一Bob Epstein 是Ingres 大学版(与System/R同时期的关系数据库模型产品)的主要设计人员。公司的第一个关系数据库产品是1987年5月推出的Sybase SQLServer1.0。Sybase首先提出Client/Server 数据库体系结构的思想,并率先在Sybase SQLServer 中实现。
5. SQL Server
1987 年,微软和IBM合作开发完成OS/2,IBM 在其销售的OS/2 ExtendedEdition 系统中绑定了OS/2Database Manager,而微软产品线中尚缺少数据库产品。为此,微软将目光投向Sybase,同Sybase 签订了合作协议,使用Sybase的技术开发基于OS/2平台的关系型数据库。1989年,微软发布了SQL Server 1.0 版。
6. PostgreSQL
PostgreSQL 是一种特性非常齐全的自由软件的对象——关系性数据库管理系统(ORDBMS),它的很多特性是当今许多商业数据库的前身。PostgreSQL最早开始于BSD的Ingres项目。PostgreSQL 的特性覆盖了SQL-2/SQL-92和SQL-3。首先,它包括了可以说是目前世界上最丰富的数据类型的支持;其次,目前PostgreSQL 是唯一支持事务、子查询、多版本并行控制系统、数据完整性检查等特性的唯一的一种自由软件的数据库管理系统.
7.mySQL
mySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被Sun公司收购。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。MySQL的官方网站的网址是: www.mysql.com
8.Access数据库 美国Microsoft公司于1994年推出的微机数据库管理系统。它具有界面友好、易学易用、开发简单、接口灵活等特点,是典型的新一代桌面数据库管理系统。其主要特点如下:
(1)完善地管理各种数据库对象,具有强大的数据组织、用户管理、安全检查等功能。
(2)强大的数据处理功能,在一个工作组级别的网络环境中,使用Access开发的多用户数据库管理系统具有传统的XBASE(DBASE、FoxBASE的统称)数据库系统所无法实现的客户服务器(Cient/Server)结构和相应的数据库安全机制,Access具备了许多先进的大型数据库管理系统所具备的特征,如事务处理/出错回滚能力等。
(3)可以方便地生成各种数据对象,利用存储的数据建立窗体和报表,可视性好。
(4)作为Office套件的一部分,可以与Office集成,实现无缝连接。
(5)能够利用Web检索和发布数据,实现与Internet的连接。 Access主要适用于中小型应用系统,或作为客户机/服务器系统中的客户端数据库。
9.FoxPro数据库
最初由美国Fox公司1988年推出,1992年Fox公司被Microsoft公司收购后,相继推出了FoxPro2.5、2.6和VisualFoxPro等版本,其功能和性能有了较大的提高。 FoxPro2.5、2.6分为DOS和Windows两种版本,分别运行于DOS和Windows环境下。FoxPro比FoxBASE在功能和性能上又有了很大的改进,主要是引入了窗口、按纽、列表框和文本框等控件,进一步提高了系统的开发能力。
数据库专业就业方向
数据库应用开发 (application development)
除了基本的SQL方面的知识,还要对开发流程,软件工程,各种框架和开发工具等等
数据库应用开发这个方向上的机会最多,职位最多,薪水一般
数据建模专家 (data modeler)
除了基本的SQL方面的知识,非常熟悉数据库原理,数据建模
负责将用户对数据的需求转化为数据库物理设计和物理设计
这个方向上在大公司(金融,保险,研究,软件开发商等)有专门职位,
在中小公司则可能由程序员承担。
商业智能专家 (business intelligence - BI)
主要从商业应用,最终用户的角度去从数据中获得有用的信息,
涉及OLAP (online analytical processing)
需要使用SSRS, cognos, crystal report等报表工具,或者其他一些数据挖掘,统计方面的软件工具
这个方面我不熟悉,不敢乱说(以免被拍砖,呵呵)
数据构架师 (Data Architect)
主要从全局上制定和控制关于数据库在逻辑这一层的大方向,
也包括数据可用性,扩展性等长期性战略,
协调数据库的应用开发,建模,DBA之间的工作。
这个方向上在大公司(金融,保险,研究,软件开发商等)有专门职位,
在中小公司或者没有这个职位,或者由开发人员,DBA负责。
数据库管理员 (database administrator - DBA)
数据库的安装,配置,调优,备份/恢复,监控,自动化等,
协助应用开发(有些职位还要求优化SQL,写存储过程和函数等)
这个方向上的职位相对少一些,但一般有点规模的公司还是会有这样的职位
数据仓库专家 (data warehouse - DW)
应付超大规模的数据,历史数据的存储,管理和使用,
和商业智能关系密切,很多时候BI和DW是放在一个大类里面的,
但是我觉得DW更侧重于硬件和物理层上的管理和优化。
存储工程师 (storage engineer)
专门负责提供数据存储方案,使用各种存储技术满足数据访问和存储需求,
和DBA的工作关系比较密切。
对高可用性有严格要求(比如通信,金融,数据中心等)的公司通常有这种职位,
这种职位也非常少。
性能优化工程师 (performance engineer)
专长数据库的性能调试和优化,为用户提供解决性能瓶颈方面的问题。
我知道至少IBM, 微软和Oracle都有专门的数据库性能实验室(database performance lab),
也有专门的性能优化工程师,负责为其数据库产品和关键应用提供这方面的技术支持。
对数据库性能有严格要求的公司(比如金融行业)可能会有这种职位。
因为针对性很强,甚至要求对多种数据库非常熟悉,所以职位极少。
高级数据库管理员 (senior DBA)
在DBA的基础上,还涉及上面3种职位的部分工作,具体包括下面这些:
对应用系统的数据(布局,访问模式,增长模式,存储要求等)比较熟悉。
对性能优化非常熟悉,可以发现并优化从SQL到硬件I/O,网络等各个层面上的瓶颈
对于存储技术相对熟悉,可能代替存储工程师的一些工作,
对数据库的高可用性技术非常熟悉(比如MSSQL的集群,ORACLE RAC/FailSafe, IBM的DPF, HADR等)
对大规模数据库有效进行物理扩展(比如表分区)或者逻辑扩展(比如数据库分区,联合数据库等)
熟悉各种数据复制技术,比如单向,双向,点对点复制技术,以满足应用要求。
灾难数据恢复过程的建立,测试和执行
这种职位一般只在对数据库要求非常高并且规模非常大(比如金融,电信,数据中心等)的公司需要,
而且这种公司一般有一个专门独立负责数据库的部门或组。
- 3楼网友:第幾種人
- 2021-04-14 12:36
可以把它看作为一个存放数据的容器
- 4楼网友:野味小生
- 2021-04-14 11:21
数据存储,数据管理。
- 5楼网友:一把行者刀
- 2021-04-14 09:58