首页 > 其他分享 >ETL测试工具和面试常见的问题及答案

ETL测试工具和面试常见的问题及答案

时间:2023-05-16 19:01:55浏览次数:29  
标签:过程 面试 测试 测试工具 工具 数据 ETL 进行

 

概述

        商业信息和数据对于任何一个企业而言都是至关重要的。现在很多公司都投入了大量的人力、资金和时间对这些信息、数据进行分析和整理。

数据的分析和整理已经获得了巨大的潜在市场,因此为了使得这个过程更为简单,越来越多的软件供应商引入了ETL测试工具。

目前,有需要开源的ETL工具,供应商允许用户直接从他们的官方网站免费下载,但有可能升级到新版或企业版需要订阅付费。

所以我们需要根据企业的不同业务结构和模型,在选择ETL工具之前,对其进行分析。在这些开源的ETL工具的帮助下,我们将有机会尝试在不付需要投入巨额资金的情况下对我们的数据进行分析和整理。

而当前几乎所有的巨头软件供应商都推出了自己的BI或ETL工具。

一些常用的ETL工具

  • Talend Open Stduio
  • Clover ETL
  • Elixir
  • Pentaho
  • Informatica
  • IBM - Cognos Data Manager
  • Oracle - Data Integrator
  • SAS - Data Integration Studio
  • AB Inito, SAP - BUsiness Objects Data Integrator

一旦选择了ETL工具,下一阶段就是对该工具进行测试调研,以进一步了解该工具的特性。

这类工具有助于处理海量的数据和历史数据,同时必须能执行ETL测试,以确保数据的准确性,因此ETL测试是非常的重要的。

ETL有效的两种测试类型

  • 应用测试
  • 数据测试

ETL测试过程

虽然现在有很多的ETL工具用于数据处理,但对于实际业务而言,ETL测试是同样的重要。

一个良好的ETL测试策略定义可以使得测试过程变得更容易,因此在选择ETL工具前应该遵循这个基本的测试过程。

ETL测试过程:

  • 分析需求:理解业务结构极其特殊要求
  • 验证和测试评估:对进行过程所需的时间和专业知识进行评估
  • 测试计划和设计测试环境:基于输入进行估算,计划并制定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、源数据错误、边界错误等

小结

当然本文所列举的工具并未深入进行说明,而所列的几个面试题也只是一些基本的概念,后续会进一步介绍这类的知识,以从0到有的增强个人的能力,扩展知识面。

标签:过程,面试,测试,测试工具,工具,数据,ETL,进行
From: https://blog.51cto.com/deeptest/6286474

相关文章

  • 4年经验面试要15K,一问自动化却以为我在刁难他?
    金3银4黄金期,我们公司也开始大量招人了,我这次是公司招聘的面试官之一,主要负责一些技术上的考核,这段时间还真让我碰到了不少奇葩求职者昨天公司的HR小席刚跟我吐槽:这个星期没有哪天不加班的!各种招聘网站上的消息源源不断,连吃饭都要回消息……看来最近大家跳槽的心都很活跃。之前......
  • 01-面试必会-JAVA基础篇
    1.Final有什么用?被final修饰的类不可以被继承被final修饰的方法不可以被重写被final修饰的变量不可以被改变,被final修饰不可变的是变量的引用,而不是引用指向的内容,引用指向的内容是可以改变的2.什么是重载(Overload)和重写(Override)?重载:发生在同一个类中,方法名相......
  • get getline读取一行时区别
    原因:getline读取到换行符时会返回并丢弃换行符,get不会丢弃,下次使用get时会第一个就读到换行符,马上返回。......
  • 西门子PLC测试工具,支持S7200,SMART 1200 1500 300等各种PLC,到手即用,。
    西门子PLC测试工具,支持S7200,SMART12001500300等各种PLC,到手即用,。ID:7599678893815132......
  • 一天吃透SpringCloud面试八股文
    1、什么是SpringCloud?Springcloud流应用程序启动器是基于SpringBoot的Spring集成应用程序,提供与外部系统的集成。SpringcloudTask,一个生命周期短暂的微服务框架,用于快速构建执行有限数据处理的应用程序。SpringCloud各个微服务之间为什么要用http交互?难道不慢吗?Spr......
  • 01-面试必会-JAVA基础篇
    1.Final有什么用?被final修饰的类不可以被继承被final修饰的方法不可以被重写被final修饰的变量不可以被改变,被final修饰不可变的是变量的引用,而不是引用指向的内容,引用指向的内容是可以改变的2.什么是重载(Overload)和重写(Override)?重载:发生在同一个类中,方法名相......
  • 03-面试必会-Mysql篇
    1.Mysql查询语句的书写顺序Select[distinct]<字段名称>from表1[<join类型>join表2on<join条件>]where<where条件>groupby<字段>having<having条件>orderby<排序字段>limit<起始偏移量,行数>2.Mysql查询语句的执行顺序(8)Select(9)di......
  • 02-面试必会-SSM框架篇
    01-什么是SpringIOC和DI?IOC:控制翻转,它把传统上由程序代码直接操控的对象的调用权交给容器,通过容器来实现对象组件的装配和管理。所谓的“控制反转”概念就是对组件对象控制权的转移,从程序代码本身转移到了外部容器。DI:依赖注入,在我们创建对象的过程中,把对象依......
  • 04-面试必会-Redis篇
    01-你们项目中哪里用到了Redis?在我们的项目中很多地方都用到了Redis,Redis在我们的项目中主要有三个作用:使用Redis做热点数据缓存/接口数据缓存使用Redis存储一些业务数据,例如:验证码,用户信息,用户行为数据,数据计算结果,排行榜数据等使用Redis......
  • 06-面试必会-MQ篇
    RabbitMQ01-你们项目中哪里用到了RabbitMQ?我们项目中很多地方都使用了RabbitMQ,RabbitMQ是我们项目中服务通信的主要方式之一,我们项目中服务通信主要有二种方式实现:通过Feign实现服务调用通过MQ实现服务通信基本上除了查询请求之外,大部分的服务调用都采......