带有SparkSession的Glue Dev Endpoint访问目录

时间:2018-07-24 09:21:17

标签: aws-glue

我尝试设置一个AWS胶开发端点来测试一个非常简单的ETL脚本,但似乎无法获取目录数据。

我并不担心齐柏林飞艇,只是使用了scala-repl。

spark.catalog.listTables.show->为空。

当我尝试按照自己的emr步骤创建SparkSession时

SparkSession.builder()
              .config("hive.metastore.connect.retries", 5)
              .config("hive.metastore.client.factory.class", "com.amazonaws.glue.catalog.metastore.AWSGlueDataCatalogHiveClientFactory")
              .config("spark.serializer", "org.apache.spark.serializer.KryoSerializer")
              .enableHiveSupport().appName("ETL")
              .getOrCreate()

我得到这个结果,没有表格。

18/07/24 09:08:00 WARN ObjectStore: Version information not found in metastore. hive.metastore.schema.verification is not enabled so recording the schema version 1.2.0
18/07/24 09:08:00 WARN ObjectStore: Failed to get database default, returning NoSuchObjectException
18/07/24 09:08:01 WARN ObjectStore: Failed to get database global_temp, returning NoSuchObjectException
18/07/24 09:08:01 WARN SparkSession$Builder: Using an existing SparkSession; some configuration may not take effect

我要用这个脚本做什么实际上很简单。 我有一个视图(在spark emr集群上的齐柏林飞艇中创建),具有像年,月,日,x,y,z这样的列,而我只想实现某一天,例如年(当前时间戳),月.. 一天作为镶木地板,并将其附加到分区表中。

如果我有某种方法可以插入和覆盖分区,那就更好了,我希望粘合可以简化调度。 我是否误解了胶水,只是不支持使用标准的sparksession sql only脚本。

雅典娜和更复杂的spark emr作业应稍后读取数据。这似乎是胶水的简单的etl繁琐工作(几乎只是SQL),但是它确实需要目录访问和spark [SparkSession] .write.mode(“ append”)。parquet ...才能起作用。

0 个答案:

没有答案