数据仓库复习题

数据仓库复习题
数据仓库复习题

第一章概述

1.数据挖掘的定义?(书P2,PPT_P8)

从大量的、不完全的、有噪声的、模糊的、随机的数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。

2.数据挖掘的源是否必须是数据仓库的数据?可以有哪些来源?(PPT_P14)

关系数据库、数据仓库、事务数据库、高级数据等

3.数据挖掘的常用方法?(P4、PPT_P29)

聚类分析、决策树、人工神经网络、粗糙集、关联规则挖掘、统计分析等

4.数据挖掘的过程包括哪些步骤,每一步具体包括哪些内容?(书P2-3,PPT_P17-19)

确定业务对象、数据准备、数据挖掘、结果分析与知识同化。

5.数据挖掘与数据仓库的关系(联系和区别)?书P6-7,PPT_P45-46

联系:1,数据仓库为数据挖掘提供了更好的,更广泛的数据源

2,数据仓库韦数据挖掘提供了新的支持平台。

3,数据仓库为更好地使用数据挖掘工具提供了方便

4,数据挖掘对数据仓库提供了更好的决策支持。

5,数据挖掘对数据仓库的数据组织提出了更高的要求

6,数据挖掘还为数据仓库提供了广泛的技术支持

区别:数据仓库是一种存储技术,它包含大量的历史数据、当前的详细数据以及综合数据,它能为不同用户的不同决策需要提供所需的数据和信息。~~数据挖掘是从人工智能机器学习中发展起来的,它研究各种方法和技术,从大量的数据中挖掘出有用的信息和知识。

第二章数据仓库

1.数据仓库的定义

数据仓库——是一个面向主题的、集成的、随时间而变化的、不容易丢失的数据集合,支持管理部门的决策定制过程。

2.数据仓库数据的四大基本特征:

面向主题的、集成的、不可更新的、随时间变化的。

3.数据仓库体系结构有三个独立的数据层次:

信息获取层、信息存储层、信息传递层。

4.粒度的定义?它对数据仓库有什么影响?

(1)是指数据仓库的数据单位中保存数据细化或综合程度的级别。粒度越小,细节程度越高,综合程度越低,回答查询的种类就越多。

(2)影响存放在数据仓库中的数据量大小;影响数据仓库所能回答查询问题的细节程度。

5.在数据仓库中,数据按照粒度从小到大可分为四个级别:

早期细节级、当前细节级、轻度细节级和高度细节级。

6.数据分割的标准:可按日期、地域、业务领域、或按多个分割标准的组合,但一般包括日期项。

7.数据仓库设计中,一般存在着三级数据模型:

概念数据模型、逻辑数据模型、物理数据模型

8.数据仓库设计步骤

(1)概念模型设计

(2)技术准备工作

(3)逻辑模型设计

