Je souhaite configurer une connexion Spark SQL Java Database Connectivity (JDBC) sur Amazon EMR.
Résolution
Remarque : Les étapes suivantes utilisent le client SQuirrel SQL Client for SQL sur une machine locale.
Pour configurer une connexion JDBC Spark SQL sur Amazon EMR, procédez comme suit :
-
Téléchargez et installez SQuirrel SQL Client. Pour plus d'informations, consultez la page Téléchargement et installation sur le site Web de SQuirrel SQL.
-
Pour vous connecter au nœud primaire Amazon EMR, utilisez SSH.
-
Pour démarrer Spark Thrift Server, exécutez la commande suivante sur le nœud primaire :
sudo /usr/lib/spark/sbin/start-thriftserver.sh
-
Sur le nœud primaire, copiez tous les fichiers .jar du répertoire /usr/lib/spark/jars vers votre machine locale.
-
Ouvrez SQuirrel SQL Client, puis créez un nouveau pilote comme suit :
Pour Nom, saisissez Pilote JDBC Spark.
Dans Exemple d'URL, saisissez jdbc:hive2://localhost:10001.
-
Dans l'onglet Chemin de classe du pilote JDBC, sélectionnez Ajouter.
-
Dans la boîte de dialogue, accédez au répertoire dans lequel vous avez précédemment copié les fichiers .jar, puis sélectionnez tous les fichiers.
-
Dans le champ Nom de classe, saisissez org.apache.hive.jdbc.HiveDriver, puis sélectionnez OK.
-
Pour configurer un tunnel SSH, utilisez la redirection de port locale sur votre machine locale :
ssh -o ServerAliveInterval=10 -i path-to-key-file -N -L 10001:localhost:10001 hadoop@example-primary-public-dns
Remarque : Remplacez example-primary-public-dns par votre nom DNS public principal.
-
Pour vous connecter au serveur Spark Thrift, créez un nouvel alias dans SQuirrel SQL Client comme suit :
Pour Nom, saisissez Spark JDBC.
Dans Pilote, saisissez Pilote JDBC Spark.
Pour URL, saisissez jdbc:hive2://localhost:10001.
Pour Nom d'utilisateur, saisissez hadoop.
Remarque : Vous pouvez maintenant exécuter des requêtes à partir de SQuirrel SQL Client.