我打算使用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 –