Tak, możesz to zrobić przez ssh. Horton Sandbox jest dostarczany z fabrycznie zainstalowaną obsługą ssh. Możesz wykonać polecenie sqoop przez klienta ssh w systemie Windows. Lub jeśli chcesz to zrobić programowo (to właśnie zrobiłem w java), musisz wykonać ten krok.
- Pobierz bibliotekę java sshxcute:https://code.google.com/p/sshxcute/
- Dodaj do ścieżki budowania swojego projektu java, która zawiera następujący kod java
import net.neoremind.sshxcute.core.SSHExec;
import net.neoremind.sshxcute.core.ConnBean;
import net.neoremind.sshxcute.task.CustomTask;
import net.neoremind.sshxcute.task.impl.ExecCommand;
public class TestSSH {
public static void main(String args[]) throws Exception{
// Initialize a ConnBean object, parameter list is ip, username, password
ConnBean cb = new ConnBean("192.168.56.102", "root","hadoop");
// Put the ConnBean instance as parameter for SSHExec static method getInstance(ConnBean) to retrieve a singleton SSHExec instance
SSHExec ssh = SSHExec.getInstance(cb);
// Connect to server
ssh.connect();
CustomTask sampleTask1 = new ExecCommand("echo $SSH_CLIENT"); // Print Your Client IP By which you connected to ssh server on Horton Sandbox
System.out.println(ssh.exec(sampleTask1));
CustomTask sampleTask2 = new ExecCommand("sqoop import --connect jdbc:mysql://192.168.56.101:3316/mysql_db_name --username=mysql_user --password=mysql_pwd --table mysql_table_name --hive-import -m 1 -- --schema default");
ssh.exec(sampleTask2);
ssh.disconnect();
}
}