(4)物理模型设计

)数据仓库的生成5(.

(6)数据仓库的使用和维护

9.数据装入时,并不是一次就将准备装入的数据全部装入数据仓库,而是按照逻辑模型设计中所确定和分析的主题域,先装入并生成某一主题域。

10.建立数据仓库的步骤并不是一成不变的,但最终应该满足用户的分析需求。

第三章联机分析处理技术

1.联机事务处理与联机分析处理的区别?

联机事务处理(OLTP)作为数据管理手段,主要用于事务处理,但它对分析处理一直不能令人满意。

联机分析处理(OLAP)是决策支持系统的有机组成部分,利用存储在数据仓库中的数据完成各种分析操作,并以直观易懂的形式将分析结果返回给决策分析人员。

2.OLAP的主要特征

快速性、可分析性、多维性、信息性。

3.钻取Drill/Roll up,Drill down

改变维的层次,变换分析的粒度。

分向上钻取和向下钻取。

向上钻取:在某一维上将低层次的细节数据概括到高层的汇总数据,或者减少维数。

向下钻取:从汇总数据深入到细节数据进行观察或增加新维。

4.ROLAP是基于关系数据库的OLAP实现,而MOLAP是基于多维数据结构组织的OLAP实现。

5.OLAP根据其数据存储格式可分为三类:

关系OLAP(ROLAP)、多维OLAP(MOLAP)和混合OLAP(HOLAP)。

6.雪花型模式是对星型模式维表的进一步层次化和规范化来消除冗余的数据。

7.OLAP的衡量标准

(1)透明性准则:

——OLAP在体系结构中的位置和数据源对用户是透明的。

(2)动态的稀疏矩阵处理准则:

——对任意给定的稀疏矩阵,存在且仅存在一个最优的物理视图。

(3)维的等同性准则:

——每一数据维在数据结构和操作能力上都是等同的。

第四章数据预处理

1.数据预处理的方法

——数据清洗、数据集成、数据变换、数据规约等。

2.分箱方法

——统一权重、统一区间、最小熵、用户自定义区间。

3.数据平滑处理方法

——按平均值、按边界值、按中值

4.数据规范化定义?规范化的常用方法有哪些?

(1)将数据按比例缩放,使之落入一个特定的区域,如[0,1],称为规范化/标准化。

(2)常用方法:最小-最大规范化、零-均值规范化、小数定标规范化。

5.数据规约

从大数据集中得到其规约表示——小数据集

规约的目的是减少原始数据量;

可以在小数据集上得到与原始数据相同的挖掘结果。

): 百元(个月的销售数据24下面是一个超市某种商品连续6.

21,16,19,24,27,23,22,21,20,17,16,20,23,22,18,24,26,25,20,26,23,

21,15,17

使用统一权重、统一区间和自定义区间方法对数据分箱,并对分箱后的数据采用平均值、边界值或中值等方法进行平滑。

解:15,16,16,17,17,18,19,20,20,20,21,21,21,22,22,23,23,23,2,24,25,26,26,27

统一权重:设权重为6,表示每箱6个记录,分四箱:

箱1: 15,16,16,17,17,18 箱2:19,20,20,20,21,21

箱3: 21,22,22,23,23,23 箱4: 24,24,25,26,26,27

边界:

箱1: 15,15,15,18,18,18 箱2:19,19,19,21,21,21

箱3: 21,21,21,23,23,23 箱4: 24,24,24,27,27,27

统一区间:每个箱子宽度为(27-15)/4=3,区间[15,18)、[18,21)、[21,24)、[24,27):

箱1: 15,16,16,17,17 箱2:18,19,20,20,20

箱3: 21,21,21,22,22,23,23,23 箱4: 24,24,25,26,26,27

中值:

箱1: 16,16,16,16,16 箱2:20,20,20,20,20

箱3: 22,22,22,22,22,22,22,22 箱4: 25.5, 25.5, 25.5, 25.5, 25.5, 25.5

第五章关联规则方法

1.关联规则挖掘的任务?

找到事务数据库D中支持度和置信度分别满足用户指定的最小支持度min_sup和最小置信度min_con的规则。

2.关联规则挖掘问题分哪两个步骤?

(1)找出D中所有的频繁项集;

(2)从频繁项集中产生关联规则。

3.Apriori性质:

频繁项集的所有非空子集也都必须是频繁的;

这是频繁项集的先验知识;

可以减少候选频繁项集的数量。

4.负边界:

负边界中的项集是非频繁的,但每个项集的所有子集都是频繁的。

5.数据库如下图所示,如果设定最小支持度s=40%,置信度c=70%,计算该数据库中的频繁项集和负边界,以及由频繁项集产生的规则。

TID 项目列表

T1 I1,I3,I4T2III5

T3IIII5

T4II5

S=40%

解:

候11频计

L1项

{i1} {i1} 50 2

{i2} 3 {i2} 75

{i3} 3 75 {i3

25

{i4} {i5} 3 75 {i5}

S(%) 频繁2-项候选计数集2-项集L2

1 25 i2} ,{i150

2 {i1,i3} {i1,i3}

1 25 i5} ,{i150

2 {i2{i2,i3} ,i3}

75 {} 3

{i2,i5}

50 2

{i3,i5} i5} {i3,

频繁候选3-3-(S%)项计数

集L3 项集2 50

,,i3,i}

{i2{i2,i3i5}

频繁项集:L1,L2,L3,即{i1}、{i2}、{i3}、{i5}、{i1,i3}、{i2,i3}、{i2,i5}、{i,i5}、{i2,i3,i5}。负边界:{i1,i2},{i1,i5}。

置信度c=70%

频繁项集产生的规则置信度强规则

2 /21i{i1,i1→i

3 i3} →i3

3 2 /i1 →i3 /3 2i3 {i2,i2i3} → 3 2/i2 →i33 3/i2→i5 i5} {i2,i5 i2→3 /3i5→i2 i2 →i5 3 2/i5 i3→i5} {i3, 2 3 /i3

i5→2 2/i2,i3→i5 {i2,i3,i5} i2,i3→i5

2/3 i2,i5→i3

2/2

i3,i5→→i3,i5i2

i2

第六章决策树方法

1.决策树的基本概念:

适用于离散值属性、连续值属性;采用自项向下的规约方法产生一个类似于流程图的树结构;在根节点和各内部节点上选择合适的描述属性,并且根据该属性的不同取值向下建立分枝。2.决策树的优点

进行分类器设计时,决策树分类方法所需时间相对较少;决策树的分类模型是树型结构,简单直观,比较符合人类的理解方式;可以讲决策树中到达每个叶节点的路径转换为形式的分类规则,这种形式更有利于理解。THEN—IF.

决策树剪枝3.以提高对未知类标号的数据进行分类时的决策树剪枝过程试图检测和去掉多余的分枝,

准确性。人工神经网络方法第八章

神经网络直所以能胜任一些复杂的工作,是因为它有学习的能力。1. 2.具有较好的泛华能力是神经网络设计的评价指标之一。 3.BP神经网络的拓扑结构分为多个层次:输入层、隐含层、输出层。4.神经网络进行学习实际上就是学习其连接的权值。5.BP神经网络学习过程由信号的正向传播与误差的反响传播两个过程组成。6.在线训练:每处理一个训练实例,就更新一次权重。离线训练:把所有训练实例都处理一遍之后,再更新权重。7. 利用梯度下降法更新权重易于陷入局部极小值,从而无法得到最优解。8. 神经网络的优点和缺点9.BP 神经网络的优点:(1)BP 抗噪性能好;

既能处理连续数据,也能处理类别型数据;在多个领域有成功应用;既适合有监督学习,也适合无监督学习;具有较好的泛化能力;具有较好的逼近非线性映射的能力;

具有较好的容错性。BP神经网络的缺点:(2)缺乏可解释性;可能无法找到优解;;可能存在过学习问题(overfitting)收敛速度慢。

第九章聚类分析

1.聚类分析定义

把一个给定的数据对象集合分成不同的簇;在同一个簇(或类)中,对象之间具有相似性;

不同簇(或类)的对象之间具有较高的相宜性。

2.聚类分析方法通常分为哪些方法?

基于划分方法;基于层次的方法;基于密度的方法;基于网格的方法;谱聚类方法

3.数据挖掘技术对聚类分析的要求有哪几个方面?

(1)可伸缩性(适用于增长的大数据集);

(2)处理不同类型属性的能力(支持多种类型属性的数据集);

(3)发现任意形状聚类的能力(除了球形聚类外,能划分出任意形状聚类);

(4)减小对先验知识和用户自定义参数的依赖性;

(5)处理噪声数据的能力(对孤立点、缺失值。错误数据等噪声数据的抗干扰性);

(6)可解释性和实用性(降维,可视化显示)。

4.K平均方法与K中心点方法比较

(1)当存在噪声和离群点时,K中心点方法比K均值方法更加鲁棒。

(2)K中心点方法的执行代价比K平均方法要高。

(3)两种方法都要用户指定簇的数目K。

聚类分析中最常用的距离有欧几里得距离,曼哈坦距离、明可夫斯基距离等。5.

6.基于划分的聚类算法有K中心点方法和K平均方法等

单选题举例

1.决策树中不包含以下哪种结点(C)

A.根结点

B.内部结点

C.外部结点

D.叶结点

2.某超市研究销售记录数据后发现,买啤酒的人很大概率也会买尿布,这种属于数据挖掘的哪类问题?(A)

A.关联规则发现

B.聚类

C.分类

D.自然语言处理

3.将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C)

A.频繁模式挖掘

B.分类和预测

C.数据预处理

D.数据流挖掘

4.当不知道数据所带标签(类别)时,可以使用哪种技术促使带同类标签的数据与带其他标签的数据相分离?(B)

A.分类

B.聚类

C.关联分析

D.决策树分析

5.什么是KDD?(A)

A.数据挖掘与知识发现

B.领域知识发现

C.文档知识发现

D.动态知识发现

判断题举例

1.数据挖掘的主要任务是从数据中发现潜在的规则,从而能更好的完成描述数据、预测数据等任务。

2.数据挖掘的目标不在于数据采集策略,而在于对于已经存在的数据进行模式的发掘。

3.离群点可以是合法的数据对象或值。

4.DSS主要是基于数据仓库,联机数据分析和数据挖掘技术的应用。

5.OLAP技术侧重于把数据库中的数据进行分析、转换成辅助决策信息,是继数据库技术发展滞后迅猛发展起来的一种新技术。

6.离散属性总是具有有限个值。

7.关联规则挖掘过程是发现满足最小支持度的所有项集代表的规则。

8.利用先验原理可以帮助减少频繁项集产生时需要探查的候选项个数。

9.先验原理可以表述为:如果一个项集是频繁的,那包含它的所有项集也是频繁的。

10.分类和回归都可用于预测,分类的输出是离散的类别值,而回归的输出是连续数值。

11.在聚类分析当中,簇内的相似性越大,簇间的差别越大,聚类的效果越差。

12.聚类分析可以看作是一种非监督的分类。

13.K均值是一种划分聚类算法,簇的个数由算法自动地确定。

14.等宽分箱法使每个箱子的取值区间相同。

15.啤酒与尿布的故事是聚类分析的典型实例。

16.等深分箱法使每个箱子的记录个数相同。

17.决策树通常用于分类与预测。

最新运维中心笔试题答案

数据库运维中心笔试题答案 一、单项选择 1、T-SQL语句是由哪一家公司设计出的:(A) A Microsoft B IBM C SUN 2、 SQL-Server 的数据库类型属于哪一类型:(A) A 关系型数据库 B 网络型数据库 C 层次型数据库 3、要启动SQL-Server 的服务器,在命令提示符下键入以下什么命令可以启动SQL-Server服务器:(B) A net send B net start mssqlerver C net help 4、输入和调试T-SQL语句的工具是:(B) A 企业管理器 B 查询分析器 C 服务器网络使用工具 D 联机丛书 5、创建数据库的关键字是: (B) A delete B Create C from D talbe 6、数据库的日志文件的扩展名是:(B) A mdf B ldf C ndf D log 7、创建表的主约束使用哪个关键字:(B) A check B primary C foreign D rull 8、datetime属于什么数据类型:(A) A 日期型 B 时间型 C 字符串型 D 整数型 9、下列数据类型中不能属于sql_variant 型的是:(C) A varchar B int C image D datetime 10、存储过程sp_bindrule的作用是什么:(A) A 绑定规则 B 查看表结构 C 绑定默认值 D 查看过程 11、insert 表示的含义:(A) A 添加 B 删除 C 查询 D 更改 12、SQL-Server 中外键约束关键字为:(C) A primary key B unique C foreign key D check 13、alter view 表示:(B) A 创建视图 B 更改视图 C 检索视图 D 删除视图

2012下半年系统架构设计师下午试题Ⅱ分析与解答

2012年下半年系统架构设计师下午试题Ⅱ分析与解答 (总分75, 考试时间120分钟) 试题一论基于架构的软件设计方法及应用 基于架构的软件设计(Architecture-Based Software Design,ABSD)方法以构成软件架构的商业、质量和功能需求等要素来驱动整个软件开发过程。ABSD是一个自顶向下,递归细化的软件开发方法,它以软件系统功能的分解为基础,通过选择架构风格实现质量和商业需求,并强调在架构设计过程中使用软件架构模板。采用ABSD方法,设计活动可以从项目总体功能框架明确后就开始,因此该方法特别适用于开发一些不能预先决定所有需求的软件系统,如软件产品线系统或长生命周期系统等,也可为需求不能在短时间内明确的软件项目提供指导。 请围绕“基于架构的软件开发方法及应用”论题,依次从以下三个方面进行论述。 1.概要叙述你参与开发的、采用ABSD方法的软件项目以及你在其中所承担的主要工作。 2.结合项目实际,详细说明采用ABSD方法进行软件开发时,需要经历哪些开发阶段?每个阶段包括哪些主要活动? 3.阐述你在软件开发的过程中都遇到了哪些实际问题及解决方法。 试题一写作要点 一、论文中要具体介绍项目的背景与总体需求、系统所采用的技术路线以及你所承担的实际工作。 二、采用ABSD方法进行软件开发时,需要经历架构需求、架构设计、架构文档化、架构复审、架构实现和架构演化六个阶段。 1.架构需求阶段需要明确用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。其主要活动包括需求获取、标识构件和架构评审。 (1)需求获取活动需要定义开发人员必须实现的软件功能,使得用户能够完成他们的任务,从而满足功能需求。与此同时,还要获得软件质量属性,满足一些非功能性需求。 (2)标识构件活动首先需要获得系统的基本结构,然后对基本结构进行分组,最后将基本结构进行打包成构件。 (3)架构需求评审活动组织一个由系统涉众(用户、系统分析师、架构师、设计实现人员等)组成的小组,对架构需求及相关构件进行审查。审查的主要内容包括所获取的需求是否真实反映了用户需求,构件合并是否合理等。 2.架构设计阶段是一个迭代过程,利用架构需求生成并调整架构决策。主要活动包括提出架构模型、将己标识的构件映射到架构中、分析构件之间的相互作用、产生系统架构和架构设计评审。 3.架构文档化的主要活动是对架构设计进行分析与整理,生成架构规格说明书和测试架构需求的质量设计说明书。 4.在一个主版本的软件架构分析之后,需要安排一次由外部人员(客户代表和领域专家)参加的架构复审。架构复审需要评价架构是否能够满足需求,质量属性需求是否

高级开发人员架构师面试题

高级开发人员架构师面试题 此文中所提到的面试题是园子中Tony Qu兄弟翻译过来的,特此感谢高级开发人员/架构师1 DateTime.ParsemyString 有问题,当myString丌能满足时间格式要求的时候,会引发异常,建议使用DateTime.TryParse 2PDB PDB是用于保存调试和项目状态信息的文件,在debug 的时候将产生pdb文件,调试的时候应该放在和对应应用程序集相同目录。3 cyclomatic complexity 丌知道,望指教?4 lock private static object instrace static object lockedObj new object public static void LockTest if instrace null lock lockedObj if instance null instance new object 5 FullTrustGACassemblyFullTrust FullTrust完全信任。放入GAC中的Assembly是否FullTrust我的理解丌是。我理解FullTrust是可以通过代码设定的6 可以更加灵活的设置对代码的访问权限,实现代码级保护。?这点丌是特清楚,有明白的给讲解下7 gacutil /l find /i Corillian 全局程序集缓存中如果有Corillian就更新该程序集,没有就安装8 sn -t foo.dll 显示程序集foo.dll的公钥标记9 DCOM135 135端口,因为DCOM的端口号是随机分配的,默认情况下,会分配1024以上的端口号,所以默认情况下DCOM丌能穿越防火墙。因为根本丌晓得开哪个端口。但有解决办法可以使DCOM分配的端口号固定,有关内容我在https://www.360docs.net/doc/7a15930145.html,/jillzhang/archive/2008/02/20/1075057.html 有过一些描述。135是远程过程调用RPC的默认端口10OOPSOA 我想OOP和SOA应该没有对比性吧。OOP是一种编程模型,强调将复杂的逻辑分解出小的模块,特性是继承,封装和多态。而SOA是一个技术框架,技术框架和编程模型应该说丌是一码事吧?SOA的思想是将业务逻辑封装成服务戒者中间件提供给应用程序来调用,当然其组件化思想是继承和发扬了OOP的优点。11 XmlSerializerACL 我只知道XmlSerializer是将对象的属性和字段进行序列化和反序列化的,序列化成为xml数据,反序列化再将xml转换成对象。应该至少需要ACL权限中的读权限. 12catchException 原因可能有两点:1)try..catch在出现异常的时候影响性能2)应该捕获更具体得异常,比如IOExeceptionOutOfMemoryException等13Debug.WriteTrace.Write Debug.Write是调试的时候向跟踪窗口输出信息。当编译模式为debug的时候才有效,为release的时候Debug.Write在编译的时候会忽略而Trace则是在debug和release两种模式下均可以向跟踪窗口输出信息。14Debug BuildRelease Build Debug会产生pdb文件,release 丌会。Debug用于开发时的调试,丌能要于部署,而release用于部署.debug编译一些特殊代码,比如IFDEBUG Debug.Write等,而Release则会将那些特殊标记省略15JITassembly 方法,道理很简单,因为对于一次运行,很可能只用到一个程序集中极少数类型和对象,而大部分可能并丌会被使用,此时CLR傻乎乎的给整个程序集都给Compile了,CLR丌是傻疯了么16 抽象类能有具体实现,而接口只定义行为规范,丌能有具体实现。一个类只能继承一个父类,但能实现多个接口。17a.Equalsba b 丌一样。多数情况下,a.Equalsb表示a 不b一致,ab表示a不b的值相等。也可以有具体重载(多谢Jeffrey Zhao 的指正)18 对象一致是指两个对象是同一个对象,引用相同。而对象相等是指两个对象的值相同,但引用丌一定相同https://www.360docs.net/doc/7a15930145.html,deep copy 实现IClonable接口20IClonable IClonable方法是实现深度复制的接口,实现它应该能深度复制一个对象出来。深度复制的特征的调用对象的构造方法,创建新的对象,包括创建对象中嵌套的引用对象的新实例。而Shadow复制则丌同,是浅表复制,丌重新创建新实例。浅表复制的实现是Object.MemberWiseClone. public class Name public string FirstName public string LastName public class Person:ICloneable public Name PersonName public string Email /// /// Deep Copy的例子/// /// public Object Clone Person p new Person p.Email this.Email p.PersonName new Name p.PersonName.FirstName this.PersonName.FirstName https://www.360docs.net/doc/7a15930145.html,stName https://www.360docs.net/doc/7a15930145.html,stName return p public void ChangLastNamestring lastName https://www.360docs.net/doc/7a15930145.html,stName lastName public static void Main Person p new Person p.PersonName new Name https://www.360docs.net/doc/7a15930145.html,stName jill

bi etl 数据仓库面试培训题

面试培训题 1.BI(business intelligence)模型有哪些? 答:星星模型和雪花模型, 雪花模型一般不用,星星模型就是一个事实表和多个维表相关联。 2.维度建模的数据仓库中,有一个概念叫Slowly Changing Dimensions,中文一般翻译成“缓慢变化维”,经常被简写为SCD。 缓慢变化维的提出是因为在现实世界中,维度的属性并不是静态的,它会随着时间的流失发生缓慢的变化。这种随时间发生变化的维度我们一般称之为缓慢变化维,并且把处理维度表的历史变化信息的问题称为处理缓慢变化维的问题,有时也简称为处理SCD的问题。 例如:员工维表,这个员工在某段时间在这个部门,然后过段时间换了部门换了工作地,需要多行数据来记录这种变化,人员的属性是变化的,就叫缓慢变化维。 3oracle的存储单位是什么?结构是什么样的?有什么组成? 物理存储结构:多种物理文件,如数据文件,日志文件,参数文件,控制文件 逻辑存储结构:表空间,段,区,数据块组成 4工作中用到哪些ETL软件? E-extract 抽取T-transform 转换L-load 加载 IBM公司的datastage(DS) 5实例=内存+进程 Instance:SGA,PGA SGA:shared pool(library cache,dictionary data cache ),database buffer cache ,redo log buffer, BWN:数据文件CKPT:控制文件LGWR:在线日志

六.对SQL优化的认识? QL三段分拆法,SQL可以分为3段 1.SELECT 部分,重点关注SELECT 部分有没有标量子查询,有没有自定义函数 2.FROM 后面,重点关注有没有内联视图,有没有视图套视图,看有没有进行视图合并、谓词推入 3.WHERE 条件部分,看有没有IN,NOT IN,EXISTS,NOT EXISTS 子查询,将in/exist都改成WITH AS 最好有没有外连接,有没有在列上面有函数导致不能走索引,减少表关联,看表设计是1:1还是1:N的关系 4看统计信息是否过期,过期的进行收集 5关注大表,大表才有新问题,是否是小表当驱动表,大表当被驱动表 6看执行计划是hash还是nl(嵌套循环)用hint来改变执行计划 (nl和hash就是两种执行计划,就是说你选择的是哪种路径,坐公交还是地铁,让sql跑的块,到达目的地。sql查出来的数据是不会变的,对应目的地是不会变的。公交方式有多种,对应执行计划有多种)

2011年软考系统架构设计师(高级)学习笔记

2011年软考系统架构设计师学习笔记第一章 1.1.1 系统架构师的概念 现代信息系统“架构”三要素:构件、模式、规划;规划是架构的基石,也是这三个贡献中最重要的。 架构本质上存在两个层次:概念层,物理层。 1.2.1 系统架构师的定义 负责理解、管理并最终确认和评估非功能性系统需求,给出开发规范,搭建系统实现的核心架构,对整个软件架构、关键构建、接口进行总体设计并澄清关键技术细节。 主要着眼于系统的“技术实现”,同时还要考虑系统的“组织协调”。 要对所属的开发团队有足够的了解,能够评估该开发团队实现特定的功能需求目标和资源代价。 1.2.2 系统架构师技术素质 对软件工程标准规范有良好的把握。 1.2.3 系统架构师管理素质 系统架构师是一个高效工作团队的创建者,必须尽可能使所有团队成员的想法一致,为一个项目订制清晰的、强制性的、有元件的目标作为整个团队的动力; 必须提供特定的方法和模型作为理想的技术解决方案; 必须避免犹豫,必须具备及时解决技术问题的紧迫感和自信心。 1.2.4 系统架构师与其他团队角色的协调 系统分析师,需求分析,技术实现 系统架构师,系统设计,基于环境和资源的系统技术实现 项目管理师,资源组织,资源实现 由于职位角度出发产生冲突制约,不可能很好地给出开发规范,搭建系统实现的核心架构,并澄清技术细节,扫清主要难点。 所以把架构师定位在项目管理师与系统分析师之间,为团队规划清晰的目标。 对于大型企业或项目,如果一人承担多个角色,往往容易发生顾此失彼的现象。 1.3 系统架构师知识结构 需要从大量互相冲突的系统方法和工具中区分出哪些是有效的,那些是无效的。 1.4 从开发人员到架构师 总结自己的架构模式,深入行业总结规律。 几天的培训不太可能培养出合格的软件架构师,厂商的培训和认证,最终目的是培养自己的市场,培养一批忠诚的用户或产品代言人,而不是为中国培养软件架构师。

数据仓库面试题

数据仓库及BI工程师面试题集锦 前言 1、介绍一下项目经验、项目中的角色。 一、数据库 1、Oracle数据库,视图与表的区别?普通视图与物化视图的区别?物化视图的作 用? i.视图与表的区别 1. 1、视图是已经编译好的sql语句。而表不是 2. 视图没有实际的物理记录。而表有。 3. 表是内容,视图是窗口 4. 表只用物理空间而视图不占用物理空间,视图只是逻辑概念的存在, 表可以及时四对它进行修改,但视图只能有创建的语句来修改ii. 物化视图与视图区别 1.物化视图和视图差别非常大,不是几句能说清物化视图是自动刷新或者 手动刷新的,视图不用刷新物化视图也可以直接update,但是不影响b ase table,对视图的update反映到base table上物化视图主要用于 远程数据访问,物化视图中的数据需要占用磁盘空间,视图中不保存数据。 2、Oracle数据库,有哪几类索引,分别有什么特点? a) 1.单列索引与复合索引 一个索引可以由一个或多个列组成,用来创建索引的列被称为“索引列”。 单列索引是基于单列所创建的索引,复合索引是基于两列或者多列所创建的索引。 2.唯一索引与非唯一索引 唯一索引是索引列值不能重复的索引,非唯一索引是索引列可以重复的索引。

