从 db 中读取阿拉伯语文本并以 parquet 格式存储在 s3 中

Read arabic text from db and store in parquet format in s3

我有一个 pyspark 脚本,它读取 mysql 数据,其中包含数据框中的列值,并将数据以镶木地板格式存储在 aws s3 中,但是在使用 aws athena 查询时,它显示一些随机文本而不是阿拉伯。我做错了什么。请帮忙解决这个问题。 我收到的文本是 Ãâ¦Ã±Æò...,如何将其转换为阿拉伯语。

使用 pyspark 从 mysql 读取数据时,我得到的数据格式为:'الشرÙ,ية'。

提前致谢。

从 mysql 读取时,我们需要使用 url 字符串传递“?useUnicode=true&characterEncoding=UTF-8”,例如

user_df = sqlContext.read.format("jdbc").options(
                                   url="jdbc:mysql://HOST/DB_NAME?useUnicode=true&characterEncoding=UTF-8",
                                   driver="com.mysql.jdbc.Driver",
                                   dbtable="users",
                                   user="root",
                                   password="root"
                                  ).load()

这解决了我的问题。