‘壹’ 数据仓库与数据挖掘的内容简介
《数据仓库与数据挖掘》主要介绍数据仓库和数据挖掘技术的基本原理和应用方法,全书共分为12章,主要内容包括数据仓库的概念和体系结构、数据仓库的数据存储和处理、数据仓库系统的设计与开发、关联规则、数据分类、数据聚类、贝叶斯网络、粗糙集、神经网络、遗传算法、统计分析、文本和Web挖掘。《数据仓库与数据挖掘》既重视理论知识的讲解,又强调应用技能的培养。每章首先介绍算法的主要思想和理论基础,之后利用算法去解决实例中给出的任务,而且对于数据仓库的组建方法和多数章节中的数据挖掘算法,《数据仓库与数据挖掘》都使用Microsoft sql Server 2005进行了操作实现。《数据仓库与数据挖掘》通过对具体实例的学习和实践,使读者掌握数据仓库和数据挖掘中必要的知识点,达到学以致用的目的。
‘贰’ 求推荐数据库商业智能方面的书籍。
我也想学,也想问你的这些问题啊。
‘叁’ 会pl/sql,想学MySQL,什么书适合
Oracle816开发指南
Oracle816系统安全与网络管理指南
Orcale816应用系统使用指南
《ORACLE8 PL/SQL程序设计》
《Oracle8数据库Web开发指南》
《 数据仓库 》
《Oracle数据库系统应用实例集锦与编程技巧》
‘肆’ 《SQL基础教程》pdf下载在线阅读,求百度网盘云资源
《SQL基础教程》(MICK)电子书网盘下载免费在线阅读
资源链接:
链接:
书名:SQL基础教程
作者:MICK
译者:孙淼
豆瓣评分:9.0
出版社:人民邮电出版社
出版年份:2013-8-1
页数:294
内容简介:本书介绍了关系数据库以及用来操作关系数据库的SQL语言的使用方法,提供了大量的示例程序和详实的操作步骤说明,读者可以亲自动手解决具体问题,循序渐进地掌握SQL的基础知识和技巧,切实提高自身的编程能力。在每章结尾备有习题,用来检验读者对该章内容的理解程度。另外本书还将重要知识点总结为“法则”,方便大家随时查阅。
本书适合完全没有或者具备较少编程和系统开发经验的初学者,也可以作为大中专院校的教材及企业新人的培训用书。
作者简介:MICK
日本资深数据库工程师,致力于商业智能和数据仓库的开发。为日本着名的IT杂志WEB+PRESS撰写专栏。着作有《达人SQL完全指南》、《达人SQL设计终极指南》,译着有《SQL谜题》、《SQL权威指南》等。
译者简介:
孙淼
专业从事对日软件设计和研发工作,曾于2007年至2009年赴日学习工作。精通J2EE和数据库开发,热衷于品尝和制作美食。
罗勇
专业从事对日软件设计和研发工作,曾于2007年至2009年赴日学习工作。精通J2EE和数据库开发。译有《NoSQL数据库入门》、《明解C语言》等。
‘伍’ 数据库系统及应用的图书目录
第1章 数据库系统概论
1.1 数据库的基本概念和相关术语
1.1.1 数据、数据管理与数据处理
1.1.2 数据库基本概念
1.1.3 关系列表和关系数据库
1.2 数据库技术的产生与发展
1.2.1 数据管理的发展
1.2.2 数据和数据管理技术
1.2.3 数据管理技术的3个发展阶段
1.3 数据库系统的一般构成
1.3.1 数据库系统的一般构成
1.3.2 数据库系统的模式构成
1.3.3 数据库系统的物理组成
1.3.4 数据库管理系统的功能
第2章 关系数据模型
2.1 数据模型
2.1.1 概述
2.1.2 数据模型的基本要素
2.1.3 数据模型的发展
2.2 关系数据模型
2.2.1 基本概念
2.2.2 关系数据模型的数据结构
2.2.3 数据操作
2.2.4 数据约束
2.2.5 关系数据模型的优缺点
2.3 关系
2.3.1 域、笛卡儿积和关系
2.3.2 关系的性质
2.3.3 关系模式
2.3.4 关系完整性
2.4 关系代数
2.4.1 集合运算
2.4.2 关系演算
第3章 结构化查询语言SQL基础
3.1 SQL简介
3.1.1 SQL的历史
3.1.2 SQL的优点
3.2 数据库的操作
3.2.1 数据库的创建
3.2.2 数据库的修改
3.2.3 数据库的删除
3.3 数据表的操作
3.3.1 数据类型
3.3.2 表的创建
3.3.3 表结构的修改
3.3.4 表的删除
3.4 表中数据的操作
3.4.1 SQL语方的基本查询
3.4.2 多表间的连接查询
3.4.3 嵌套查询
3.4.4 联合查询
3.4.5 数据插入
3.4.6 数据修改
3.4.7 数据删除
3.5 视图
3.5.1 视图的基本概念
3.5.2 创建视图
3.5.3 删除视图
3.5.4 更新视图
3.6 索引
3.6.1 索引的概念
3.6.2 索引的分类
3.6.3 建立索引的原则
3.6.4 创建索引
3.6.5 删除索引
第4章 数据库完整性
4.1 数据库完整性概述
4.2 完整性约束的分类
4.3 完整性约束的定义
4.3.1 Primary Key约束
4.3.2 UNIQUE 约束
4.3.3 NOT NULL 约束
……
第5章数据库安全
第6章数据库恢复技术
第7章并发控制
第8章数据库设计理论
第9章数据库应用设计方法
第10章 数据库开技术
第11章 数据仓库技术
第12章 数据挖掘技术
第13章 地理信息系统和空间数据库
第14章 主流数据库产品介绍
附录A HIS案例
参才文献
‘陆’ 有哪些数据仓库相关的经典书籍或论文
可以去参考一下sql 2005/2008数据仓库中的数据立方体的构建。先了解怎么构建后,再开发会好一点,MS也提供了很多接口可以用的,我们的毕业论文的实现部分就用到,希望能帮到你
‘柒’ 108如何从优化sQL人手提高数据仓库的ETL效率
目前,国内的大中型企业基本都具有四年以上计算机信息系统应用经验,积累了大量可分析的业务数据,这些信息系统中的数据需要通过搭建数据仓库平台才能得到科学的分析,这也是近几年数据仓库系统建设成为IT领域热门话题的原因。
数据仓库ETL过程的主要特点是:面对海量的数据进行抽取;分时段对大批量数据进行删除、更新和插入操作;面对异常的数据进行规则化的清洗;大量的分析模型重算工作;有特定的过程处理时间规律性,一般整个ETL过程需要在每天的零点开始到6点之前完成。所以,针对ETL过程的优化主要是结合数据仓库自身的特点,抓住需要优化的主要方面,针对不同的情况从如何采用高效的SQL入手来进行。
目前数据仓库建设中的后台数据库大部分采用Oracle,以下的SQL采用Oracle的语法来说明,所有的测试在Oracle9i环境中通过,但其优化的方法和原理同样适合除Oracle之外的其他数据库。
在海量数据表中,基本每个表都有一个或多个的索引来保证高效的查询,在ETL过程中的索引需要遵循以下使用原则:
(1) 当插入的数据为数据表中的记录数量10%以上时, 首先需要删除该表的索引来提高数据的插入效率,当数据全部插入后再建立索引。
(2) 避免在索引列上使用函数或计算,在WHERE子句中,如果索引列是函数的一部分,优化器将不使用索引而使用全表扫描。举例:
低效: SELECT * ROM DEPT WHERE SAL * 12 > 25000;
高效: SELECT * FROM DEPT WHERE SAL > 25000/12;
(4) 索引列上用>=替代>
高效: SELECT * FROM EMP WHERE DEPTNO >=4
低效: SELECT * FROM EMP WHERE DEPTNO >3
两者的区别在于, 前者DBMS将直接跳到第一个DEPT等于4的记录而后者将首先定位到DEPTNO=3的记录并且向前扫描到第一个DEPT大于3的记录。
(5) 函数的列启用索引方法,如果一定要对使用函数的列启用索引,Oracle9i以上版本新的功能:基于函数的索引
(Function-Based Index)是一个较好的方案,但该类型索引的缺点是只能针对某个函数来建立和使用该函数。
CREATE INDEX EMP_I ON EMP (UPPER( ENAME)); /*建立基于函数的索引*/
SELECT * FROM EMP WHERE UPPER(ENAME) = ‘BLACKSNAIL’; /*将使用索引*/
当在海量数据表中进行数据的删除、更新和插入操作时,用游标处理的效率是最慢的方式,但它在ETL过程中的使用又必不可少,而且使用有着及其重要的地位,所以游标的正确使用尤为重要。
对数据仓库维表的数据进行维护时,因为需要保证维表ID的一致性,所以采用游标的是数据维护完整性的最好方式。由于它的效率低,如果按照普通的方式将无法处理大数据量的维表数据维护(一般是指10万条记录以上的维表),以下是处理这种情况的有效方式:
(1) 在数据抽取的源表中使用时间戳,这样每天的维表数据维护只针对更新日期为最新时间的数据来进行,大大减少需要维护的数据记录数。
‘捌’ 新手SQL数据库管理员,在没人带的情况下应该怎么做。
严格地说,数据库是“按照数据结构来组织、存储和管理数据的仓库”。在经济管理的日常工作中,常常需要把某些相关的数据放进这样的“仓库”,并根据管理的需要进行相应的处理。例如,企业或事业单位的人事部门常常要把本单位职工的基本情况(职工号、姓名、年龄、性别、籍贯、工资、简历等)存放在表中,这张表就可以看成是一个数据库。有了这个"数据仓库"我们就可以根据需要随时查询某职工的基本情况,也可以查询工资在某个范围内的职工人数等等。这些工作如果都能在计算机上自动进行,那我们的人事管理就可以达到极高的水平。此外,在财务管理、仓库管理、生产管理中也需要建立众多的这种"数据库",使其可以利用计算机实现财务、仓库、生产的自动化管理。J.Martin给数据库下了一个比较完整的定义:数据库是存储在一起的相关数据的集合,这些数据是结构化的,无有害的或不必要的冗余,并为多种应用服务;数据的存储独立于使用它的程序;对数据库插入新数据,修改和检索原有数据均能按一种公用的和可控制的方式进行。当某个系统中存在结构上完全分开的若干个数据库时,则该系统包含一个“数据库集合”。
数据库系统阶段60年代后,随着计算机在数据管理领域的普遍应用,人们对数据管理技术提出了更高的要求:希望面向企业或部门,以数据为中心组织数据,减少数据的冗余,提供更高的数据共享能力,同时要求程序和数据具有较高的独立性,当数据的逻辑结构改变时,不涉及数据的物理结构,也不影响应用程序,以降低应用程序研制与维护的费用。数据库技术正是在这样一个应用需求的基础上发展起来的。数据库技术有如下特点:* 面向企业或部门,以数据为中心组织数据,形成综合性的数据库,为各应用共享。* 采用一定的数据模型。数据模型不仅要描述数据本身的特点,而且要描述数据之间的联系。* 数据冗余小,易修改、易扩充。不同的应用程序根据处理要求,从数据库中获取需要的数据,这样就减少了数据的重复存储,也便于增加新的数据结构,便于维护数据的一致性。* 程序和数据有较高的独立性。* 具有良好的拥护接口,用户可方便地开发和使用数据库。* 对数据进行统一管理和控制,提供了数据的安全性、完整性、以及并发控制。数据库日常维护(参考) 数据库日常维护工作是系统管理员的重要职责。其内容主要包括以下几个部分:一、备份系统数据SYBASE 系统的备份与恢复机制保证了在系统失败时重新获取数据的可能性。SQL Server 提供了两种不同类型的恢复机制:一类是系统自动完成的恢复,这种措施在每次系统启动时都自动进行,保证了在系统瘫痪前完成的事务都写到数据库设备上,而未完成的事务都被回退;另一类是人工完成的恢复,这是通过 DUMP 和 LOAD 命令来执行人工备份和恢复工作。因此定期备份事务日志和数据库是一项十分重要的日常维护工作。1、备份数据库每一个数据库都应在创建之后卸出,从而提供一个装入基点。在此之后按排定的时间周期表卸出。比如每周五卸出数据库。对一般数据库系统卸出数据库周期建议为每周一次。除了按计划周期卸出数据库之外,还需在每次运行没有日志的操作后卸出数据库。例如:·每次强制地运行了 DUMP TRAN WITH NO_LOG (因为数据库的磁盘空溢出);·每次用 sp_dboption 允许 select into/bulk 做快速拷贝,或用 SELECT INTO 命令创建一个永久性的表,或使用了 WRITETEXT 命令。卸出数据库的命令为:DUMP DATABASE database_nameTO mp_devicedatabase_name 是要卸出的数据库名称,mp_device 是卸出设备的名称。用系统过程 sp_helpdevice 可以获得设备的信息。下面一条命令用来卸出数据库 my_db :DUMP DATABASE my_dbTO db_bk_dev2、备份事务日志如果事务日志与数据库放在同一个设备上,则事务日志不应与数据库分开备份。master 数据库和小于 4M 的用户数据库就是这种情况。一般数据库系统的数据库和日志分别放在不同的设备上,因此,可以用 DUMP TRAN 命令单独备份日志。备份事务日志的周期直接影响数据的恢复程度,因此建议每天备份。备份事务日志的命令格式为:DUMP TRANsaction database_name[TO mp_device][WITH TRUNCATE_ONLY|WITH NO_LOG|WITH NO_TRUNCATE]其中 database_name 是要备份事务的数据库名称,mp_device 是备份设备名称,仅当包含了 WITH TRUNCATE_ONLY 或 WITH NO_LOG 子句时,才可以备份到设备。注意:如果总是用 DUMP DATEBASE (备份数据库及其日志),而不用 DUMP TRAN ,事务日志将不会刷新,而变得非常庞大。对于 master 数据库和小型数据库每次运行 DUMP DATEBASE 之后应当运行 DUMP TRANsaction 命令刷新日志 。下面一条命令备份数据库 db160 的事务日志到备份设备上:DUMP TRANsaction db160TO db_log_bk_devWITH TRUNCATE_ONLY3、备份数据库及其日志间的相互作用在至少卸出一次数据库前,卸出事务日志是毫无意义的。下图显示了备份数据库及其日志间的关系如果在星期二下午5:01出现非硬件故障,需要做的所有工作是装入磁带5(参见下一节:数据恢复),由于磁带5是下午5:00刚备份的,因此只有备份和装入之间的一分钟内的数据损失。但是,如果在星期二下午4:49失效会怎么样呢?在这种情况下,要装入磁带1(在星期五下午5:00的卸出)。然后,依次装入磁带2,3以及4。这样,系统将恢复到星期二上午10:00点的状态,星期二的大部分工作丢失了。此例显示了经常卸出事务的重要性。二、万一系统失败时恢复数据库系统如果用户数据库存储的设备失效,从而数据库被破坏或不可存取,通过装入最新的数据库备份以及后来的事务日志备份可以恢复数据库。假设当前的事务日志存在于一个并没有毁坏的设备上,带着 WITH NO_TRUNCATE 选项的 DUMP TRANsaction 命令卸出它。要恢复数据库按如下步骤去做:1、如果日志存在于一个分离的设备上,用带着 NO_TRUNCATE 选项的 DUMP TRANsaction 命令卸出被毁坏的或者不可存取的用户数据库事务日志。2、用下面的查询检查设备分配已毁坏数据库的设备使用情况。必须为同一目的赋同样的空间块。下面的查询显示了分配给数据库 mydb 设备使用和尺寸情况:SELECT segmap,size FROM sysusagesWHERE dbid = ( SELECT dbid FROM sysdatabases WHERE name = “mydb”)3、检查查询的输出。在 segmap 列的 ‘3’代表数据分配,‘4’代表日志分配。size 列代表 2K 数据块的数目。注意此信息的次序、使用和尺寸部分。例如,输出为:segmapSize--------------------310240//实际尺寸为:20M35120//实际尺寸为:10M45120//实际尺寸为:10M31024//实际尺寸为:2M42048//实际尺寸为:4M4、用 DROP DATABASE 命令删除毁坏设备上的数据库。如果系统报错,用DBCC DBREPAIR 命令的 DROPDB 选项。5、删除数据库后,用 sp_dropdevice 删除毁坏了的设备。6、用 DISK INIT 初始化新的数据库设备。7、重建数据库。用 CREATE DATABASE 命令从老的 sysusages 表拷贝所有的行,并包含第一逻辑设备。对上例,命令为:CREATE DATABASE mydb ON datadev1=20,datadev2=10LOG ON logdev1=108、用 ALTER DATABASE 命令重建其余入口。在此例中,在datadev1上分配更多的空间,命令为:ALTER DATABASE mydb ON datadev1=2[page]9、用 LOAD DATABASE 重新装入数据库,然后用 LOAD TRAN 装入前面卸出的日志。LOAD DATABASE 命令语法是:LOAD DATABASE database_nameFROM mp_deviceLOAD TRANsaction 命令的语法是:LOAD TRANsaction database_nameFROM mp_device卸出数据库和事务日志的缺省权限归数据库所有者,且可以传递给其他用户;装载数据库和事务的权限也归数据库所有者,但不能传递。二、产生用户信息表,并为信息表授权;系统维护人员的另一个日常事务是为用户创建新的信息表,并为之授权。创建表以及为表授权的方法已经在讲过,在此只将有关命令语法写出来。·创建表的命令为:CREATE TABLE table_name( column_1 datatype [NULL | NOT NULL | IDENTITY], column_2 ……)goALTER TABLE table_nameADD PRIMARY KEY (column_list)go·删除表的命令格式为:DROP TABLE table_namego·为表授权的命令格式为:GRANT {ALL|permission_list}ON table_name TO user_namego ·收回权限的命令格式为REVOKE {ALL|permission_list}ON table_name FROM user_namego 三、监视系统运行状况,及时处理系统错误;系统管理员的另一项日常工作是监视系统运行情况。主要有以下几个方面:1、监视当前用户以及进程的信息使用系统过程:sp_who说明:该命令显示当前系统所有注册用户及进程信息,如下表是某系统的信息。--------------------------------------------------------------- SLEEP从左向右依次显示:进程号、当前状态、注册用户名、主机名、占用块数、数据库名以及当前命令。如果监视时发现进程总数接近最大连接数(用系统过程:sp_configure “user conn” 查看)时,应下掉不活动或无关进程,以保证系统正常运做;另外亦可监视非法用户或用户使用不属于自己使用范围的数据库等情况。2、监视目标占用空间情况使用系统过程:sp_spaceused说明:该过程显示行数、数据页数以及当前数据库中由某个目标或所有目标所占用的空间。如下表是某数据库日志表的信息:NameRow_totalreserveddataIndex_sizeunused------------------------------------------------------------SyslogsNot avail32KB32KB0KBNot avail日常要监视的主要目标有:用户数据库、数据库日志表(syslogs)以及计费原始数据表等。如果发现占用空间过大,对日志表要进行转储;对其他目标则应扩充空间或清楚垃圾数据。3、监视 SQL Server 统计数字使用系统过程:sp_monitor说明:sp_monitor 显示SQL Server 的历史统计数字,下表是某系统的统计数字:Last_runCurrent_runSeconds---------------------------------------------------------------May 13 2000 1:27PMMay 13 2000 3:01PM5678CPU_busyIO_busyIdle---------------------------------------------------------------16(6)-0%0(0)-0%5727(5672)-99%Packets_receivedPackets_sentPacket_errors---------------------------------------------------------------21(17)100(97)0(0)Total_readTotal_writeTotal_errorsConnections--------------------------------------------------------785(366)311(113)0(0)3(2)上表依次给出该系统本次运行统计的上一次时间、本次时间、间隔秒数、CPU占用、IO占用、收发包情况、系统读入写出情况等信息四、保证系统数据安全,周期更改用户口令;为保证系统数据的安全,系统管理员必须依据系统的实际情况,执行一系列的安全保障措施。其中,周期性的更改用户口令是比较常用且十分有效的措施。更改用户口令是通过调用系统过程sp_password 来实现的。Sp_password 的语法为:sp_password caller_password,new_password [,loginame]其中caller_password 是登录口令(老口令),new_password是新口令,loginame是登录名称。 在网络搜索:数据库日常维护(参考) 相 关 文 章 Sybase存储过程的建立和使用SYBASE dbcc电信企业参与竞争的利器-数据仓库和数据挖掘SCOUNIX下磁带机的安装与备份StoredProcere(存储过程)编写经验和优化措施细说SYBASE数据库日志常见数据库系统之比较 - SYBASE 和 SQL SERVERSYBASE ASE FOR LINUX安装及perl连接SYBASESybase数据库应用(一)安装Sybase ASE
‘玖’ 数据仓库 哪本书好
比尔.恩门<建立数据仓库>