无论是唯一索引还是非唯一索引,索引列都允许取NULL值。默认情况下,Oracle 创建的索引是不唯一索引。 3.B树索引 B树索引是按B树算法组织并存放索引数据的,所以B树索引主要依赖其组织并存放索引数据的算法来实现快速检索功能。 4.位图索引 位图索引在多列查询时,可以对两个列上的位图进行AND和OR操作,达到更好的查询效果。 5.函数索引 Oracle中不仅能够直接对表中的列创建索引,还可以对包含列的函数或表达式创建索引,这种索引称为“位图索引”。 3、Union与Union All的区别? a)Union会对查询结果进行排序去重,效率比union all 低,union all只是两个查 询集的合并操作。建议使用Union all,查询出来后再对数据进行去重操作。 4、对游标的理解?游标的分类?使用方法? 游标是映射在结果集中一行数据的位置实体,有了游标,用户就可以访问结果集中的任何一条数据。游标分为静态游标和REF游标,静态游标分为显示游标和隐式游标,显示游标使用步骤是声明游标,打开游标,获取记录,关闭游标。所有的DML语句为隐式游标,可以从游标的属性获得sql语句的信息。REF游标是动态关联结果集的临时对象,使用步骤也是先要进行声明游标,然后打开游标,获取记录,关闭游标。 5、如何查找和删除表中的重复数据?给出方法或SQL。 查询表中重复数据。 Select * from people where id in (Select id from people group by id having count(id)>1); Delete from people where id in(select id from people group by id having count(id)>1) and rowid not in (select min(rowid) from people group by id hacing count(id)>1);

