Ich verwende pySpark im Spark-Service in Bluemix, um etwas in meinen Daten zu transformieren und dann in DashDB, auch in Bluemix schreiben. Aber wenn ich versuche, Daten zu laden, erhalte ich den folgenden Fehler:bluemix pyspark Fehler beim Aufruf von jdbc
Py4JJavaError: Beim Aufruf von o111.jdbc ist ein Fehler aufgetreten. : org.apache.spark.SparkException: Auftrag wegen Phasenfehlers abgebrochen: Aufgabe 0 in Stufe 4.0 ist 10 Mal fehlgeschlagen, letzter Fehler: Verlorene Aufgabe 0.9 in Stufe 4.0 (TID 23, yp-spark-dal09-env5-0045) : com.ibm.db2.jcc.am.BatchUpdateException: [jcc] [t4] [102] [10040] [4.19.26] Stapelfehler. Die Charge wurde eingereicht, aber mindestens eine Ausnahme trat bei einem einzelnen Mitglied der Charge auf. Verwenden Sie getNextException(), um die Ausnahmen für bestimmte Batch-Elemente abzurufen. ERRORCODE = -4229, SQLSTATE = null
Ich habe bereits versucht, eine neue DashDB zu erstellen, aber ich erhalte den gleichen Fehler. Dann habe ich versucht, ein anderes Notebook zu erstellen, aber es wird auch nicht funktionieren. Ich habe versucht, alle Kernel zu stoppen und nur einen Kernel pro Zeit ausführen, wird nicht funktionieren.
Alle Notebooks, die ich versuche, Daten aus einem Datenrahmen zu schreiben Ich erhalte den gleichen Fehler, aber in denselben Fällen werden die Daten geladen und in anderen nicht.
Dies ist der Code, den ich schreiben bin mit:
for num in range(0,22):
(shared_df_first
.select(
Func.col('Customer').alias("CUSTOMER"),
Func.col('Customer Environment').alias("CUST_ENV"),
Func.col('Device').alias("DEVICE"),
Func.col('User ID').alias("USER_ID"),
Func.col('Date').alias("DATE"),
Func.col('Time').alias("TIME"),
Func.col('Requester').alias("REQUESTER"),
Func.col('Manager').alias("MANAGER"),
Func.col('Manager Mail').alias("MANAGER_MAIL"),
Func.col('Ticket').alias("TICKET"),
Func.col('Request').alias("REQUEST"),
Func.col('Teste').alias("TESTE"),
Func.col('Approver USERID').alias("APPROVER_USERID"),
Func.col('Approver Name').alias("APPROVER_NAME"),
Func.col('Period in hours').alias("PERIOD"),
Func.col('Business Need').alias("BUSINESS_NEED"),
Func.col('Password Periodic Changable').alias("PASSWORD_PERIODIC_CHANGABLE"),
Func.col('Is Pre Approved?').alias("IS_PRE_APPROVED"),
Func.col('Has Personal User ID?').alias("HAS_PERSONAL_USER_ID"),
Func.col('Check in way').alias("CHECK_IN_WAY"),
Func.col('SLA').alias("SLA"),
Func.col('Invalid Business Need').alias("BUSINESS_NEED_INVALID")
)
.write
.jdbc("jdbc:db2://bluemix05.bluforcloud.com:50000/BLUDB", "DASH014638.WATSON_UAT_DEV", "append", propertiesDBDash
)
print num + 1
df = ds_clean.toDF(["account_id","customer","device_name","device_os","user_id","user_id_type","creation_date","last_logon","password_is_never_expires","responsible",
"privileges","user_id_status"])
propertiesDBDash = {
"user":"dash014638",
"password":"pwd"}
df.write.mode("append").jdbc("jdbc:db2://bluemix05.bluforcloud.com:50000/BLUDB", "DASH014638.DORMANT_PROD",properties=propertiesDBDash)
df = ds_clean.toDF(["REQUEST_NUMBER","TYPE_TICKET","SOLUTIONER","CUSTOMER","DELIVERY","OPEN_DATE","OPEN_TIME","CLOSE_DATE","CLOSE_TIME","SERVICE","DEVICE","PLATFORM","REQUESTER","REQUESTER_MANAGER_MAIL","SLA","ELAPSED_TIME","SLA_STATUS","URGENCY","ACTION","REQUEST_STATUS"])
propertiesDBDash = {
"user":"dash014638",
"password":"pwd"}
df.write.mode("append").jdbc("jdbc:db2://bluemix05.bluforcloud.com:50000/BLUDB", "DASH014638.WATSON_REQUEST_NEW",properties=propertiesDBDash)