2017-06-09 7 views
0

Je suis novice sur Big Insights. Je travaille sur BigInsigths le nuage 4.1, 2.2.0 et Ambari Spark 1.6.1 Il n'a pas d'importance si la connexion est en scala ou python, mais je dois faire du traitement de données avec étincelle puis persister dans BigSql. Est-ce possible? Merci d'avance.Comment se connecter de 1,6 à étincelle bigsql

Répondre

0

Vérifiez syshadoop.execspark pour voir comment exécuter des travaux d'allumage et de retour de la sortie sous forme de tableau, après quoi vous pouvez insérer à une table ou se joindre à d'autres tables.

https://www.ibm.com/support/knowledgecenter/en/SSPT3X_4.3.0/com.ibm.swg.im.infosphere.biginsights.db2biga.doc/doc/biga_execspark.html

SELECT * 
    FROM TABLE(SYSHADOOP.EXECSPARK(
    class => 'DataSource', 
    format => 'json', 
    uriload => 'hdfs://host.port.com:8020/user/bigsql/demo.json' 
    ) 
) AS doc 
    WHERE doc.country IS NOT NULL 
    LIMIT 5 
+0

Merci pour votre hepful, mais je suis sur Big Perspicacité 4.1 sur un nuage :( SYSHADOOP.EXECSPARK est disponible sur la version 4.2 et 4.3. Connaissez-vous un autre moyen d'essayer de faire quelque chose comme ça? Merci! – Johanna

0

Voici les étapes pour se connecter à l'aide BigSQL par PySpark jdbc dans BigInsights -

1.Place db2jcc4.jar (pilote IBM pour se connecter à BigSQL, vous pouvez le télécharger à partir http://www-01.ibm.com/support/docview.wss?uid=swg21363866) dans la bibliothèque python.

2.Ajoutez le chemin du fichier jar dans le fichier étincelle defaults.conf (situé dans le dossier de votre installation conf d'allumage) spark.driver.extraClassPath /usr/lib/spark/python/lib/db2jcc4.jar spark.executor.extraClassPath /usr/lib/spark/python/lib/db2jcc4.jar

ou

Mise en service Spark Shell avec le chemin jar - pyspark --jars/usr/lib/allumage/python/lib/db2jcc4.jar

3.Utilisez sqlContext.read.format pour spécifier l'URL JDBC et d'autres informations sur le pilote -

d'importation pyspark.sql SqlContext

SqlContext = SqlContext (sc)

df = sqlContext.read.format ("jdbc") .Option (url = "jdbc: db2: // nom d'hôte: port/bigsql ", driver =" com.ibm.db2.jcc.DB2Driver ", dbtable =" nom_table ", user =" nom_utilisateur ", mot de passe =" mot de passe "). load()

df.show()