Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Was ist der Zweck von $CONDITIONS unter --query?

$CONDITIONS wird intern von sqoop verwendet, um Abfragen zu modifizieren, um eine Aufgabenaufteilung und das Abrufen von Metadaten zu erreichen.

Um Metadaten abzurufen, ersetzt sqoop \$CONDITIONS mit 1=0

select * from table where 1 = 0

Um alle Daten abzurufen (1 Mapper), ersetzt sqoop \$CONDITIONS mit 1=1

select * from table where 1 = 1

Bei mehreren Mappern ersetzt sqoop \$CONDITIONS mit Bereichsabfrage, um eine Teilmenge von Daten aus RDBMS abzurufen.

Beispiel:id liegt zwischen 1 und 100 und wir verwenden 4 Mapper.

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