Video: Apache Sqoop Tutorial | Sqoop: Import & Export Data From MySQL To HDFS | Hadoop Training | Edureka 2025
Ved indsætningsmodus er poster, der eksporteres af Sqoop, vedhæftet til slutningen af måltabellen. Sqoop giver også en opdateringsfunktion, som du kan bruge ved at give argumentet -update-key kommandolinje. Denne handling får Sqoop til at generere en SQL UPDATE-sætning til at køre på RDBMS eller datalager.
Antag at du vil opdatere en tabel med tre kolonner med data, der er gemt i HDFS-filen / user / my-hdfs-filen. Filen indeholder disse data:
100, 1000, 2000
Følgende forkortede Sqoop eksport kommando genererer den tilsvarende SQL UPDATE statement på dit databasesystem:
$ sqoop eksport (Generic Arguments) -tabell - opdatér-nøgle kolonne1 - eksport-dir / bruger / min-hdfs-fil … Genererer => UPDATE målrelationelle tabel SET column2 = 1000, column3 = 2000 WHERE column1 = 100;
Med den foregående eksportkommando, hvis målrelationeltabellen på dit RDBMS eller datalagringssystem ikke har nogen rekord med den matchende værdi i kolonne 1, ændres intet i målrelationeltabellen.
Du kan dog også inkludere et andet argument, der indsætter eller tilføjer dine data til måltabellen, hvis der ikke findes matchende poster. Tænk på det på denne måde: Hvis der findes UPDATE else INSERT.
Denne teknik kaldes ofte som upsert i databasens sprog eller som MERGE i andre implementeringer. Argumentet for ophævet tilstand er -update-mode, hvor updateonly er standard og allowinsert aktiverer upsert mode. Tjek din databasedokumentation eller kontakt din vender for at afgøre, om upsert-tilstand understøttes af Apache Sqoop.