(A) do conceito básico e realização de dados da tabela HBase Oozie Caso colméia escrita

(A) do conceito básico e realização de dados da tabela HBase Oozie Caso colméia escrita

A, Oozie Sobre
Oozie Apache é um projeto de nível superior da empresa.
Oozie é um dos quatro grandes de dados colaborativa quadro - quadro de programação de tarefa, os outros três eram ferramenta de conversão de dados Sqoop, documento de biblioteca estrutura de coleta Flume, Big Data WEB ferramenta Hue.
Prevê Hadoop MapReduce Jobs, o Spark (streaming) Jobs, Hive Jobs como o agendamento de tarefas e coordenação, ações de gerenciamento são direcionados gráfico acíclico (DAG).

Aqui Insert Picture Descrição
Dois, Oozie três módulos funcionais

1, o fluxo de trabalho (Workflow): a definição de execução da tarefa trabalho.

2, Coordenador: desencadear periodicamente o fluxo de trabalho, a realização do fluxo de trabalho periódica.

3, Bundle Job: bind coordenador múltipla, coordenador submeter ou gatilho tão juntos.

Oozie define os nós de controlo de fluxo (Flow Control nós) e gânglios actuação (nós), em que o nde controlo de fluxo define o início e o fim do processo, e realizar um trajecto de fluxo de controlo (caminho de execução), tais como o início, mortes, final, garfo, juntar, decisão e similares, e uma operação de nó compreende mapear reduzir, porco, colmeia, ssh , java, e-mail, sub fluxo de trabalho semelhante.
Aqui Insert Picture Descrição
Oozie é essencialmente uma ferramenta de coordenação de trabalho (o princípio subjacente é a linguagem converter XML para mapear reduzir programa para fazer, mas apenas se concentrar em fazer o processamento mapa final, para evitar o processo aleatório)

Três, a configuração do fluxo de trabalho

1, job.properties: definir os parâmetros relacionados aos atributos e

2, workflow.xml: definir o fluxo de controle e nó operação nó

3, lib: os documentos de informação relevantes (pacote jar) tarefas de trabalho armazenadas em execução

Em quarto lugar, perceber mesa hbase dados são gravados Caso colméia

preparação 4.1 documento

1, job.properties

nameNode=hdfs://sandbox-hdp.hortonworks.com:8020
jobTracker=sandbox-hdp.hortonworks.com:8032
queueName=default

#Set Oozie environment
oozie.wf.application.path=${nameNode}/events/demo

oozie.use.system.libpath=true

2, workflow.xml

<workflow-app name="hive_oozie_demo" xmlns="uri:oozie:workflow:0.5">
    <start to="run"/>
    <action name="run">
        <hive2 xmlns="uri:oozie:hive2-action:0.1">
            <job-tracker>${jobTracker}</job-tracker>
			<name-node>${nameNode}</name-node>
			<configuration>
				<property>
					<name>mapred.job.queue.name</name>
					<value>${queueName}</value>
				</property>
			</configuration>
			<jdbc-url>jdbc:hive2://localhost:10000/default</jdbc-url>
			<script>hql/demo.hql</script>
        </hive2>
		<ok to="end"/>
		<error to="fail"/>
    </action>
	<kill name="fail">
		<message>ETL task(d) failed,The error message is [${wf:errorMessage(wf:lastErrorNode())}]</message>
	</kill>	
	<end name="end"/>
</workflow-app>	

3, demo.hql

create database if not exists demo;

use demo;

drop table if exists employee;
create external table employee(account string,firstName string,lastName string,department string,emailAddress string,phone string)
 stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
 with serdeproperties('hbase.columns.mapping'=':key,profile:firstName,
 profile:lastName,department:name,contact:emailAddress,contact:phone')
 tblproperties('hbase.table.name'='employee');

drop table if exists users;
create table users as
 select * from employee;

processo de execução caso 4,2 Oozie

1, entra hbase

hbase shell

2, HBase construído em empregado de mesa

create 'employee','profile','department','contact'
put 'employee','nml','profile:firstName','ml'
put 'employee','nml','profile:lastName','nie'
put 'employee','nml','department:name','bigdata'
put 'employee','nml','contact:emailAddress','[email protected]'
put 'employee','nml','contact:phone','168-666-2786'

3, hdfs criados no diretório correspondente

hdfs dfs -mkdir -p /events/demo/hql
hdfs dfs -put demo.hql /events/demo/hql
hdfs dfs -put workflow.xml /events/demo

4, tarefa Oozie submetidas

oozie job --oozie http://sandbox-hdp.hortonworks.com:11000/oozie --config ./job.properties -run

5, na tabela a colmeia vista empregado importado

0: jdbc:hive2://localhost:10000> select * from employee;
+-------------------+---------------------+--------------------+----------------------+------------------------+-----------------+--+
| employee.account  | employee.firstname  | employee.lastname  | employee.department  | employee.emailaddress  | employee.phone  |
+-------------------+---------------------+--------------------+----------------------+------------------------+-----------------+--+
| nml               | ml                  | nie                | bigdata              | ml.nie@bigdata.com     | 168-666-2786    |
+-------------------+---------------------+--------------------+----------------------+------------------------+-----------------+--+
Publicado 22 artigos originais · ganhou elogios 22 · vista 775

Acho que você gosta

Origin blog.csdn.net/weixin_45568892/article/details/104976165
Recomendado
Clasificación