大きなデータを分析するためにHadoop、Hive、Impalaを使用するスタックを使用する予定です。私はセットアップが準備ができて、今はMySQLテーブルからデータをインポートしようとしています。テーブルサイズを超える500ギガバイトであり、私は次のように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ギガバイトを転写することを含む、このインポートを行うため、他のより良い方法があります。とにかくデータを圧縮してHiveにインポートすることは可能ですか?Impalaを使用してそれを照会することはできますか?
私は単にデータベースをcsvとしてエクスポートし、gzipとHDFSにパイプしました。私はシェルスクリプトにこれを持っている人にクッキーを渡します:) –
MySQLは 'jdbc:mysql:// remote_host_ip/database_name?useCompression = true' cfで" on the wire "圧縮をサポートしています。 https://dev.mysql.com/doc/connector-j/5.1/en/connector-j-reference-configuration-properties.htmlおよびhttp://torstens-tech-blog.blogspot.com/2012/08/ client-compression-with-mysql-in.html –