Ich habe drei Tabellen in Mysql namens Film, Filmgenre, Genre. Wenn ich versuche, sie in hdfs zu importieren Sqoop Freiform Abfrage:sqoop Importabfrage gibt doppelten Namen Fehler
sqoop import --connect jdbc:mysql://localhost/movielens --username user --password ***
--query 'select m.id as id,m.name as movie_name,m.year as year, g.name as genre_name
from movie m join moviegenre mg on m.id = mg.movieid join genre g on g.id = mg.genreid
WHERE $CONDITIONS' --split-by m.id --target-dir /user/sqoop/moviegenre
wirft Fehler:
Imported Failed: Duplicate Column identifier specified: 'name'.
Wenn ich die gleiche Abfrage in MySQL schreiben Sie es mir Ausgang gibt, ist das, was ich wollen:
id movie_name year genre_name
1 Toy Story 1995 Animation
2 Jumanji 1995 Adventure
.. ....... .... ........
ich diesen Link gefolgt und hat genau wie Antwort: Imported Failed: Duplicate Column identifier specified (sqoop) aber, dass entweder gar nicht zu helfen scheint.
Felder in den Tabellen sind wie folgt: Film = ID, Name, Jahr
Genre = id, name
moviegenre = MovieID, GenreID
Bitte zeigen Sie den Fehler in meiner Anfrage aus .
Nachdem ich deine Antwort gesehen habe, habe ich versucht, es auf verschiedenen VM es funktioniert wahrlich. Scheint, sqoop funktionierte nicht richtig. –