MySQL версия: 5.7.29 Версия Spark: spark-2.4.5-bin-hadoop2.7
- источник данных в MySQL
- искра в сентосах 7
- запустить «выбрать сейчас» в MySQL == запустить «дату» в Centos7
- Запуск Pyspark:
a. df.filter('date_="2017-11-25"').show()
, результат правильный.
+----------+--------+--------+
| date_|behavior|quantity|
+----------+--------+--------+
|2017-11-25| PV| 984879|
|2017-11-25| fav| 31998|
|2017-11-25| buy| 20687|
|2017-11-25| UV| 73281|
|2017-11-25| cart| 59972|
+----------+--------+--------+
b. но запустите следующий код, все значения столбца date_
равны 2017-11-24
в MySQL в windows, остальные столбцы содержат правильные данные:
df.filter('date_="2017-11-25"').write.mode('overwrite').format("jdbc").\
option("url", "jdbc:mysql://IP:3306/test?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC").\
option("dbtable", "dailybehavior_1d_temp").\
option("user", "root").\
option("password", "*****").\
option("driver", "com.mysql.cj.jdbc.Driver").\
option("batchsize", 10000).\
option("truncate", "true").\
save()