大数据之数据仓库技术:ETL工具和Kettle简介

news2025/2/21 13:26:21

大数据之数据仓库技术:ETL工具和Kettle简介

    • ETL简介
    • ETL工具和Kettle
      • Kettle家族
    • Kettle资源
    • KettlePack 任务调度工具

ETL简介

ETL(Extract-Transform-Load): 在大数据技术领域内,用来描述将数据从 来源端 经过 抽取(extract), 转换(transform), 加载(load) 至 目的端 的过程。 ETL 一词常用在数据仓库,但其对象并不限于数据仓库。

因此,ETL 更多是一个抽象概念,可以用任何编程语言来完成开发。无论是 python, java, 甚至数据库的 存储过程,只要它最终是让数据完成 抽取 -> 转化 -> 加载 的效果即可。
愈来愈多的企业采用工具或抽象成类来实现开发和管理。

ETL 能够对各种分布的、异构的源数据(如关系数据)进行 抽取,按照预先设计的规则将不完整数据、重复数据以及错误数据等 脏数据 内容进行 清洗,得到符合要求的 干净 数据,并 加载 到数据仓库中进行存储,这些 “干净” 数据就成为了数据分析、数据挖掘的基石。

ETL 是实现商务智能(Business Intelligence,BI)的核心。一般情况下,ETL会花费整个BI项目三分之一的时间,因此ETL设计得好坏直接影响BI项目的成败。

如果说 数据仓库 的模型设计是一座大厦的设计蓝图,数据是砖瓦的话,那么 ETL 就是建设大厦的过程。

在这里插入图片描述

ETL工具和Kettle

Kettle(Pentaho Data Integration): 中文名叫水壶,项目的概念是把各种数据放到一个壶里,然后以指定的格式流出。是国外开源的 ETL 工具,纯 java 编写,可以在Windows、Linux、Unix上运行。

Kettle入门: https://blog.csdn.net/qq_44134480/article/details/128748898:

Kettle家族

Kettle 家族目前包括4个产品:SpoonPanCHEFKitchen

  1. Spoon:勺子,GUI方式的 转换 设计工具。 可以用来开发 转换任务创建数据库集群分区 等。

  2. Pan:煎锅,命令行方式的 转换 执行工具。可批量执行,并支持后台运行。

  3. Chef:厨师,GUI方式的 作业(job) 设计工具。 任务通过允许每个转换,任务,脚本等等,更有利于自动化更新数据仓库的复杂作业。

  4. Kitchen:厨房,命令行方式的 作业(job) 执行工具。 可批量使用由 Chef 设计的任务 (例如使用一个时间调度器)。KITCHEN也是一个后台运行的程序。

但要注意:kettle的内存释放极差,一定要监测kettle的内存使用情况。

kettle文件类型:

  • .ktr: 即 Transformation, 完成数据的基础转换。
  • .kjb: 即 Job, 完成整个作业流的控制。一个作业包含一个或多个转换。
  • .kdb: 数据库配置文件

Kettle资源

  • GitHub项目主页: https://github.com/pentaho/pentaho-kettle
  • https://juejin.cn/s/kettle官网
  • Kettle中文网 http://www.kettle.org.cn/

KettlePack 任务调度工具

KettlePack 是由从晶科技开发的基于Kettle9(兼容Kettle8及其他版本)的web端调度监控管理平台,专门用来调度和监控由Kettle客户端创建的Job和Transformation。
安装使用简单方便,并拥有完善的帮助文档和在线支持,目前基本可以支持所有的组件,包括大数据组件(hbase、hive、hdfs等)。


浅谈ETL https://www.jianshu.com/p/da9beed7341f
ETL简介 https://blog.csdn.net/fuhanghang/article/details/129546712
kettle概念-ETL,Kettle,Spoon等区别 https://blog.csdn.net/u014636209/article/details/82055854
Kettle简介 https://blog.csdn.net/qq_44134480/article/details/128748898

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1639525.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[1678]旅游景点信息Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 JSP 旅游景点信息管理系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql…

【介绍下Apache的安装与目录结构】

🎥博主:程序员不想YY啊 💫CSDN优质创作者,CSDN实力新星,CSDN博客专家 🤗点赞🎈收藏⭐再看💫养成习惯 ✨希望本文对您有所裨益,如有不足之处,欢迎在评论区提出…

Spark RDD的分区与依赖关系

Spark RDD的分区与依赖关系 RDD分区 RDD,Resiliennt Distributed Datasets,弹性式分布式数据集,是由若干个分区构成的,那么这每一个分区中的数据又是如何产生的呢?这就是RDD分区策略所要解决的问题,下面我…

Luminar开始为沃尔沃生产下一代激光雷达传感器

在自动驾驶技术的浪潮中,激光雷达(LiDAR)传感器以其高精度和强大的环境感知能力,逐渐成为了该领域的技术之星。Luminar(路安达)公司作为自动驾驶技术的领军企业,近日宣布已开始为沃尔沃汽车生产…

智能家居|基于SprinBoot+vue的智能家居系统(源码+数据库+文档)

智能家居目录 基于SprinBootvue的智能家居系统 一、前言 二、系统设计 三、系统功能设计 1管理员:个人中心管理功能的详细实现 2管理员:用户信息管理功能的详细实现 3管理员:家具管理功能的详细实现 4管理员:任务管理功能…

Golang | Leetcode Golang题解之第63题不同路径II

题目&#xff1a; 题解&#xff1a; func uniquePathsWithObstacles(obstacleGrid [][]int) int {n, m : len(obstacleGrid), len(obstacleGrid[0])f : make([]int, m)if obstacleGrid[0][0] 0 {f[0] 1}for i : 0; i < n; i {for j : 0; j < m; j {if obstacleGrid[i]…