(完整版)架构师面试问题指导性框架

架构师面试问题指导性框架 1. Java基础问题 (3) 1.1. 所有Java类的基类是什么? (3) 1.2. Object类中有哪些方法?(说出三个) (3) 1.3. equals和==的差别? (3) 1.4. hashCode的作用 (3) 1.5. hashCode和equals方法的关系 (3) 1.6. 如何停止一个线程? (3) 1.7. Thread.setDeamon()的含义? (5) 1.8. ClassLoader的功能和工作模式? (5) 1.9. 列举几个Java Collection类库中的常用类,试简述其类结构。 (6) 1.10. Input/OutputStream和Reader/Writer有何区别?何为字符,何为字节? (6) 1.11. 如何在字符流和字节流之间转换? (6) 1.12. GC垃圾收集是什么意思?怎样的对象会被收集? (6) 2. JavaEE的问题 (6) 2.1. Serlvet/JSP相关 (6) 2.1.1. JSP的工作原理 (6) 2.1.2. Servlet中的session工作原理 (6) 2.1.3. WEB层如何实现Cluster (7) 2.2. EJB相关 (7) 2.2.1. EJB的类型 (7) 2.2.2. EJB的工作原理 (7) 2.2.3. EJB的应用领域 (7) 2.3. JMS相关 (7) 2.3.1. JMS的模式 (7) 2.4. JDBC/JTA/JTS相关 (7) 2.4.1. 用JDBC怎样从数据库中查询一条记录? (7) 2.4.2. Transaction有哪几种隔离级别?(Isolation Level) (7) 2.4.3. Global transaction的原理是什么? (7) 2.5. WebService相关 (8) 2.5.1. 简述WebService是怎么实现的? (8) 2.6. Ant/maven的知识 (8) 2.6.1. 用过ant或maven吗?它们是什么?有什么特点(或好处)? (8) 3. 开源软件的问题 (8) 3.1. Spring相关 (8) 3.1.1. Spring的核心理念是什么? (8) 3.2. iBatis/hibernate相关 (8) 3.2.1. 简介hibernate和(或)ibatis,及它们的异同、优缺点。 (8) 3.3. 其它软件 (8) 3.3.1. Web层框架 (8) 3.3.2. 数据层框架 (8) 3.3.3. 普通工具类 (8) 3.3.4. 测试框架 (8) 3.3.5. Service框架 (8) 3.3.6. (9) 4. OOA/OOD (9) 4.1. OOD的原则 (9)

