Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Qual é o propósito de $CONDITIONS em --query?


$CONDITIONS é usado internamente pelo sqoop para modificar a consulta para obter a divisão de tarefas e a busca de metadados.

Para buscar metadados, o sqoop substitui \$CONDITIONS com 1 =0
select * from table where 1 = 0

Para buscar todos os dados (1 mapeador), o sqoop substitui \$CONDITIONS com 1 =1
select * from table where 1 = 1

No caso de vários mapeadores, o sqoop substitui \$CONDITIONS com consulta de intervalo para buscar um subconjunto de dados do RDBMS.

Por exemplo, id está entre 1 a 100 e estamos usando 4 mapeadores.
Select * From table WHERE id >= 1' AND 'id < 25
Select * From table WHERE id >= 25' AND 'id < 50
Select * From table WHERE id >= 50' AND 'id < 75
Select * From table WHERE id >= 75' AND 'id <= 100