leetCode65. 有效数字

leetCode65. 有效数字 题目思路 代码 class Solution { public:bool isNumber(string s) {int l 0, r s.size() - 1;// 1.忽略前后的空格while(l < r && s[l] ) l;while(l < r && s[r] ) r--;if(l > r) return false;s s.substr(l,r - l 1)…

Docker——生产案例(如何修改Docker部署服务的端口映射)

目录 前言 1. 测试环境中新建Apache服务 2.停止容器和Docker服务 3.修改容器配置 4.重启Docker服务并访问测试 前言 由于接替原工作人员的工作之后&#xff0c;上级需要修改Docker部署Apache服务的端口映射&#xff0c;将89端口修改为99端口&#xff0c;那我们该如何修改呢…

GitHub Copilot 简单使用

因为公司安全原因&#xff0c;并不允许在工作中使用GitHub Copilot&#xff0c;所以&#xff0c;一直没怎么使用。最近因为有一些其它任务&#xff0c;所以&#xff0c;试用了一下&#xff0c;感觉还是很不错的。&#xff08;主要是C和Python编程&#xff09; 一&#xff1a;常…

不固定属性分组的减轻校准偏差以改善医学成像分析中的公平性

文章目录 Mitigating Calibration Bias Without Fixed Attribute Grouping for Improved Fairness in Medical Imaging Analysis摘要方法实验结果 Mitigating Calibration Bias Without Fixed Attribute Grouping for Improved Fairness in Medical Imaging Analysis 摘要 这…

预训练模型介绍

一、什么是GPT GPT 是由人工智能研究实验室 OpenAI 在2022年11月30日发布的全新聊天机器人模型, 一款人工智能技术驱动的自然语言处理工具 它能够通过学习和理解人类的语言来进行对话, 还能根据聊天的上下文进行互动,能完成撰写邮件、视频脚本、文案、翻译、代码等任务 二、 为…

分享几个嵌入式操作系统

文章目录 1. 概述2. 常见的RTOS2.1 μC/OS2.2 FreeRTOS2.3 RT-Thread2.4 其它系统1. 概述 最近在查阅一些物联网系统相关的知识,因此查到了实时操作系统(Real Time Operating System,简称RTOS)。我最早接触的RTOS是μC/OS,当时是为了学习 操作系统相关的知识,后来工作也接…

LeetCode-网络延迟时间(Dijkstra算法)

每日一题 今天刷到一道有关的图的题&#xff0c;需要求单源最短路径&#xff0c;因此使用Dijkstra算法。 题目要求 有 n 个网络节点&#xff0c;标记为 1 到 n。 给你一个列表 times&#xff0c;表示信号经过 有向 边的传递时间。 times[i] (ui, vi, wi)&#xff0c;其中 …

GPT-1

GPT 系列是 OpenAI 的一系列预训练模型&#xff0c;GPT 的全称是 Generative Pre-Trained Transformer&#xff0c;顾名思义&#xff0c;GPT 的目标是通过 Transformer&#xff0c;使用预训练技术得到通用的语言模型。目前已经公布论文的有 GPT-1、GPT-2、GPT-3。 最近非常火的…

java之web笔记

1.Servlet技术 1.1 JavaWeb概述 在Sun的Java Servlet规范中&#xff0c;对Java Web应用作了这样定义:“JavaWeb应用由一组Servlet、HTML页、类、以及其它可以被绑定的资源构成。它可以在各种供应商提供的实现Servlet规范的Servlet容器中运行。 Java Web应用中可以包含如下内容…

B+树详解与实现

B树详解与实现 一、引言二、B树的定义三、B树的插入四、B树的删除五、B树的查找效率六、B树与B树的区别和联系 一、引言 B树是一种树数据结构&#xff0c;通常用于数据库和操作系统的文件系统中。它的特点是能够保持数据稳定有序&#xff0c;其插入与修改拥有较稳定的对数时间…

hive表基本语法

hive表基本语法 青少年是一个美好而又是一去不可再得的时期 是将来一切光明和幸福的开端 目录 hive表基本语法 1.ROW FORMAT用法 2.LOCATION用法 3.EXTERNAL用法 &#xff08;外部表&#xff09; 4.STORED AS 用法&#xff1a;设置数据存储格式 5.TBLPROPERTIES 用法 6.P…

liceo靶机复现

liceo-hackmyvm 靶机地址&#xff1a;https://hackmyvm.eu/machines/machine.php?vmLiceo 本机环境&#xff1a;NAT模式下&#xff0c;使用VirtualBox 信息收集&#xff1a; 首先局域网内探测靶机IP 发现IP为10.0.2.4 开启nmap扫描一下看看开了什么端口 扫描期间看一下web页…

随便聊一下 显控科技 控制屏 通过 RS485 接口 上位机 通讯 说明

系统搭建&#xff1a; 1、自己研发的一个小系统&#xff08;采集信号&#xff0c;将采集的信号数字化&#xff09;通过COM口&#xff0c;连接显控屏 COM3 口采用 485 协议送到显控屏&#xff08;显控科技&#xff09;的显示屏展示出来&#xff09;。 2、显控屏 将 展示的数据…

Neomodel 快速上手 构建neo4j 知识图谱

介绍 python 创建neo4j 数据通常使用py2neo&#xff0c;但是这个包 官方声明已经停止更新&#xff0c;根据neo4j网站推荐使用neomodel neomodel 使用起来很想django 中的orm&#xff0c;如果有django基础的上手很简单&#xff0c;而且neomodel 支持 neo4j 5.X版本更新维护的也…