ETL面试题

一、分析 1.什么是逻辑数据映射?它对ETL项目组的作用是什么? What is a logical data mapping and what does it mean to the ETL team? 答: 逻辑数据映射(Logical Data Map)用来描述源系统的数据定义、目标数据仓库的模型以及将源系统的数据转换到数据仓库中需要做操作和处理方式的说明文档,通常以表格或Excel 的格式保存如下的信息: 目标表名: 目标列名: 目标表类型:注明是事实表、维度表或支架维度表。 SCD类型:对于维度表而言。三种SCD(Slowly Changing Dimension)技术 SCD1直接修改原维表信息,不保存任何维历史信息。 SCD2创建新的记录而不删除或修改原有维信息。可通过为每条记录设定过期时间、生效时间两个字段来区分各历史记录和当前记录(历史记录的过期时间均早于当前记录的生效时间)。 SCD3在维表中定义历史信息字段,只保存有限的历史信息(此技术很少应用) 源数据库名:源数据库的实例名,或者连接字符串。 源表名: 源列名: 转换方法:需要对源数据做的操作,如Sum(amount)等。 逻辑数据映射应该贯穿数据迁移项目的始终,在其中说明了数据迁移中的ETL策略。在进行物理数据映射前进行逻辑数据映射对ETL项目组是重要的,它起着元数据的作用。项目中最好选择能生成逻辑数据映射的数据迁移工具。 -----------------------------补充: 逻辑数据映射分为两种: 1: 模型映射: 从源模型到DW目标模型之间的映射类型有:

