bi etl 数据仓库面试培训题
数据工程师面试题
![数据工程师面试题](https://img.taocdn.com/s3/m/99e0856f4a73f242336c1eb91a37f111f1850db4.png)
数据工程师面试题一、问题描述数据工程师是当前热门职位之一,面试中经常会涉及与数据工程相关的问题。
以下是一系列常见的数据工程师面试题,希望能对大家有所帮助。
二、问题列表1. 数据仓库和数据湖有何区别?2. 请描述ETL过程。
3. 什么是事实表和维度表?4. 请解释一下数据架构中的横向扩展和纵向扩展。
5. Redis和MongoDB的主要区别是什么?6. 解释一下数据清洗和数据转换。
7. 请描述一下数据模型化的过程。
8. 什么是数据挖掘?它在数据工程中的作用是什么?9. 解释一下冷热数据分离以及其优势。
10. 什么是数据流水线?三、问题解答1. 数据仓库和数据湖有何区别?数据仓库是一种结构化的、面向主题的、集成的、相对稳定的数据集合,将企业中分散在各个系统中的数据整合为一个统一的数据源。
数据仓库使用固定的模式和模型,适用于对数据进行报表、分析和决策支持等工作。
而数据湖则是以原始、未经整理的形式,将数据以其原始形式存储在数据湖中。
数据湖的模式和模型可以随时根据需求进行变更和调整。
2. ETL过程的描述ETL是指将数据从不同的来源抽取(Extract)、转换(Transform)、加载(Load)到目标数据库或数据仓库的过程。
在这个过程中,数据会经过一系列的清洗、转换和整合,以确保数据的质量和一致性。
ETL过程通常涉及数据抽取、数据清洗、数据转换、数据加载四个步骤。
3. 事实表和维度表的定义和作用事实表是数据仓库中的核心表,包含了与业务过程中的事件或事实相关的度量指标。
它通常包含了与业务分析和报表生成相关的数据字段,如销售数量、订单金额等。
维度表则用于提供多维度的上下文信息,用于对事实表中的度量指标进行分析和解释,如时间维度、地理位置维度等。
4. 数据架构中的横向扩展和纵向扩展横向扩展通常是指通过增加更多的服务器节点来扩大系统的容量和吞吐量,以满足数据规模增长和负载增加的需求。
横向扩展可以通过增加服务器节点来分担负载,提高系统的可伸缩性和可用性。
BI工程师招聘面试题与参考回答
![BI工程师招聘面试题与参考回答](https://img.taocdn.com/s3/m/3890f9d3cd22bcd126fff705cc17552707225e87.png)
招聘BI工程师面试题与参考回答面试问答题(总共10个问题)第一题题目:请解释什么是商业智能(Business Intelligence, BI),并描述BI系统在企业决策中的作用。
此外,请简述一个实际场景,说明BI是如何帮助企业提高效率或解决问题的。
参考答案:商业智能(BI)定义:商业智能是一种综合性的概念,它涵盖了多种技术和应用,旨在帮助企业收集、集成、分析并呈现有用的业务信息,以便管理层做出更为明智的数据驱动型决策。
BI系统通常包括数据仓库、在线分析处理(OLAP)、数据挖掘、查询报表、仪表板等组件,它们共同为企业提供对内部运营和外部环境的深刻洞察。
BI系统在企业决策中的作用:1.数据整合与清洗:BI系统能够从不同的数据源中提取数据,并将其转换为统一格式,便于分析。
2.深入分析:利用高级分析技术如OLAP和数据挖掘,BI可以帮助发现隐藏在数据背后的模式、趋势以及关联性。
3.可视化展示: BI工具通过图表、仪表盘等形式将复杂的数据以直观的方式展现给决策者,使他们更容易理解关键指标的变化。
4.辅助决策:基于上述功能,BI系统可以支持企业制定短期战术调整和长期战略规划,从而提高竞争力。
实际应用场景示例:假设一家零售公司正在努力提高其库存周转率并减少滞销商品的数量。
通过建立BI系统,该公司能够实时监控各个门店的销售数据,并对其进行深入分析。
例如,通过数据挖掘技术发现某些产品在特定季节或时间段内的销售表现不佳。
基于这些分析结果,公司可以及时调整采购策略,减少此类产品的进货量,同时增加热销商品的库存,最终实现优化库存结构、提高资金使用效率的目的。
解析:此题考查了应聘者对于BI基本概念的理解及其对企业价值的认识。
一个好的答案不仅限于理论层面的阐述,还应该能够结合具体案例来展示BI的实际应用效果。
这有助于评估应聘者是否具备将理论知识转化为实践操作的能力,以及他们在面对实际问题时运用BI技术解决问题的潜力。
第二题题目描述:请您谈谈您对BI(商业智能)工程师这个角色的理解,以及您认为一个优秀的BI工程师应该具备哪些核心技能?参考回答:回答内容:我认为BI工程师是负责从数据中提取有价值信息、构建数据模型、设计报表和仪表板,以支持企业决策的专业人士。
数据仓库面试题
![数据仓库面试题](https://img.taocdn.com/s3/m/9d5c23197fd5360cbb1adb63.png)
数据仓库及BI工程师面试题集锦前言1、介绍一下项目经验、项目中的角色。
一、数据库1、Oracle数据库,视图与表的区别?普通视图与物化视图的区别?物化视图的作用?i.视图与表的区别1.1、视图是已经编译好的sql语句。
而表不是2.视图没有实际的物理记录。
而表有。
3.表是内容,视图是窗口4.表只用物理空间而视图不占用物理空间,视图只是逻辑概念的存在,表可以及时四对它进行修改,但视图只能有创建的语句来修改ii.物化视图与视图区别1.物化视图和视图差别非常大,不是几句能说清物化视图是自动刷新或者手动刷新的,视图不用刷新物化视图也可以直接update,但是不影响base 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只是两个查询集的合并操作。
数据仓库常见面试问题
![数据仓库常见面试问题](https://img.taocdn.com/s3/m/2c38dfd7ac51f01dc281e53a580216fc700a533d.png)
数据仓库常见⾯试问题
数据仓库主要⼯作就是模型设计;
1、数仓建模⽅法:范式建模、维度建模、Data Vault; 各⾃优缺点?
2、维度建模的三种⽅式:星型模式、雪花模式、星座模式
3、分层架构:ODS、DW(DW数据分层,由下到上为 DWD,DWB,DWS)、ADS
4、缓慢变化维与退化维;处理缓慢变化维的⽅式(拉链表,拉链表能实现保存历史快照,去除重复数据,节约空间)
5、维度建模过程?
6、事实表有哪些?各⾃含义?
事务型事实表(其中事务的含义?
⼀⾏数据。
⼀旦事务被提交,事实表数据被插⼊,数据就不再进⾏更改,其更新⽅式为增量
更新。
事实的含义?--术语表⽰的是业务事件的度量值(可统计次数、个数、件数、⾦额等))
周期型事实表
不会保留所有数据只保留固定时间间隔的数据,例如每天或者每
⽉的销售额,或每⽉的账户余额等。
稠密(例如当天没发⽣交易,也会记录数据)
累积型事实表
累计快照事实表⽤于跟踪业务事实的变化。
例如,数据仓库中可能需要累积或者存储订
单从下订单开始,到订单商品被打包、运输、和签收的各个业务阶段的时间点数据来跟踪订
单声明周期的进展情况。
当这个业务过程进⾏时,事实表的记录也要不断更新。
参考。
关于数据仓库工程师的一般面试题目
![关于数据仓库工程师的一般面试题目](https://img.taocdn.com/s3/m/5a75a3912e3f5727a4e96224.png)
关于数据仓库工程师的一般面试题目相信会对即将投身于数据仓库事业中的同行们有点帮助!不过这只是针对初级数据仓库工程师的基本问题。
本题只代表自己对数据仓库的肤浅认识,不代表任何公司的面试题目。
对于高级数据仓库工程师的问题更侧重于各种工具的细枝末节。
对于数据仓库架构师的问题更侧重于数据仓库的架构和总体认识。
对于数据仓库项目经理的问题除了以上的问题外,就是一般项目管理的技能了吧。
关于数据仓库部分的面试问题!什么叫数据仓库?(相信inmon的数据仓库概念的四个特点是最基本的吧,当然需要加上自己的理解)数据仓库和数据库有什么区别?(事务性数据库和决策支持数据库的区别,当然包括目标、用途、设计等等)什么叫OLAP?用途是什么?(OLAP指多维数据库了,主要用于多维分析了;包括三种实现方式)什么叫维度和度量值?(一个是出发点,一个是观察值) 数据仓库的基本架构是什么?(数据源,ETL,data stage,ODS,data warehouse,datamart,OLAP等等,可能为针对每一个结构进行发问啊)什么叫缓慢维度变化?(为了表现和记录基础数据变化情况在数据仓库中的记录,包括三大类维度处理方式,缓慢变化维包括三小类)什么叫查找表,为什么使用替代键?(其实目的和上面一样,从基础表到缓慢维度表的过程中的一种实现途径)如何实现增量抽取?(主要采用时间戳方式,提供数据抽取和处理的性能) 用过什么ETL工具(informatica,ssis,owb,datastage),以及该工具简单讲述特点。
ETL都包括那些组成部分(工作流和数据流,数据流包括若干组件处理ETL的各个环节) 用过什么报表工具(bo,hyperion,congo,reporing servce),以及该工具基本特点。
数据仓库项目最重要或需要注意的是什么,以及如何处理?(一般答数据质量,主要是数据源数据质量分析,数据清洗转换,当然也可以定量分析)关于数据库部分的面试题(不是要DBA的,但是还是要具备DBA的部分知识结构) 用过什么数据库(SQLServer,Oracle),并能够讲述其物理和逻辑结构,以Oracle为主能够写基本的SQL语句,分组函数和关联,通常会给几个例子的如何进行性能优化,只要能答索引的基本原理以及各种索引的区别就行了事实上数据仓库和DBA或者其他技术不同,没有什么绝对的答案,只要能表达和描述清楚自己的观点就行了感谢您的阅读,祝您生活愉快。
etl工程师面试题
![etl工程师面试题](https://img.taocdn.com/s3/m/eabecdaa5ff7ba0d4a7302768e9951e79b896923.png)
etl工程师面试题ETL(Extract, Transform, Load)工程师面试题一、简介ETL(Extract, Transform, Load)是一种数据集成的过程,用于从多个数据源抽取数据、在中间层进行转换处理,然后加载到目标系统中。
ETL工程师负责设计、开发和维护ETL流程,确保数据的准确性、一致性和可靠性。
本文将介绍一些常见的ETL工程师面试题。
二、ETL工程师面试题1. 请解释一下ETL的概念和流程。
2. 数据抽取的常见方法有哪些?请描述它们的特点和适用场景。
3. 数据转换的常见操作有哪些?请举例说明。
4. 在ETL过程中,如何处理数据质量问题?5. 请介绍一下ETL工程师应该具备的技能和知识。
6. 你在以往的项目中遇到过哪些ETL相关的挑战?如何解决的?7. 请解释一下维度建模和事实表的概念。
8. 在ETL流程中,如何处理增量抽取和全量抽取的区别?9. 请介绍一下ETL工程师在性能优化方面的工作。
10. 在ETL开发中,你是如何保证数据的安全性和机密性的?三、ETL工程师面试题解答1. ETL的概念和流程ETL(Extract, Transform, Load)是一种数据集成的过程。
首先,从多个数据源中抽取数据,可以是关系型数据库、文件、Web服务等;然后,对抽取的数据进行清洗、转换、整合等处理,以满足目标系统的需求;最后,将经过处理的数据加载到目标系统中,如数据仓库、数据集市等。
2. 数据抽取的常见方法- 增量抽取:仅抽取最新变动的数据,减少重复抽取的数据量。
适用于数据量较大、抽取频率较高的情况。
- 全量抽取:每次都抽取全部数据,确保数据的完整性。
适用于数据量较小、抽取频率较低的情况。
- 增量抽取+回滚:先执行增量抽取,再进行回滚处理。
适用于增量抽取失败时需要保证数据的一致性。
3. 数据转换的常见操作- 字段映射:将源系统的字段映射到目标系统的字段,可以进行字段重命名、数据类型转换等。
BI常见面试问题总结
![BI常见面试问题总结](https://img.taocdn.com/s3/m/8a1de70e0622192e453610661ed9ad51f01d5462.png)
BI常见面试问题总结一、现在是否在项目上?1、刚出项目,目前在看机会;2、还在项目上,大概XX时间出项目。
二、你最快可以什么时候到位?1、如果前面回答不在项目上,就可说拿到OFFER后随时都可以;2、如果前面回答是在项目上,可回答项目结束后马上到位;3、也可以反问下这个项目最迟要求什么时候进?等他回答后,就说时间OK,没问题。
三、你的简历上的项目都是外部的吗?1、根据自己的简历回答。
要注意的是入行的逻辑。
这其实是考察你的真实性,最好简历上有一个符合逻辑的入行轨迹。
如:KEY USER—内部顾问—外部顾问。
四、你在项目上主要负责哪一块?1、BW建模、数据抽取、建一般数据源、建信息对象;2、BO报表、UNI创建;3、写些技术文档、业务蓝图、测试文档;4、参与业务需求调研、讨论业务方案、模型设计。
五、列举一些你做过的报表。
1、财务:资产负债表、增值税商品明细表。
2、业务:销售多维分析表、采购多维分析表、库存及逾期情况表、库龄情况分析表。
3、人资:人员异动分析表、入职统计表、离职统计表、离职原因分析统计表。
六、你最近的一个项目上有几个人?1、5个人:3个BW,1个BO,1个PM;2、7个人:3个BW,2个BO,1个ABAP,1个PM。
七、你项目上人员是怎样分工的?1、3个BW按FICO\MM\SD每人负责一个模块,2个BO一个主要做FICO的报表、一个主要做业务的报表,也就是MM\SD,PM 负责沟通、协调;2、总共60多张报表,我们三个BW顾问平均每人背20张左右,BO他们每人30张左右,有一些需要开发的ABAP做。
八、你英语怎么样?1、没问题;2、文档没问题,沟通会差一点。
九、你希望入职还是FREE?1、都可以。
优先考虑入职吧。
主要看他们优先考虑入职还是FREE。
十、你目前RATE多少?期望是多少?1、以2-3年为例:8K,期望10K。
其他待遇一般为:一天100补助,一月一到两次FLYBACK.十一、你的BASE地在哪?XX地可不可以?1、参考:BASE地无要求。
大数据etl工程师面试题
![大数据etl工程师面试题](https://img.taocdn.com/s3/m/322da430cd7931b765ce0508763231126edb7724.png)
大数据etl工程师面试题1、磁盘RAID级别有几种,分别是哪几种?你了解或者使用过哪几种,请写出它们的大概描述和区别。
(10分)RAID级别存有以下几种:NRAID,JBOD,RAID0,RAID1,RAID0+1,RAID3,RAID5等。
目前经常采用的就是RAID0,RAID1,RAID3,RAID5和RAID(0+1)。
它们的区别大致如下:RAID 0 存取速度最快但没纠错RAID 1 完全容错但成本比较高,磁盘利用率为50%RAID 3 载入性能最出色但没多任务功能RAID 5 具备多任务及容错功能写入时有overheadRAID 0+1 速度快、全然纠错但成本高2、 TCP滑动窗口协议,窗口过大或过小有什么影响,举例(10分)滑动窗口:就是两台主机间传送数据时的缓冲区。
每台TCP/IP主机积极支持两个滑动窗口:一个用作接收数据,另一个用作发送数据。
窗口尺寸则表示计算机可能将缓冲器的数据量大小。
滑动窗口的大小对网络性能有很大的影响。
如果滑动窗口过小,则需要在网络上频繁的传输确认信息,占用了大量的网络带宽;如果滑动窗口过大,对于利用率较高,容易产生丢包现象的网络,则需要多次发送重复的数据,也同样耗费了网络带宽。
3、 Windows之下如何查阅挤占端口的进程(写下命令)(10分后)netstat -aon|findstr ""4、了解一下ACL和NAT?NAT存有几种方式?(10分后)ACL:1、访问控制列表(ACL)是应用在路由器接口的指令列表(规则),用来告诉路由器哪些数据包可以接收转发,哪些数据包需要拒绝;2、ACL的工作原理:读取第三层及第四层包头中的信息,根据预先定义好的规则对包进行过滤;3、使用ACL实现网络控制:实现访问控制列表的核心技术是包过滤;4、ACL的两种基本类型(标准访问控制列表;扩展访问控制列表)NAT:发生改变IP通辽并使目的地址,源地址或两个地址在通辽中被相同地址替代。
ETL面试题
![ETL面试题](https://img.taocdn.com/s3/m/954236c52cc58bd63186bd2e.png)
Contents Contents (1)Data Warehousing questions (1)SQL questions (1)Unix questions (3)Informatica Questions (5)Multiple Choice & True/False Questions (5)Data Warehousing questions1. What is Data Warehousing?Why do we need it?2. What is ad hoc analysis?3. Describe OLAP and OLTP systemsOLAP vs. OTLP: list five main differences.4. What is a fact table in a dimensional model?What is a dimension table?5. Characterize STAR and SNOWFLAKE schemas.6. What is a Slow Changing Dimension?List all known types; describe implementation techniques.7. What is a lookup table?8. Why do we need Dimension Normalization?9. List and describe storage models supporting multidimensional analysis (list pros and cons for each).10. What is ETL?11. What is a Data Mart?12. Describe Slice and Dice techniques.13. What is the main difference between Kimball’s and Inmon’s approaches?14. What is a data mining?List and describe data mining tasks.SQL questions1. What does the abbreviation SQL stand for?2. How would you list all the records in a table?3. What is SQL92?For the next part, let's define the following entities and relationships:entity CUSTOMERattributes: CUSTOMER_ID, CUSTOMER_NAMEentity ACCOUNTattributes: ACCOUNT_NO, CUSTOMER_ID, BALANCEentity EMPLOYEEattributes: EMPLOYEE _ID, EMPLOYEE_NAME, REPORTS_TOentity PROJECTattributes: PROJ_ID, PROJ_NAME, PROJ_LOCATION_ID, PROJ_CITYThe following business rules must apply:The field REPORTS_TO is null for exactly one employee, otherwise it is one of the numbers found in column EMPLOYEE_IDEach employee can work on several projectsEach project can have multiple locationsPROJ_CITY can be derived from PROJ_LOCATION_ID4. Draw/design tables for above business cases in accordance with 3-rd Normal Form (you can defer the data types)5. What is ER model?6. What is normalization?List all known normal forms.7. Describe 3-rd normal form8. How would you update a single customer's name in a customer table?Make up a simple scenario and write the query.9. What is a primary key?List all PKs in the tables you have designed.10. What is a foreign key?List all FKs in the tables you have designed.11. What is a relation?12.What is a relationship?What is referential integrity?13. What is a join?Name all types of joins.14. What is a rollback?15. What is a transaction log?16.What operation (SELECT, INSERT, UPDATE, DELETE) has the highest impact on transaction log?17. What is an index?How is it created?What is its purpose?How much space does it require?When and how is it used?List and explain some of the physical index types.For the next part, write down SQL queries. Assume that all necessary referential and domain integrity controls + take place.18. Find out how many customers we have.19. Set up an initial account for a new customer with balance $100.20. List all duplicate customer names (occurring more than once), including frequency of occurrence.21.List all customers (by names) that have more than $1000 in total combined on all their accounts.22. Find out how many customers have more than 2 accounts.23. Report a simple statistics: number of customers having exactly 1 accounts, 2 accounts, etc. (in onequery).24. Delete a customer and all his/her accounts.25. List all subordinates to the employee with ID=123 on level 1 (i.e. employees that directly report to123).26. List all subordinates to the employee with ID=123 on level 2 (i.e. those that report to someonereporting to 123).For the next part, the queries are more complex and tricky. Feel free to attach some comments if necessary.27. List ALL subordinates to the employee with ID=123 (i.e. anyone under 123).28. Find out the maximum subordinate level (i.e. the depth of the employee tree).Unix questions1. How do you list contents of a directory?2. How do you display contents of a file?How to display first 10 lines?How to display last 200 characters of a file?3. How do you check for running processes?4. How do you kill a process?5. How do you check who's logged in?6. How do you get help on a UNIX terminal?7. Give examples of remote access to a machine.8. What is the shell?Describe purpose of the shell (name 5 shells)9. What is the kernel?10. How to compare two text files if they are identical?11. What is mounting means?Describe the command.12. What is permission of a file?How to change the permission and ownership of a file?13. What ‘.’ (dot) before file name means (.filename)?What will happen if you type “.” (dot) before file name in command prompt (. <space> filename2 <enter>)?14. How do you list contents of a directory including all of its subdirectories, providing full details and sorted by modification time?15. How do you create a symbolic link to a file (give some reasons of doing so)?16. What is a file system? How do you get its usage?17. How do you check the sizes of all users' home directories (one command)?18. How do you check for processes started by user "pat"?19. How do you start a job on background?How to send job to background?How to bring current job to the foreground?How to suspend the foreground job?20. What utility would you use to replace a string "2001" for "2002" in a text file?21. What is a signal?Give some examples.22. How to display statistics about memory usage?23. How do you list contents of a directory and all of its subdirectories, providing full details, but only regular files that haven't been accessed in the last 2 days?24. How do you delete all files older than I year from a directory?25. What is a named pipe? How to create and use one?26. What is an I-node?How many I-nodes are there per file if the file is 1 KB is size, or 1 MB is size?27. What utility would you use to swap columns 1 and 2 in a text file?28. What utility would you use to cut off the first column in a text file?Informatica QuestionsMultiple Choice & True/False Questions1. Which one of the following is not an active transformation:(a)Aggregator(b)Router(c)Filter(d)Expression2.If you click on “Group by” for all ports in the Aggregator transformation, how manyrows would be output?(a) One row(b) All rows(c) No rows3.You can edit data dynamically while in the Debugger.(a) True(b) False4.Which one of the following hierarchies is correct:(a) Worklet, Task, Workflow(b) Task, Worklet, Workflow(c) Workflow, Task, Worklet5.Select the correct order of port processing in an expression transformation:(a) input, output, variable(b) input, variable, output(c) variable, input, output6.If in_lookup_key = 10, what result will the following expression produce?IIF(ISNULL(in_lookup_key), ‘Key not found’,IIF(in_lookup_key >= 1 and in_lookup_key <=5, ‘Low score’,IIF(DECODE(in_lookup_key, 10, 1, 0), ‘Maximum Score’), ‘High Score’)))(a) ‘Maximum Score’(b) ‘High Score’(c) ‘Key not found’(d) ‘Low Score’7.The ports listed in a lookup transformation must match the ports in the lookup tableexactly, or the lookup transformation will fail.(a) True(b) False8.The error message “Failed to expand session parameter variables” means:(a) Variables were not defined within the mapping(b) Parameters were not defined within the mapping(c) Parameters were not defined within the parameter file(d) The parameter file was not defined within the session, batch or workflow9.Which one of these commands is not valid in the update strategy transformation:(a) DD_INSERT(b) DD_UPDATE(c) DD_REJECT(d) DD_DELETE(e) all of the above are valid10.Which one of the following error tracing levels produces the largest session logs:(a) Verbose Init(b) Verbose Data(c) Terse11.Sessions can be run from a UNIX shell script:(a) True(b) FalseShort Answer Questions12.What is the difference between a parameter and a variable?13.Describe the difference between active and passive transformations.14.Describe how you would determine all of the mappings that use a particular target in afolder.。
bi 面试题
![bi 面试题](https://img.taocdn.com/s3/m/a69bf74f78563c1ec5da50e2524de518964bd334.png)
bi 面试题BI面试题现如今,随着信息技术的快速发展和大数据的普及应用,数据分析和商业智能(Business Intelligence,简称BI)的重要性愈发凸显。
越来越多的企业开始重视BI专业人才的招聘,因此BI面试题也备受关注。
本文将针对BI面试题进行探讨,旨在帮助应聘者更好地应对面试。
一、基础知识篇在BI面试中,基础知识的掌握是最为重要的部分。
下面将介绍一些常见的BI基础知识问题。
1. 什么是BI?BI是指通过对企业内部和外部的数据进行收集、清洗、加工、分析和展现,帮助企业决策者更好地了解业务状态、市场趋势和客户需求的一门技术和方法。
2. BI的主要应用领域有哪些?BI可以应用于各个领域,比如销售分析、市场营销、客户关系管理、供应链管理等。
3. 数据仓库与数据集市有什么区别?数据仓库是指将不同系统的数据进行整合存储,用于支持复杂的分析和决策。
而数据集市是数据仓库的子集,主要服务于特定的业务需求。
4. OLAP和OLTP的区别是什么?OLAP(在线分析处理)是一种面向决策分析的技术,目的是通过多维数据分析实现对数据的多角度、多维度的查询和分析。
OLTP(在线事务处理)是指对事务性数据进行高效处理和管理的技术。
二、技术工具篇除了基础知识,BI面试中还常会涉及到一些技术工具的应用和操作。
下面将介绍一些常见的BI技术工具问题。
1. 你熟悉哪些BI工具?回答时可以根据自己的实际经验罗列一些常见的BI工具,比如Tableau、Power BI、Cognos等,并介绍自己在这些工具的应用经验和项目经验。
2. Tableau和Power BI有什么区别?Tableau和Power BI都是常见的数据可视化工具,但Tableau在可视化和交互性方面表现出色,适用于复杂的数据分析需求;而PowerBI则更注重与Microsoft产品的整合和易用性。
3. 如何进行数据清洗?数据清洗是BI过程中非常关键的一步。
可以介绍常用的数据清洗技术,比如去重、填充缺失值、异常值处理等,并结合具体场景进行说明。
数据仓库架构师面试题
![数据仓库架构师面试题](https://img.taocdn.com/s3/m/a618fce5551810a6f5248623.png)
数据仓库(商业智能)/ETL架构师面试题1. What is a logical data mapping and what does it mean to the ETL team?什么是逻辑数据映射?它对ETL项目组的作用是什么?答:逻辑数据映射(Logical Data Map)用来描述源系统的数据定义、目标数据仓库的模型以及将源系统的数据转换到数据仓库中需要做操作和处理方式的说明文档,通常以表格或Excel的格式保存如下的信息:目标表名:目标列名:目标表类型:注明是事实表、维度表或支架维度表。
SCD类型:对于维度表而言。
源数据库名:源数据库的实例名,或者连接字符串。
源表名:源列名:转换方法:需要对源数据做的操作,如Sum(amount)等。
逻辑数据映射应该贯穿数据迁移项目的始终,在其中说明了数据迁移中的ETL 策略。
在进行物理数据映射前进行逻辑数据映射对ETL项目组是重要的,它起着元数据的作用。
项目中最好选择能生成逻辑数据映射的数据迁移工具。
2. What are the primary goals of the data discovery phase of the data warehouse project?在数据仓库项目中,数据探索阶段的主要目的是什么?答:在逻辑数据映射进行之前,需要首先对所有的源系统进行分析。
对源系统的分析通常包括两个阶段,一个是数据探索阶段(Data Discovery Phase),另一个是异常数据检测阶段。
数据探索阶段包括以下内容:1.收集所有的源系统的文档、数据字典等内容。
2.收集源系统的使用情况,如谁在用、每天多少人用、占多少存储空间等内容。
3.判断出数据的起始来源(System-of-Record)。
4.通过数据概况(Data Profiling)来对源系统的数据关系进行分析。
数据探索阶段的主要目的是理解源系统的情况,为后续的数据建模和逻辑数据映射打下坚实的基础。
数据专员的面试题目(3篇)
![数据专员的面试题目(3篇)](https://img.taocdn.com/s3/m/4dd68a21b207e87101f69e3143323968001cf40a.png)
第1篇一、基础知识部分1. 请简要介绍数据专员的工作职责和日常工作内容。
2. 数据专员在数据处理过程中,需要掌握哪些基本技能?3. 什么是数据清洗?请列举至少三种数据清洗的方法。
4. 什么是数据挖掘?请简述数据挖掘的基本步骤。
5. 请解释什么是数据仓库,以及数据仓库的主要作用。
6. 请简述大数据与云计算的关系,以及它们在数据管理中的应用。
7. 请说明什么是数据可视化,以及数据可视化在数据分析中的作用。
8. 什么是数据治理?请列举数据治理的几个关键点。
9. 请简述数据安全的基本原则,以及如何确保数据安全。
10. 请解释什么是数据质量,以及如何评估数据质量。
二、SQL编程部分1. 请使用SQL语句查询“员工表”中年龄大于30岁的男性员工的姓名和职位。
2. 请使用SQL语句查询“销售表”中,销售金额最高的前5名产品及其销售金额。
3. 请使用SQL语句查询“客户表”中,客户所在城市为“北京”的客户数量。
4. 请使用SQL语句查询“订单表”中,订单日期为“2023-11-01”的订单详情。
5. 请使用SQL语句查询“员工表”中,部门名称为“财务部”的员工姓名和邮箱。
6. 请使用SQL语句查询“销售表”中,每个销售人员的销售总额和销售数量。
7. 请使用SQL语句查询“客户表”中,客户名称包含“科技”的客户所在城市。
8. 请使用SQL语句查询“订单表”中,订单日期在“2023-01-01”到“2023-12-31”之间的订单详情。
9. 请使用SQL语句查询“员工表”中,职位为“经理”的员工姓名、年龄和所在部门。
10. 请使用SQL语句查询“销售表”中,销售金额最高的前10名产品及其销售员姓名。
三、数据分析与统计部分1. 请简述如何通过数据分析发现业务问题。
2. 请解释什么是相关性分析,以及如何进行相关性分析。
3. 请简述如何通过数据分析进行客户细分。
4. 请解释什么是时间序列分析,以及时间序列分析在数据分析中的应用。
ETL测试面试常见问题
![ETL测试面试常见问题](https://img.taocdn.com/s3/m/99f9407824c52cc58bd63186bceb19e8b8f6ecc7.png)
ETL测试⾯试常见问题ETL测试⾯试常见问题 未来随着⼤数据和⼈⼯智能的进⼀步发展,ETL测试在国内的需要必然会从0到有的突破,下⾯我们就未来国内求职ETL 测试岗位可能碰到的⾯试题进⾏说明。
问:什么是ETL? 答:ETL是Extracting-Transfroming-Loading的`缩写,指从任何外部系统提取、转换、载⼊数据到⽬标地。
这是数据集成过程的三⼤基本步骤。
Extracting:从源数据中提取⽬标数据集 Transfroming:将⽬标数据集进⾏业务逻辑转换 Loading:以合适的格式将经过业务逻辑转换的数据集载⼊到⽬标地 问:为什么ETL测试是必须的? 答: 为了对从源到⽬的转换过程中的数据进⾏检查 跟踪整个ETL过程的效率和速度 熟悉ETL过程,才能更好的服务于我们的企业实践 问:ETL测试⼯程师的主要职责是什么? 答: 深⼊理解ETL⼯具和过程 为ETL测试各阶段设计测试场景 针对各阶段的测试场景实施不同类型的测试 对数据质量进⾏检查 问:在ETL过程中,维度指什么? 答:维度指汇总数据时进⾏的排序的组或类别 问:在ETL过程中,什么是Staging Area? 答:Staging Area⾄在ETL过程中临时存储的地⽅,在这⾥,我们通常会进⾏数据清理和重复检查等处理 问:请解释下ETL Mapping Sheets(ETL映射表) 答:ETL映射表包含了从源中提取的⾏和列的所有的信息。
该表能帮助我们更好的完成整个ETL过程和ETL测试。
问:请列举⼏个ETL测试常见的⽤例并解释说明 答: ETL映射表验证:验证映射表中的各项信息是否正确 数据检查:验证数据的准确性、数值、null检查等等 正确性问题:验证数据的拼写是否有错、数据是否有错和是否存在空数据等问题 问:请列举你所知道的ETL bug类型 答:计算错误、⽤户界⾯bug、源数据错误、边界错误等【ETL测试⾯试常见问题】相关⽂章:1.2.3.4.5.6.7.8.。
BI常见面试问题总结(5篇)
![BI常见面试问题总结(5篇)](https://img.taocdn.com/s3/m/dcef1d7bff4733687e21af45b307e87100f6f874.png)
BI常见面试问题总结(5篇)第一篇:BI常见面试问题总结一、现在是否在项目上?1、刚出项目,目前在看机会;2、还在项目上,大概XX时间出项目。
二、你最快可以什么时候到位?1、如果前面回答不在项目上,就可说拿到OFFER后随时都可以;2、如果前面回答是在项目上,可回答项目结束后马上到位;3、也可以反问下这个项目最迟要求什么时候进?等他回答后,就说时间OK,没问题。
三、你的简历上的项目都是外部的吗?1、根据自己的简历回答。
要注意的是入行的逻辑。
这其实是考察你的真实性,最好简历上有一个符合逻辑的入行轨迹。
如:KEY USER—内部顾问—外部顾问。
四、你在项目上主要负责哪一块?1、BW建模、数据抽取、建一般数据源、建信息对象;2、BO报表、UNI创建;3、写些技术文档、业务蓝图、测试文档;4、参与业务需求调研、讨论业务方案、模型设计。
五、列举一些你做过的报表。
1、财务:资产负债表、增值税商品明细表。
2、业务:销售多维分析表、采购多维分析表、库存及逾期情况表、库龄情况分析表。
3、人资:人员异动分析表、入职统计表、离职统计表、离职原因分析统计表。
六、你最近的一个项目上有几个人?1、5个人:3个BW,1个BO,1个PM;2、7个人:3个BW,2个BO,1个ABAP,1个PM。
七、你项目上人员是怎样分工的?1、3个BW按FICOMMSD每人负责一个模块,2个BO一个主要做FICO的报表、一个主要做业务的报表,也就是MMSD,PM负责沟通、协调;2、总共60多张报表,我们三个BW顾问平均每人背20张左右,BO他们每人30张左右,有一些需要开发的ABAP做。
八、你英语怎么样?1、没问题;2、文档没问题,沟通会差一点。
九、你希望入职还是FREE?1、都可以。
优先考虑入职吧。
主要看他们优先考虑入职还是FREE。
十、你目前RATE多少?期望是多少?1、以2-3年为例:8K,期望10K。
其他待遇一般为:一天100补助,一月一到两次FLYBACK.十一、你的BASE地在哪?XX地可不可以?1、参考:BASE地无要求。
ETL工程师面试题
![ETL工程师面试题](https://img.taocdn.com/s3/m/753ced576fdb6f1aff00bed5b9f3f90f76c64d02.png)
ETL工程师面试题ETL工程师是现代数据处理领域中非常重要的角色之一。
ETL (Extract-Transform-Load)是指数据提取、转换和加载的过程,用于将源系统的数据整合、清洗、转换并加载到目标系统中。
ETL工程师负责设计、开发和维护这些ETL流程,确保数据的准确性和可用性。
在ETL工程师的面试中,常会涉及与ETL流程相关的技术和概念。
下面是一些可能会被问到的ETL工程师面试题。
1. 请解释一下ETL的概念以及其在数据处理中的作用。
ETL是指从源系统中提取数据,进行转换和清洗,然后加载到目标系统中的过程。
它在数据处理中的作用是确保数据的准确性和一致性,以便进一步进行数据分析和决策。
2. 请列举几个常见的ETL工具或平台,并说明它们的特点。
常见的ETL工具或平台包括Informatica、DataStage、SSIS (SQL Server Integration Services)等。
这些工具提供了可视化的界面和丰富的功能,可以方便地设计和开发ETL流程,并支持多种数据源和目标系统。
3. 请简述数据仓库和数据湖的概念,并比较它们的特点。
数据仓库是一个面向主题的、集成的、相对稳定的数据集合,用于支持企业的决策分析。
而数据湖是一个存储原始、未经处理的数据的存储系统,可以用于存放各种类型和各种形式的数据。
数据仓库需要提前进行数据建模和设计,而数据湖不需要,它可以存储任意结构的数据。
数据仓库适用于已知的查询和分析需求,而数据湖适用于探索性的数据分析和机器学习任务。
4. 请描述一下ETL流程中的数据清洗操作。
数据清洗是ETL流程中非常重要的一步,用于处理源数据中的缺失值、异常值和重复值等。
常见的数据清洗操作包括删除重复记录、填补缺失值、处理异常值等。
清洗后的数据可以提高数据质量,减少后续分析和决策的误差。
5. 请解释一下维度和事实表的概念,并说明它们在数据仓库中的作用。
维度是对业务过程中的特定方面进行描述的属性集合,如时间维度、地理维度等。
初级数据开发面试题目(3篇)
![初级数据开发面试题目(3篇)](https://img.taocdn.com/s3/m/c84c191a5bcfa1c7aa00b52acfc789eb172d9e39.png)
第1篇第一部分:基础知识1. SQL基础- 题目:请描述SQL中的SELECT、INSERT、UPDATE、DELETE语句的基本用法。
- 解析:此题考察对SQL基本命令的理解。
应聘者应能够清晰地解释每个命令的作用和语法结构。
2. 数据库类型- 题目:简述关系型数据库和非关系型数据库的主要区别。
- 解析:考察应聘者对不同数据库类型的了解。
应聘者应能够区分关系型(如MySQL、Oracle)和非关系型(如MongoDB、Cassandra)数据库的特点。
3. 数据库设计- 题目:请解释什么是范式,以及如何识别并解决范式冲突。
- 解析:此题考察应聘者对数据库设计的理解。
应聘者应能够解释第一范式到第三范式,并说明如何在实际设计中应用。
4. 数据类型- 题目:列出几种常见的数据类型,并说明它们在数据库中的作用。
- 解析:考察应聘者对数据类型的认识。
应聘者应能列举出如INT、VARCHAR、DATE等常见数据类型,并解释其用途。
第二部分:编程技能5. Python基础- 题目:编写一个Python函数,实现将字符串中的空格替换为下划线。
- 解析:此题考察应聘者的编程能力。
应聘者应能够编写一个简单的函数来完成字符串替换操作。
6. 数据处理- 题目:使用Python处理一个包含学生信息的CSV文件,提取所有成绩超过90分的学生的名字和成绩。
- 解析:此题考察应聘者对Python数据处理库(如pandas)的了解。
应聘者应能够读取CSV文件,筛选数据,并提取所需信息。
7. 脚本编写- 题目:编写一个shell脚本,实现自动备份当前目录下的所有图片文件。
- 解析:此题考察应聘者的脚本编写能力。
应聘者应能够编写一个shell脚本来完成备份任务。
第三部分:数据仓库与ETL8. ETL概念- 题目:解释ETL的概念及其在数据仓库中的作用。
- 解析:此题考察应聘者对数据仓库和ETL(Extract, Transform, Load)流程的理解。
数据仓库etl开发 考题
![数据仓库etl开发 考题](https://img.taocdn.com/s3/m/9a182d66182e453610661ed9ad51f01dc28157d2.png)
数据仓库etl开发考题数据仓库ETL开发考题一、引言:数据仓库的重要性数据仓库是在企业中建立的一个集成、主题导向的、相对稳定的、面向主管式决策支持的数据存储。
它能够将企业内部各个部门的数据进行整合,形成一张全面而统一的数据图景,为企业决策提供重要支持。
ETL(抽取、转换、加载)是建立数据仓库的关键环节,本文将针对数据仓库ETL开发的考题进行探讨。
二、数据抽取1. 数据抽取的概念及目的数据抽取是指从各个数据源中获取需要的数据,并将其提取到数据仓库中的过程。
其目的在于保证数据的准确性、完整性,以满足企业的决策支持需求。
2. 数据抽取的方法及其优缺点(1) 增量抽取:只抽取最新的数据,适用于数据源更新频率较高的情况。
优点是节省了抽取时间和存储空间,但缺点是可能会漏抽或重抽数据。
(2) 全量抽取:每次都抽取全量数据,适用于数据源更新频率较低或需要全面分析的情况。
优点是保证了数据的完整性,但缺点是耗时、消耗存储空间。
3. 数据抽取的工具及其特性(1) Sqoop:适用于大规模数据的批量抽取,支持与关系型数据库之间的数据交互。
(2) Kafka Connect:支持实时数据抽取和流式传输,具有高可伸缩性和容错性。
(3) Flume:适用于日志等半结构化数据的抽取,具有高可靠性和可扩展性。
(4) 自定义抽取程序:可根据具体业务需求定制化开发,但工作量较大。
三、数据转换1. 数据转换的概念及目的数据转换是指将抽取到的数据进行清洗、整合、格式转换等操作,以确保数据质量和可用性,满足数据仓库的需求。
2. 数据转换的方法及其优缺点(1) 数据清洗:删除重复数据、处理缺失值、纠正错误等,优点是提高了数据质量,但缺点是耗时且可能会丢失有价值的信息。
(2) 数据整合:将多个数据源中的数据进行统一、合并,优点是消除了数据冗余,但可能需要处理数据分歧和冲突。
(3) 数据格式转换:将数据转换为适合数据仓库存储和分析的格式,例如将文本数据转换为结构化数据(如JSON、CSV等),优点是提高了数据的可解析性和查询效率。
ETL面试资料
![ETL面试资料](https://img.taocdn.com/s3/m/732d89325e0e7cd184254b35eefdc8d376ee1433.png)
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.有下列两表Table1Col1 INTCol2 CHAR (30)Table2Col1 INTCol2 CHAR (30)请问下列哪条语句会将table2的全部列插入到table1?()A. INSERT INTO table1(table2.col1,table2.col2)B. INSERT INTO table1SELECT col1, col2 FROM table2C. INSERT INTO table1 VALUES(SELECT col1,col2FROM table2)D. INSERT INTO table1 (col1, col2) VALUES (SELECT col1, col2 FROM table2)7.有下列两表TAB1 TAB2C1 C2 CX CY---- ----- ------ -----A 11 A 21B 12C 22C 13D 23如果要得到如下的输出结果:C1 C2 CX CY----- ----- ---- -----A 11 A 21C 13 C 22-- -- D 23下列哪条语句会得到所需的结果? ()A. SELECT*FROM tab1 INNER JOIN tab2 ON c1=cxB. SELECT*FROM tab2 FULL OUTER JOIN tab1 ON c1=cxC. SELECT*FROM tab2 RIGHT OUTER JOIN tab1 ON c1=cxD. SELECT*FROM tab1 RIGHT OUTER JOIN tab2 ON c1=cx8.事务有多个性质,其中不包括()A.一致性 B.唯一性C.原子性 D.隔离性9.有一个空表t_empty,结构是:create table t_empty(a integer)请问以下各语句的输出分别是什么?(A) select sum(a) from t_empty(B) select nvl(a,0) from t_empty(C) select count(*) from t_empty答案1.ETL部分1.在数据抽取阶段,我们需要连接到源系统,为了对源系统的影响尽量小,我们需要将抽取的数据保存成文本文件或者放入数据准备区的表中,这样,当ETL过程出现错误而失败时,我们就可以从这些文本文件开始ETL,而不需要再次影响源系统。
数据仓库面试题
![数据仓库面试题](https://img.taocdn.com/s3/m/dcdaf104f111f18583d05a92.png)
数据仓库及BI工程师面试题集锦前言1、介绍一下项目经验、项目中的角色。
一、数据库1、Oracle数据库,视图与表的区别?普通视图与物化视图的区别?物化视图的作用?i.视图与表的区别1. 1、视图是已经编译好的sql语句。
而表不是2. 视图没有实际的物理记录。
而表有。
3. 表是内容,视图是窗口4. 表只用物理空间而视图不占用物理空间,视图只是逻辑概念的存在,表可以及时四对它进行修改,但视图只能有创建的语句来修改ii. 物化视图与视图区别1.物化视图和视图差别非常大,不是几句能说清物化视图是自动刷新或者手动刷新的,视图不用刷新物化视图也可以直接update,但是不影响base 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只是两个查询集的合并操作。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
面试培训题
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查出来的数据是不会变的,对应目的地是不会变的。
公交方式有多种,对应执行计划有多种)
七.通常在一个组织中,DW项目组和BI项目组是分开的两个项目组。
其中DW项目组,即数据仓库项目组,主要负责后台数据仓库的建模、数据的整合等功能的实现;而BI项目组,即商业智能项目组,主要负责前台数据展现、报表、OLAP及数据挖掘等功能的实现。
八.OLTP和OlAP
九.优化器有两种,rbo和cbo,rbo是基于规则的优化器(rule),cbo是基于成本的优化器(cost),现在都是cbo,rbo已经淘汰不用了
十.在数据仓库的建模中,代理键通常是建立在维度表中的。
那么在事实表中如何呢?在建立逻辑模型时,事实表中显然是没必要建立代理键的,但是到了物理模型,在某些特定的情况下是可以考虑建立代理键。
代理键+普通列
十一.RPD模型(BI分层模型)
1物理层:从多个数据源里取数据。
集成元数据
2逻辑层:维表-维度-粒度,表别名-列别名
3展示层:用合适,美观的图表展示出来
十二.增删改查:insert/delete/update/select
十三.常用关系型数据库
小型:access
中型:SQL SEVER MYSQL
大型:oracle db2。