Databricks-将Spark数据帧转换为表:是同一个数据源吗



您需要执行相当多的计算才能从源数据帧生成Spark表,不是吗?还是数据帧和表都是指向相同数据的指针(即,在创建表时,您没有创建重复的数据(?

我想我想弄清楚的是,你是否可以从Spark数据帧"打开-关闭"到表,或者这样做是否(非常(计算昂贵(毕竟是大数据…(

Dataframe和table在spark中都不同。

Dataframe是一个不可变的分布式数据集合。

表是一个具有元数据的表,该元数据指向它必须读取数据的物理位置表单。

当你将spark数据帧转换为表时,你实际上是在将数据写入磁盘,可以是任何东西,比如hdfs、S3、Azure容器等。一旦你将数据保存为表,你就可以从任何地方读取它,比如从不同的spark作业或通过任何其他工作流。

现在谈论数据帧,它只对您创建该数据帧的特定spark会话有效,一旦关闭spark会话,您就无法读取该数据帧或访问其值。数据帧没有保存它的任何特定内存位置或物理路径。数据帧只是从任何特定位置读取的数据的表示。

最新更新