一对一:一个源模型的数据实体只对应一个目标模型的数据实体。如果源类型与目标类型一致,则直接映射。如果两者间类型不一样,则必须经过转换映射。 一对多:一个源模型的数据实体只对应多个目标模型的数据实体。在同一个数据存储空间,常常出现会一个源实体拆分为多个目标实体的情况下。在不同的存储空间中,结果会对应到不同的存储空间的实体。 一对零:一个源模型的数据实体没有与目标模型的数据实体有对应,它不在我们处理的计划范围之内。 零对一:一个目标模型的数据实体没有与任何一个源数据实体对应起来。例如只是根据设计考虑,时间维表等。 多对一:多个源模型的数据实体只对应一个目标模型的数据实体。 多对多:多个源模型的数据实体对应多个目标模型的数据实体。 2: 属性映射 一对一:源实体的一个数据属性列只对应目标实体的一个数据属性列。如果源类型与目标类型一致,则直接映射。如果两者间类型不一样,则必须经过转换映射。 一对多:源实体的一个数据属性列只对应目标实体的多个数据属性列。在同一个实体中,常常出现会一个源属性列拆分为目标的多个属性列情况。在不同实体中,结果会对应到不同的实体的属列。 一对零:一个源实体的数据属性列没有与目标实体的数据属性列有对应,它不在我们处理的计划范围之内。 零对一:一个目标实体的数据属性列没有与任何一个源数据属性列对应起来。例如只是根据设计考虑,维表和事实表中的时间戳属性,代理健等。 多对一:源实体的多个数据属性列只对应目标实体的一个数据属性列。 多对多:源实体的多个数据属性列对应目标实体的多个数据属性列。 作用: 1 为开发者传送更为清晰的数据流信息。映射关系包括有关数据在存储到DW前所经历的各种变化的信息,对于开发过程中数据的追踪审查过程非常重要。 2 把ETL过程的信息归纳为元数据,将数据源结构,目标结构,数据转换规则,映射关系,数据的上下文等元数据保存在存储知识库中,为元数据消费者提供很好的参考信息,追踪数据来源与转换信息,有助于设计人员理解系统环境变化所造成的影响;

数据仓库团队面试题-答案

目录 1简答题 (1) 1.1SQL Server与Oracle、DB2三种数据库比较 (1) 1.2以下三种数据库语言都包含哪些细项 (2) 1.3UNION 和UNION ALL的区别 (2) 2实例题................................................................................................................... 错误!未定义书签。3逻辑推理题 (5) 答案............................................................................................................................... 错误!未定义书签。1简答题 1.1 SQL Server与Oracle、DB2三种数据库比较 SQL Server与Oracle、DB2三种数据库进行比较,有何区别?请从开放性,可伸缩性,并行性,安全性三个方面叙述。 答案: 开放性 SQL Server 只能在Windows 上运行,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的。Windows9X系列产品是偏重于桌面应用,NT server只适合中小型企业。而且Windows平台的可靠性,安全性和伸缩性是非常有限的。它不象Unix那样久经考验,尤其是在处理大数据量的关键业务时。 Oracle 能在所有主流平台上运行(包括 Windows)。完全支持所有的工业标准。采用完全开放策略。可以使客户选择最适合的解决方案。对开发商全力支持。 DBz 能在所有主流平台上运行(包括Windows)。最适于海量数据。DB2在企业级的应用最为广泛,在全球的500家最大的企业中,几乎85%以上用DB2数据库服务器,而国内到97年约占5%。 可伸缩性,并行性 SQL Server 并行实施和共存模型并不成熟。很难处理日益增多的用户数和数据卷。伸缩性有限。Oracle平行服务器通过使一组结点共享同一簇中的工作来扩展Window NT的能力,提供高可用性和高伸缩性的簇的解决方案。如果WindowsNT不能满足需要, 用户可以把数据库移到UNIX中。 DB2 DB2具有很好的并行性。DB2把数据库管理扩充到了并行的、多节点的环境。数据库分区是数据库的一部分,包含自己的数据、索引、配置文件、和事务日志。数据库分区有时被称为节点或数据库节点。

十大架构师谈服务器选型 ——证券行业篇

十大架构师谈服务器选型——证券行业篇 证券企业一般在全国范围内经营业务,网络庞大、结构复杂,典型业务模式有柜台交易、自助委托、电话委托、网上委托等。各证券营业部和总部通过网络将交易所、证券公司与交易者三方连接在一起,共同完成证券交易,并实现行情、交易、结算、办公等各环节的自动化。证券企业网络一般由四部分组成:总部网络、营业部网络、银证交易系统和网站系统。 证券集中业务体系解决方案 作为支撑业务运转的基础平台,证券公司总部、区域总部成为证券营业业务的处理核心,证券营业部、服务部、支持部等分支机构成为业务服务单位。 营业部、服务部等分支机构实现了各分支机构的基本工作职能,它侧重于本地IT系统建设,其通信服务功能模块只起到辅助作用。 利用集中式交易系统, 具有相当规模的证券公司将远距离控制多个分支机构和为远程 大户提供服务,相应业务范围和工作模式都会有很大改变,因此需要一个强有力的IT体系解决方案来支撑证券业务集中业务和其他相关增值业 证券集中系统解决方案 采用集中交易模式,券商总部就成为整个交易体系的核心,所有分支机构的交易请求等业务均由券商总部中心进行处理,各分支机构只保留行情服务系统、客户服务接入平台、通讯中间层等前端处理平台;这样有利于统一公司对外服务形象和服务品牌,符合数据仓库、CRM的建设发展趋势,还可以大大降低运营成本。实行集中交易后,总部的重要性显而易见,在使用集中式交易模式,在建设的同时建立至少一个灾难备份中心,起到数据备份和灾难恢复的重要作用。 采取集中交易模式后,整个网络体系结构由两个中心(数据中心和灾备中心)、分支机构等构成,所有分支机构直接接入总部中心。 证券集中交易解决方案 根据券商集中交易的规模(营业部数量、股民数量等),数据中心和灾备中心的主机和数据库系统选型:

