我打算使用Hadoop,Hive和Impala來分析大數據的堆棧。我準備好了,現在我正試圖從MySQL表導入數據。表的大小超過500 GB,我打算使用Sqoop如下:將大量的MySQL數據導入到Hadoop中
sqoop import --connect jdbc:mysql://remote_host_ip/database_name --username user_name -P --table table_name --hive-import --compression-codec=snappy --as-parquetfile --warehouse-dir=/user/hive/warehouse -m 1
是否有這樣做的進口,因爲這涉及到通過網絡傳輸數據的500 GB任何其他更好的方法。是否可以壓縮數據並將其導入到Hive,因此可以使用Impala來查詢它?
我以前只是將數據庫導出爲csv,通過gzip將其導入HDFS。我給一個把這個變成shell腳本的人給一個cookie :) –
MySQL支持使用'jdbc:mysql:// remote_host_ip/database_name?useCompression = true' cf. https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-reference-configuration-properties.html和http://torstens-tech-blog.blogspot.com/2012/08/客戶端壓縮與MySQL的-in.html –