Ho un cluster di scintilla che ho creato tramite google dataproc. Desidero poter utilizzare la libreria csv dai databricks (vedere https://github.com/databricks/spark-csv). Così ho provato in questo modo:utilizza una libreria esterna nel processo pyspark in un cluster Spark da google-dataproc
ho iniziato una sessione ssh con il nodo principale del mio gruppo, poi ho Ingresso:
pyspark --packages com.databricks:spark-csv_2.11:1.2.0
Poi ha lanciato un guscio pyspark in cui ho Ingresso:
df = sqlContext.read.format('com.databricks.spark.csv').options(header='true', inferschema='true').load('gs:/xxxx/foo.csv')
df.show()
E ha funzionato.
Il mio prossimo passo è quello di lanciare questo lavoro dalla mia macchina principale con il comando:
gcloud beta dataproc jobs submit pyspark --cluster <my-dataproc-cluster> my_job.py
Ma qui non funziona e ottengo un errore. Penso perché non ho dato il --packages com.databricks:spark-csv_2.11:1.2.0
come argomento, ma ho provato 10 modi diversi per darlo e non l'ho fatto.
La mia domanda è:
- era la biblioteca databricks csv installato dopo ho digitato
pyspark --packages com.databricks:spark-csv_2.11:1.2.0
- posso scrivere una riga nel mio
job.py
per importarlo? - o quali parametri devo dare al mio comando gcloud per importarlo o installarlo?
C'è un bug in Dataproc dove JARS non viene prelevato per i lavori Pyspark. Sto cercando una soluzione alternativa. Volevo solo farti sapere che stiamo esaminando il bug più grande e sto vedendo se possiamo identificare anche una soluzione temporanea per te. :) – James
sperando sia in una soluzione alternativa che in una correzione anche qui, thx @James! stiamo cercando di usare dataproc con il connettore Cassandra sia da python che dallo scala – navicore