ETL 面试资料

题目 1.ETL部分 1.什么是数据准备区?在数据准备区中允许使用的数据结构有哪些?各有什么优缺点? 答: 2.简述异构数据源中的数据抽取技术。 答: 3.数据质量检查的四大类是什么?为每类提供一种实现技术。 答: 4.简述数据仓库中的表的基本类型,以及为了保证引用完整性该以什么样的顺序对它们进行加载。答: 5.在ETL过程中四个基本的过程分别是什么? 答:

6.从ERP源系统中抽取数据最好的方法是什么? 答: 7.简述直接连接数据库和使用ODBC连接数据库进行通讯的优缺点。 答: 8.什么是代理键?简述代理键替换管道如何工作。 答: 9.什么叫缓慢维度变化?请分别阐述三大类维度处理方式。 答: 10.如何实现增量抽取,分别阐述各种增量抽取方式,并且比较各种方式的优劣,及你推荐的做法?答: 11.用过什么ETL工具,以及该工具简单讲述特点。 答:

12. ETL工具一般有哪些组成部分,其中数据流中常用的控件有? 答: 13.简述你在以前项目中的ETL架构思想。 答: 2.数据库部分 1. 比较truncate和delete 命令 答: 2. 视图与表有何区别? 答: 3.请说明ORACLE数据库中实例与数据库的关系,表空间和数据文件的关系。答:

4.ORACLE中varchar2,char两种数据类型有什么区别,如果库表某字段输入“ABC”后储存,该字段数据类型分别为varchar2(10),char(10)存储字节长度以及内容有何区别? 答: 5.找出"作者"库表中没有出现在"获奖名单"库表中的所有作者信息的SQL语句,(提示:使用NOT I N,NOT EXISTS,以及外部连接三种方法),并说明那种方法是不优化的。 出版社: 出版社代码 char(2),出版社名称 varchar2(32) 图书: 图书编号 char(8),图书名称 varchar2(128),出版社代码 char(2),作者代号char(4),图书简介 varchar2(128) 作者: 作者代号 char(4),作者名称 varchar2(10),性别 char(1),年龄 number(3),文学方向 var char2(64) 获奖名单: 获奖日期 date,获奖人员 char(4) 答: 6.有下列两表 Table1 Col1 INT Col2 CHAR (30) Table2 Col1 INT Col2 CHAR (30) 请问下列哪条语句会将table2的全部列插入到table1?() A. INSERT INTO table1(table2.col1,table2.col2) B. INSERT INTO table1SELECT col1, col2 FROM table2 C. INSERT INTO table1 VALUES(SELECT col1,col2FROM table2) D. INSERT INTO table1 (col1, col2) VALUES (SELECT col1, col2 FROM table2) 7.有下列两表 TAB1 TAB2 C1 C2 CX CY ---- ----- ------ ----- A 11 A 21 B 12 C 22 C 13 D 23

数据架构师岗位职责

数据架构师岗位职责 篇一:数据仓库架构师的岗位职责和岗位要求】 数据仓库架构师的岗位职责和岗位要求 根据网络招聘的资料合成的,不过好像听起来好像和项目经理的角色区别不大,呵呵!而且好像都是要全能的上将![@more@] 岗位职责 1. 制定数据仓库建设方案 2. 数据仓库的设计和开发 3. 数据仓库应用方案设计和推广 岗位要求 1 、熟悉大型企业商业智能整体运作模式和系统框架,深刻理解商业智能对业务运营的杠杆作用,能够应用bi 工具指导和帮助业务过程的改进。 2、5 年以上oracle 或者sqlserver 数据库管理经验,熟练使用unix 和linux ,深刻理解数据仓库应用设计原理和实践; 3 、精通数据库索引和sql 语句的优化,和服务器的性能参数调整,有perl, 4 、熟练一种以上主流etl 工具和bi 工具,如informatica,owb,dts 5 、能根据业务需求设计数据仓库模型,有3 年以上数据仓库开发实施经验,掌握多种数据仓库开发,多维分析相关技术和olap 前端展现工具; 6 、有相关行业数据分析经验者及互联网点击流数据分析经验者优先;有数据挖掘应用和开发经验优先; 7 、强烈责任心,开放的性格,良好的沟通能力;较强的分析问题、解决问题能力,良好的沟通能力、团队精神。 8 、熟悉erwin 或powerdesigner 建模工具; 9 、有一个以上企业级数据仓库项目设计经验,精通数据仓库架构,熟悉数据仓库项目的实施流程; 【篇二:数据架构师岗位职责】 1. 制定面向产品的数据设计规范和流程,制定数据设计所需的各种文档模板; 2. 负责数据仓库建模、数据库优化、数据部署,数据抽取等etl 的设计,编写专业的系统设计文档; 3. 对于it 系统应对大数据量和大并发所要求的性能指标从数据模型和部署等方面给出设计和持续的优化支持; 4. 参与产品架构设计文档和详细设计文档的评审; 5. 完成上级领导安排的其他任务。

软件工程师面试题(含答案)

