Uso básico da biblioteca de recursos ETL
1. Metadados
1. O conceito geral de metadados: "dados descritivos" ou "dados de dados".
Metadados de ETL: Descreva as tarefas a serem realizadas pelo ETL.
Como armazenar metadados no Kettle:
- Biblioteca de recursos : a biblioteca de recursos inclui a biblioteca de recursos de arquivo, biblioteca de recursos de banco de dados. Após o Kettle 4.0, o tipo de biblioteca de recursos pode ser estendido por plug-ins
- Arquivo XML : o nó raiz do XML do arquivo de transformação .ktr deve ser < transformação >. O nó raiz do XML do trabalho kjb é < trabalho >
2. Biblioteca de Recursos
Sem usar a biblioteca de recursos, ele pode ser salvo diretamente como um arquivo ktr ou kjb.
2.1 Biblioteca de recursos de dados
Serializar os metadados do Kettle no banco de dados. Por exemplo, a tabela R _TRANSFORMATION salva o nome, a descrição e outros atributos da transformação do Kettle. Crie e atualize a biblioteca de recursos do banco de dados no Spoon.
2.2 Biblioteca de recursos de arquivo
Encapsulamento baseado em arquivos, implementa a interface org.pentaho.di.repository.Repository. É o tipo de biblioteca de recursos adicionada no Kettle 4.0 e posterior
2.3 Como escolher uma biblioteca de recursos
Desvantagens da biblioteca de recursos de banco de dados :
- Não é possível armazenar várias versões de conversões ou trabalhos
- Confie fortemente no mecanismo de bloqueio do banco de dados para evitar perda de trabalho
- Sem considerar o desenvolvimento da equipe, os desenvolvedores não podem bloquear uma tarefa para desenvolver por si próprios
Desvantagens da biblioteca de recursos de arquivos :
- O relacionamento entre os objetos (como conversões, trabalhos, conexões de banco de dados, etc.) é difícil de lidar, então operações como exclusão e renomeação serão mais problemáticas
- Sem histórico de versão
- Difícil para o desenvolvimento da equipe
Não use a biblioteca de recursos : Use svn para controle de versão do arquivo.
3. Uso da biblioteca de recursos da chaleira
3.1 Biblioteca de recursos de dados do Kettle
3.1.1 Criar Biblioteca de Recursos de Dados
Crie um repositório de banco de dados
Configurar conexão de fonte de dados
Clicar para testar reportará um erro:
Driver class 'oracle.jdbc.driver.OracleDriver' could not be found, make sure the 'Oracle' driver (jar file) is installed. oracle.jdbc.driver.OracleDriver
A conexão de dados Mysql não tem esse problema. A conexão do banco de dados Oracle é necessária para
ojdbc6.jar
copiar e colar o Oracle no diretório dolib
diretório ETL . Após a reinicialização.
Clique em Concluir após reiniciar.
A última etapa é conectar. O banco de dados é melhor criar um novo, porque esta biblioteca é uma biblioteca de recursos independente para o kettle. A senha da conta é o padrão
admin
.
Verifique o banco de dados e descubra se algumas tabelas foram criadas.
3.1.2 Desconectar, modificar, excluir, etc. da biblioteca de recursos de dados
3.1.3 Adicionar conversão, salvar e exportar para a biblioteca de recursos de dados
Adicionar conversão
Salve :
Ctrl + S
Visão
Importar e exportar
Depois de perguntar se deseja adicionar regras, NÃO pode ser exportado.
3.2 Biblioteca de recursos do arquivo Kettle
O processo é mais simples do que o repositório de dados e a maioria das operações são semelhantes.
Pode ser feito diretamente, não há usuário e senha.
4. Biblioteca de recursos de gerenciamento
Vários estágios de desenvolvimento de ETL : desenvolvimento, teste, validação e lançamento.
Biblioteca de recursos correspondente a cada estágio : biblioteca de recursos de desenvolvimento, biblioteca de recursos de teste (confirmação), recurso de liberação.
Avanço em várias etapas :
- Da biblioteca de recursos de desenvolvimento para a biblioteca de recursos de teste:
1.1 Preste atenção às regras de nomenclatura
1.2 Liberação por uma pessoa para evitar conflitos
1.3 Dois métodos de transplante: desconectar e reconectar, exportar / importar- Do repositório de teste (confirmação) para o repositório de liberação: exportar / importar
Não use a biblioteca de recursos : controle de versão SVN, marcação de teste, lançamento e ramificação de construção.
5. Parametrização
Por que parametrização : ao migrar trabalhos entre bibliotecas de recursos, como o ambiente em cada estágio é diferente, metadados, como conexões de banco de dados usadas no trabalho, não podem ser codificados permanentemente.
Vários métodos de parametrização : O
kettle.properties
arquivo está localizado no o user.home diretório de java , o costume propriedades arquivo é lido através do passo de entrada arquivo de propriedade Use a. Tabela de parâmetros .
Como faço para saber o diretório user.home java , digite o seguinte para criar um conteúdo de arquivo java.
public class PrintUserHome {
public static void main(String[] args) {
System.out.println(System.getProperty("user.home"));
}
}
Execute a seguinte instrução em cmd
javac PrintUserHome.java
java PrintUserHome
A estrutura da tabela de parâmetros :
Environment parameter_name parameter_value valid_from valid_to
Dev host_name localhost 2011-01-01 2099-01-01
Test host_name 192.168.12.10 2011-01-01 2013-05-01
Test host_name 192.168.12.11 2011-05-02 2099-01-01
Significado :
- Ambiente : Ambiente. Por exemplo: ambiente de desenvolvimento Dev , ambiente de teste de teste.
- parameter_name : Os parâmetros correspondentes a diferentes ambientes, por exemplo: host_name host.
- parameter_value : o valor do parâmetro correspondente a diferentes ambientes.
- valid_from : O tempo válido dos parâmetros e valores dos parâmetros correspondentes a diferentes ambientes.
- valid_to : Parâmetros e prazos de valores de parâmetros correspondentes a diferentes ambientes.