我有一个约100000条记录的表,并希望从该表中导入1000条随机记录有人能帮忙吗:)sqoop导入--连接jdbc:mysql://localhost:3306/userdb --用户名根--表emp--m 1
dy1byipe1#
sqoop只是一个将数据从mysql传输到hdfs或hdfs到mysql的工具,因此没有任何直接命令可以执行此操作,但是可以使用这样的查询查询:---查询“select*from my \u table order by rand()limit 1000 and $conditions”它将帮助您导入或导出1000行表。
sshcrbum2#
对于随机导入没有这样的命令,但是您可以使用将记录限制为仅导入1000条记录 --query 选项。由于您有mysql数据库,因此可以使用以下命令: sqoop import --connect "$CONNECT_STRING" \ --query "select $source_column from $SOURCE_TABLE_NAME where \$CONDITIONS limit 1000" \ --username $USER_NAME --password $PASSWORD \ --target-dir $TARGET_DIRECTORY_NAME -m 1 您还可以传递任何自定义查询 --query 选项。
--query
sqoop import --connect "$CONNECT_STRING" \ --query "select $source_column from $SOURCE_TABLE_NAME where \$CONDITIONS limit 1000" \ --username $USER_NAME --password $PASSWORD \ --target-dir $TARGET_DIRECTORY_NAME -m 1
2条答案
按热度按时间dy1byipe1#
sqoop只是一个将数据从mysql传输到hdfs或hdfs到mysql的工具,因此没有任何直接命令可以执行此操作,但是可以使用这样的查询
查询:---查询“select*from my \u table order by rand()limit 1000 and $conditions”它将帮助您导入或导出1000行表。
sshcrbum2#
对于随机导入没有这样的命令,但是您可以使用将记录限制为仅导入1000条记录
--query
选项。由于您有mysql数据库,因此可以使用以下命令:sqoop import --connect "$CONNECT_STRING" \ --query "select $source_column from $SOURCE_TABLE_NAME where \$CONDITIONS limit 1000" \ --username $USER_NAME --password $PASSWORD \ --target-dir $TARGET_DIRECTORY_NAME -m 1
您还可以传递任何自定义查询--query
选项。