{"id":1040,"date":"2012-07-30T14:14:25","date_gmt":"2012-07-30T14:14:25","guid":{"rendered":"http:\/\/leonardocotta.com.br\/blog\/?p=1040"},"modified":"2012-07-30T14:14:25","modified_gmt":"2012-07-30T14:14:25","slug":"kettle-ou-pentaho-data-integration","status":"publish","type":"post","link":"https:\/\/leonardocotta.com.br\/?p=1040","title":{"rendered":"Kettle ou Pentaho Data Integration?"},"content":{"rendered":"<div>O\u00a0<strong>Pentaho Data Integration<\/strong>\u00a0(PDI), tamb\u00e9m conhecido como\u00a0<strong>Kettle<\/strong>, \u00e9 uma ferramenta de c\u00f3digo aberto, desenvolvida em Java, para Extra\u00e7\u00e3o, Transforma\u00e7\u00e3o e Carga (ETL) de dados, ferramenta esta integrante da su\u00edte Pentaho de Business Inteligence (BI).<\/div>\n<div>Todos os processos s\u00e3o criados com uma ferramenta gr\u00e1fica, que pode ser usada independentemente ou integrada \u00e0 outras ferramentas do Pentaho.<\/div>\n<div><\/div>\n<div>Dentre as diversas fun\u00e7\u00f5es, o Pentaho Data Integration, como ferramenta de ETL, pode ser usado principalmente para:<\/div>\n<div><\/div>\n<ul>\n<li>\n<div><strong>Extra\u00e7\u00e3o:<\/strong>\u00a0coletar dados de diversas fontes. Podem ser arquivos de diferentes formatos ou das mais distintas bases de dados;<\/div>\n<\/li>\n<li>\n<div><strong>Transforma\u00e7\u00e3o:<\/strong>\u00a0mover e modificar dados, limpando, denormalizando, agregando e enriquecendo esses dados durante o processo;<\/div>\n<\/li>\n<li>\n<div><strong>Carga:<\/strong>\u00a0armazenar os dados em seu destino final.\u00a0 Tamb\u00e9m podem ser arquivos de diversos formatos ou um outro banco de dados.\u00a0\u00a0 Normalmente s\u00e3o armazenados em um Data Warehouse.<\/div>\n<\/li>\n<\/ul>\n<div><!--more--><\/div>\n<div>A ferramenta de ETL que hoje faz parte da su\u00edte do Pentaho, conhecida como Kettle, foi desenvolvida em 2002 por Matt Casters e hoje, integrada ao Pentaho, recebe a contribui\u00e7\u00e3o de um n\u00famero cada vez maior de pessoas, inclusive de seu pr\u00f3prio criador.\u00a0\u00a0 A sigla K.E.T.T.L.E, significa &#8220;Kettle Extraction, Transport, Transformation and Loading Environment&#8221;, ou seja, Ambiente Kettle de Extra\u00e7\u00e3o, Transporte, Transforma\u00e7\u00e3o e Carga.<\/div>\n<div><\/div>\n<div>O Pentaho Data Integration \u00e9 constitu\u00eddo de v\u00e1rias aplica\u00e7\u00f5es distintas, a saber:<\/div>\n<ul>\n<li>\n<div><strong>Spoon:<\/strong>\u00a0ferramenta gr\u00e1fica respons\u00e1vel por modelar o fluxo de dados desde sua entrada at\u00e9 sua sa\u00edda.\u00a0 Nela \u00e9 poss\u00edvel criar jobs e transformations;<\/div>\n<\/li>\n<li>\n<div><strong>Pan:<\/strong>\u00a0ferramenta de linha de comando que executa as transforma\u00e7\u00f5es modeladas no &#8221;Spoon&#8221; ;<\/div>\n<\/li>\n<li>\n<div><strong>Kitchen:<\/strong>\u00a0ferramenta de linha de comando que executa os jobs modelados no &#8221;Spoon&#8221;;<\/div>\n<\/li>\n<li>\n<div><strong>Carte:<\/strong>\u00a0\u00e9 um servidor web que permite executar transformations e jobs remotamente.<\/div>\n<\/li>\n<\/ul>\n<div><\/div>\n<div>As chamadas\u00a0<strong>Transformations\u00a0<\/strong>s\u00e3o respons\u00e1veis pelo tr\u00e1fego dos dados propriamente dito, dados estes que podem ser extra\u00eddos de diversas fontes (tabelas de um BD, planilhas, documentos de texto, arquivos csv, arquivos xml, etc), tratados com um n\u00famero vasto de componentes e inseridos\/exportados para a mesma variedade de sa\u00eddas (as mesmas das fontes de entrada).<\/div>\n<div>Os\u00a0<strong>Jobs\u00a0<\/strong>podem ser respons\u00e1veis por executar um conjunto de transformations e outros jobs internos, assim como manipular e transferir arquivos, enviar e receber emails e executar uma s\u00e9rie de valida\u00e7\u00f5es.<\/div>\n<div><\/div>\n<div>Cada componente de uma transformation ou job, \u00e9 chamado de\u00a0<strong>Step\u00a0<\/strong>e \u00e9 conectado ao pr\u00f3ximo componente atrav\u00e9s de uma linha, chamada\u00a0<strong>Hop<\/strong>.\u00a0\u00a0 Os componentes (steps) de uma transformation, por exemplo, podem ter um Hop que liga-o a outro step, que continuar\u00e1 o fluxo de dados, ou a um outro step, que far\u00e1 o tratamento dos dados caso estes apresentem algum erro ou inconsist\u00eancia no step anterior.\u00a0\u00a0 Desta forma, a ferramenta ainda permite que o fluxo n\u00e3o seja interrompido caso haja dados inconsistentes, permitindo f\u00e1cil identifica\u00e7\u00e3o e continuidade nas rotinas desenvolvidas.<\/div>\n<div><\/div>\n<div>Caso um usu\u00e1rio deseje ajudar no desenvolvimento da ferramenta, assim como no desenvolvimento ou melhoria de novos componentes, basta que o mesmo baixe o c\u00f3digo fonte da aplica\u00e7\u00e3o, dispon\u00edvel no site do Pentaho, e fa\u00e7a as altera\u00e7\u00f5es desejadas.<\/div>\n<div><\/div>\n<div>Um grande n\u00famero de componentes\/plugins customizados est\u00e3o inclusive dispon\u00edveis para download.<\/div>\n","protected":false},"excerpt":{"rendered":"<p>O\u00a0Pentaho Data Integration\u00a0(PDI), tamb\u00e9m conhecido como\u00a0Kettle, \u00e9 uma ferramenta de c\u00f3digo aberto, desenvolvida em Java, para Extra\u00e7\u00e3o, Transforma\u00e7\u00e3o e Carga (ETL) de dados, ferramenta esta integrante da su\u00edte Pentaho de Business Inteligence (BI). Todos os processos s\u00e3o criados com uma ferramenta gr\u00e1fica, que pode ser usada independentemente ou integrada \u00e0 outras ferramentas do Pentaho. Dentre &hellip; <a href=\"https:\/\/leonardocotta.com.br\/?p=1040\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Kettle ou Pentaho Data Integration?<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[49],"tags":[100,170,205],"class_list":["post-1040","post","type-post","status-publish","format-standard","hentry","category-pentaho-data-integration","tag-data-integration","tag-kettle","tag-pentaho"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/leonardocotta.com.br\/index.php?rest_route=\/wp\/v2\/posts\/1040","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/leonardocotta.com.br\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/leonardocotta.com.br\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/leonardocotta.com.br\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/leonardocotta.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1040"}],"version-history":[{"count":0,"href":"https:\/\/leonardocotta.com.br\/index.php?rest_route=\/wp\/v2\/posts\/1040\/revisions"}],"wp:attachment":[{"href":"https:\/\/leonardocotta.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1040"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/leonardocotta.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1040"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/leonardocotta.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1040"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}