- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据库应用介绍
数据库应用介绍(孙靖)
2011-12-12
数据库的分类
关系数据库(RDBM)
非关系数据库(NoSQL)
关系数据库的特点
数据库事务一致性;
数据库的写实时性和读实时性;
复杂的SQL查询,特别是多表关联查询。
关系数据库的问题
传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,例如:
1、对数据库高并发读写的需求;
2、对海量数据的高效率存储和访问的需求;
3、对数据库的高可扩展性和高可用性的需求。
NoSQL数据库
一、满足极高读写性能需求的Key-Value数据库:Redis,Tokyo Cabinet, Flare,高性能Key-Value数据库的主要特点就是具有极高的并发读写性能。
二、满足海量存储需求和访问的面向文档的数据库:MongoDB,CouchDB,面向文档的非关系数据库主要解决的问题不是高性能的并发读写,而是保证海量数据存储的同时,具有良好的查询性能。
三、满足高可扩展性和可用性的面向分布式计算的数据库:Cassandra,Voldemort。
大中型数据库
Oracle(Oracle公司)
DB2(蓝色巨人IBM)
Sybase(Sybase公司,已被SAP收购)
SQL Server(微软公司)
小型数据库
Foxpro(原为Fox Software公司的产品,后被微软收购)
Adaptive Server Anywhere(Sybase)
Access(微软)
MySQL(MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被SUN公司收购。而2009年,SUN又被Oracle收购)
嵌入式数据库
SQLite(开源)
Berkeley DB(开源,Sleepycat Software,2006年2月,Oracle收购了Sleepycat Software。)
Firebird(开源)
SQLCE(SQL Server的CE版本)
数据仓库
定义:数据仓库是面向主题的、集成的、稳定的、不同时间的数据集合,用以支持经营管理中的决策制定过程。
1 面向主题(Subject Oriented)的数据集合
数据仓库通常围绕一些主题,如“产品”、“销售商”、“消费者”等来进行组织。数据仓库关注的是决策者的数据建模与分析,而不针对日常操作和事务的处理。
2 集成(Integrated)的数据集合
数据仓库通常是结合多个异种数据源构成的,异种数据源可能包括关系数据库、面向对象数据库、文本数据库、Web数据库、一般文件等。
3 时变(Time Variant)的数据集合
数据仓库中包含时间元素,它所提供的信息总是与时间相关联的。数据仓库中存储的是一个时间段的数据,而不仅仅是某一个时刻的数据。
4 非易失(Nonvolatile)的数据集合
数据仓库总是与操作环境下的实时应用数据物理地分离存放,因此不需要事务处理、恢复和并发控制机制。数据仓库里的数据通常只需要两种操作:初始化载入和数据访问,因此其数据相对稳定,极少或根本不更新。
数据库与数据仓库的区别:
数据仓库的出现,并不是要取代数据库。目前,大部分数据还是用关系数据库管理系统来管理的:
数据库是面向事务的设计,数据仓库是面向主题设计的;
数据库一般存储在线交易数据,而数据仓库存储的一般是历史数据;
数据仓库的数据一般由数据库的数据经过一定的规则转换得到的;
数据库设计是尽量避免冗余,一般采用符合范式的规则来设计,数据仓库在设计上有意引入冗余,采用反范式的方式来设计。数据库是为了捕获数据而设计,数据仓库是为了分析数据而设计。
数据库的选择
一般小型的C/S程序多使用Anywhere、Access等数据库;
大型的C/S和B/S程序多使用SQL Server、Oracle、DB2等数据库;
小型的网站多采用开源的MySQL数据库(Apache+MySQL+PHP)。
常用数据库程序开发工具
VB:VB开发效率高,代码执行效率一般,但是入门和学习速度快,有较好的学习氛围、帮助书籍和帮助文档。
PB:是开发大型MIS及各类数据库跨平台应用的首选;多媒体和网络功能与其他工具相比较弱。PB最大的优势就是Datawindow技术的成熟和方便。
C#:是微软推出的一种基于.NET框架的、面向对象的高级编程语言。C#由C语言和C++派生而来,继承了其强大的性能,同时又以.NET 框架类库作为基础,拥有类似VB的快速开发能力。
VC:从功能上讲除了跨平台应用外什么都可开发;从开发效率角度讲只局限于开发windows系统应用、可重用组件及驱动程序。其自身的基础语言的普
文档评论(0)