in src/main/java/com/uber/uberscriptquery/execution/WriteParquetFileActionStatementExecutor.java [17:33]
public Object execute(SparkSession sparkSession, ActionStatement actionStatement, CredentialProvider credentialManager) {
String filePath = actionStatement.getParamValues().get(0).getValue().toString();
String saveModeStr = actionStatement.getParamValues().get(1).getValue().toString();
String dfTableName = actionStatement.getParamValues().get(2).getValue().toString();
SaveMode saveMode = SaveMode.valueOf(saveModeStr);
String sql = String.format("select * from %s", dfTableName);
logger.info(String.format("Running sql [%s] to get data and then save it", sql));
Dataset<Row> df = sparkSession.sql(sql);
logger.info(String.format("Saving to parquet %s, saveMode: %s", filePath, saveMode));
df.coalesce(1).write().mode(saveMode).parquet(filePath);
logger.info(String.format("Saved to parquet %s, saveMode: %s", filePath, saveMode));
return null;
}