使用笔记本将数据加载到湖屋中

在本教程中,你将了解如何使用笔记本读/写 Fabric 湖屋中的数据。 Fabric 支持 Spark API 和 Pandas API,以为实现此目标。

使用 Apache Spark API 加载数据

在笔记本的代码单元格中,使用以下代码示例从源读取数据,并将其加载到湖屋的文件或这两个部分中。

若要指定要从中读取的位置,可以使用相对路径(如果数据来自当前笔记本的默认湖屋)。 或者,如果数据来自其他湖屋,则可以使用绝对 Azure Blob File System (ABFS) 路径。 可以从数据的关联菜单中复制此路径。

显示复制操作菜单选项的屏幕截图。

复制 ABFS 路径:此选项将返回文件的绝对路径。

复制 Spark 的相对路径:此选项将返回默认湖屋中文件的相对路径。

df = spark.read.parquet("location to read from") 

# Keep it if you want to save dataframe as CSV files to Files section of the default lakehouse

df.write.mode("overwrite").format("csv").save("Files/ " + csv_table_name)

# Keep it if you want to save dataframe as Parquet files to Files section of the default lakehouse

df.write.mode("overwrite").format("parquet").save("Files/" + parquet_table_name)

# Keep it if you want to save dataframe as a delta lake, parquet table to Tables section of the default lakehouse

df.write.mode("overwrite").format("delta").saveAsTable(delta_table_name)

# Keep it if you want to save the dataframe as a delta lake, appending the data to an existing table

df.write.mode("append").format("delta").saveAsTable(delta_table_name)

使用 Pandas API 加载数据

为了支持 Pandas API,默认湖屋会自动装载到笔记本。 装入点为“/lakehouse/default/”。 可以使用此装入点从/向默认湖屋读取/写入数据。 关联菜单中的“复制文件 API 路径”选项会从该装入点返回文件 API 路径。 从“复制 ABFS 路径”选项返回的路径也适用于 Pandas API。

显示复制文件 API 路径菜单选项的屏幕截图。

复制文件 API 路径:此选项将返回默认湖屋的装入点下的路径。

# Keep it if you want to read parquet file with Pandas from the default lakehouse mount point 

import pandas as pd
df = pd.read_parquet("/lakehouse/default/Files/sample.parquet")

# Keep it if you want to read parquet file with Pandas from the absolute abfss path 

import pandas as pd
df = pd.read_parquet("abfss://DevExpBuildDemo@msit-onelake.dfs.fabric.microsoft.com/Marketing_LH.Lakehouse/Files/sample.parquet")

提示

对于 Spark API,请使用“复制 ABFS 路径”或“复制 Spark 的相对路径”选项来获取文件的路径。 对于 Pandas API,请使用“复制 ABFS 路径”或“复制文件 API 路径”选项来获取文件的路径。

让代码使用 Spark API 或 Pandas API 的最快方法是使用“加载数据”选项并选择要使用的 API。 该代码会在笔记本的新代码单元格中自动生成。

显示在何处选择加载数据选项的屏幕截图。