一、你对MVC的理解,MVC有什么优缺点?结合Struts,说明在一个Web应用如何去使用? 答: MVC设计模式(应用观察者模式的框架模式) M: Model(Business process layer),模型,操作数据的业务处理层,并独立于表现层(Independent of presentation)。 V: View(Presentation layer),视图,通过客户端数据类型显示数据,并回显模型层的执行结果。C: Controller(Control layer),控制器,也就是视图层和模型层桥梁,控制数据的流向,接受视图层发出的事件,并重绘视图 MVC框架的一种实现模型 模型二(Servlet-centric): JSP+Servlet+JavaBean,以控制为核心,JSP只负责显示和收集数据,Sevlet,连接视图和模型,将视图层数据,发送给模型层,JavaBean,分为业务类和数据实体,业务类处理业务数据,数据实体,承载数据,基本上大多数的项目都是使用这种MVC的实现模式。StrutsMVC框架(Web application frameworks) Struts是使用MVC的实现模式二来实现的,也就是以控制器为核心。 Struts提供了一些组件使用MVC开发应用程序: Model:Struts没有提供model类。这个商业逻辑必须由Web应用程序的开发者以JavaBean 或EJB的形式提供 View:Struts提供了action form创建form bean, 用于在controller和view间传输数据。此外,Struts提供了自定义JSP标签库,辅助开发者用JSP创建交互式的以表单为基础的应用程序,应用程序资源文件保留了一些文本常量和错误消息,可转变为其它语言,可用于JSP中。Controller:Struts提供了一个核心的控制器ActionServlet,通过这个核心的控制器来调用其他用户注册了的自定义的控制器Action,自定义Action需要符合Struts的自定义Action规范,还需要在struts-config.xml的特定配置文件中进行配置,接收JSP输入字段形成Action form,然后调用一个Action控制器。Action控制器中提供了model的逻辑接口。 二、什么是WebService? 答: WebService是一个SOA(面向服务的编程)的架构,它是不依赖于语言,不依赖于平台,可以实现不同的语言间的相互调用,通过Internet进行基于Http协议的网络应用间的交互。 WebService实现不同语言间的调用,是依托于一个标准,webservice是需要遵守WSDL (web服务定义语言)/SOAP(简单请求协议)规范的。 WebService=WSDL+SOAP+UDDI(webservice的注册) Soap是由Soap的part和0个或多个附件组成,一般只有part,在part中有Envelope和Body。 Web Service是通过提供标准的协议和接口,可以让不同的程序集成的一种SOA架构。Web Service的优点 (1) 可以让异构的程序相互访问(跨平台) (2) 松耦合 (3) 基于标准协议(通用语言,允许其他程序访问) Web Service的基本原理 (1) Service Provider采用WSDL描述服务 (2) Service Provider 采用UDDI将服务的描述文件发布到UDDI服务器(Register server)

数据仓库工程师面试题(笔试1)

数据仓库工程师面试题 姓名:____张小核______ 开始时间:_____:______ 结束时间:_____:_____ 一、数据库 1.使用过哪些数据库?试说出它们的异同。 答:使用过SQL SERVER和ORACLE 它们的区别是:1.sql server 是中小型企业用的,oracle是中大型企业用的;oracle跨平台能在linux上运行,sqlserver只能在windows运行,而linux平台比windows平台稳定,所以安全性高;sqlserver操作简便,oracle比较复杂;oracle能把数据存在不同的硬盘上sqlserver不能;oracle能够回滚表空间查询sqlserver不能;oracle支持label security,sqlserver不能;oracle扩展性比较强。 2.事务有多个性质,其中不包括( B ) A.一致性 B.唯一性 C.原子性 D.隔离性 3.CHAR类型和V ARCHAR类型有何区别? 答:char的长度是固定的,最长2000个字符,当输入的字符小于你定义的字符数目时,它会自动补空值,所以它占用空间较大但是效率高;varchar的长度是可变的,用它可以节省存储空间,但是效率没有char高。 4.视图与表有何区别? 表是实际存在的,视图是一个或多个表结果的映射,实际不存在,所以视图不占用实际的物理空间,但删除时不影响数据,而表影响 5.数据库中常见的约束有哪些? 答:1.非空值约束,是not null;2。唯一性约束,不能重复造成冗余;3.检查约束,能够保证数据完整性;还有主键不能为空,应该是唯一的,字段属性要不能再分 6.有一个空表t_empty,结构是: create table t_empty ( a integer ) 请问以下各语句的输出分别是什么? (A) select sum(a) from t_empty 什么都不输出 (B) select NullToZero(a) from t_empty *假定NullToZero是一个将Null值转成0的标函数 (C) select count(*) from t_empty 7.有下列两表 Table1 Col1 INT

软件工程师面试题含答案

软件工程师面试题含答案

一、你对MVC的理解,MVC有什么优缺点?结合Struts,说明在一个Web应用如何去使用?答: MVC设计模式(应用观察者模式的框架模式)M: Model(Business process layer),模型,操作数据的业务处理层,并独立于表现层(Independent of presentation)。 V: View(Presentation layer),视图,经过客户端数据类型显示数据,并回显模型层的执行结果。C: Controller(Control layer),控制器,也就是视图层和模型层桥梁,控制数据的流向,接受视图层发出的事件,并重绘视图 MVC框架的一种实现模型 模型二(Servlet-centric): JSP+Servlet+JavaBean,以控制为核心,JSP只负责显示和收集数据,Sevlet,连接视图和模型,将视图层数据,发送给模型层,JavaBean,分为业务类和数据实体,业务类处理业务数据,数据实体,承载数据,基本上大多数的项目都是使用这种MVC的实现模式。

StrutsMVC框架(Web application frameworks) Struts是使用MVC的实现模式二来实现的,也就是以控制器为核心。 Struts提供了一些组件使用MVC开发应用程序: Model:Struts没有提供model类。这个商业逻辑必须由Web应用程序的开发者以JavaBean 或EJB的形式提供 View:Struts提供了action form创立form bean, 用于在controller和view间传输数据。另外,Struts提供了自定义JSP标签库,辅助开发者用JSP创立交互式的以表单为基础的应用程序,应用程序资源文件保留了一些文本常量和错误消息,可转变为其它语言,可用于JSP中。 Controller:Struts提供了一个核心的控制器ActionServlet,经过这个核心的控制器来调用其它用户注册了的自定义的控制器Action,自定义Action需要符合Struts的自定义Action规范,

Oracle数据库DBA面试题

数据库。热备份的优点在于当备份时,数据库仍旧可以被使用并且可以将数据库恢复到任意一个时间点。冷备份的优点在于它的备份和恢复 操作相当简单,并且由于冷备份的数据库可以工作在非归档模式下,数据库性能会比归档模式稍好。(因为不必将archive log写入硬盘) 2. 你必须利用备份恢复数据库,但是你没有控制文件,该如何解决问题呢 解答:重建控制文件,用带backup control file 子句的recover 命令恢复数据库。 3. 如何转换到spfile 解答:使用create spfile from pfile 命令 . 4. 解释data block , extent 和segment的区别(这里建议用英文术语) 解答:data block是数据库中最小的逻辑存储单元。当数据库的对象需要更多的物理存储空间时,连续的data block就组成了extent . 一 个数据库对象拥有的所有extents被称为该对象的segment. 5. 给出两个检查表结构的方法 解答:1、DESCRIBE命令 2、包 6. 怎样查看数据库引擎的报错 解答:alert log. 7. 比较truncate和delete 命令 解答:两者都可以用来删除表中所有的记录。区别在于:truncate是DDL操作,它移动HWK,不需要rollback segment .而Delete是DML操作 , 需要rollback segment 且花费较长时间. 8. 使用索引的理由 解答:快速访问表中的data block 9. 给出在STAR SCHEMA中的两种表及它们分别含有的数据 解答:Fact tables 和dimension tables. fact table 包含大量的主要的信息而dimension tables 存放对fact table 某些属性描述的

相关文档
最新文档