Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Spark:Falha na leitura da grande tabela MySQL no DataFrame


A API Spark JDBC parece bifurcar para carregar todos os dados da tabela MySQL para a memória sem. Então, quando você tenta carregar uma tabela grande, o que você deve fazer é usar os dados clonados da API Spark para o HDFS primeiro (o JSON deve ser usado para manter a estrutura do esquema), assim:
spark.read.jdbc(jdbcUrl, tableName, prop)
       .write()
       .json("/fileName.json");

Então você pode trabalhar no HDFS normalmente.
spark.read().json("/fileName.json")
       .createOrReplaceTempView(tableName);