【发布时间】:2018-01-30 05:44:43
【问题描述】:
我正在使用 Spark Streaming 2.1。我想定期刷新一些缓存表(由 spark 提供的数据源加载,如 parquet、MySQL 或用户定义的数据源)。
-
如何刷新表格?
假设我加载了一些表格
spark.read.format("").load().createTempView("my_table")它也被缓存了
spark.sql("cache table my_table")以下代码是否足以刷新表格,以及何时 表下次加载,会自动缓存
spark.sql("refresh table my_table")或者我必须手动执行此操作
spark.table("my_table").unpersist spark.read.format("").load().createOrReplaceTempView("my_table") spark.sql("cache table my_table") -
同时刷新表格是否安全?
并发我的意思是使用
ScheduledThreadPoolExecutor在主线程之外进行刷新工作。如果我在表上调用刷新时 Spark 正在使用缓存表会发生什么?
【问题讨论】:
-
你能解决这个问题吗?
标签: apache-spark apache-spark-sql spark-streaming