如何在Azure Databricks中基于CSV文件创建临时视图并加载数据
在Azure Databricks中基于~分隔的CSV创建临时视图及读取数据
方法一:用Spark SQL直接创建临时视图
通过CREATE TEMP VIEW结合CSV数据源配置,指定分隔符、引号规则即可:
CREATE OR REPLACE TEMP VIEW temp_csv_view USING csv OPTIONS ( path "/path/to/your/file.csv", -- 替换为你的文件路径(DBFS/ADLS挂载路径均可) delimiter "~", header "false", -- 文件无表头设为false,有表头则设为true quote "\"", -- 指定包裹字段的双引号 inferSchema "true" -- 自动推断字段类型,生产环境建议手动指定schema );
如果需要精准定义字段类型,可手动指定schema:
CREATE OR REPLACE TEMP VIEW temp_csv_view ( id STRING, name STRING, code STRING, col4 STRING, region STRING ) USING csv OPTIONS ( path "/path/to/your/file.csv", delimiter "~", header "false", quote "\"" );
方法二:用PySpark代码创建临时视图
在Python notebook中先读取数据,再注册为临时视图:
# 读取CSV文件 df = spark.read.csv( path="/path/to/your/file.csv", sep="~", quote='"', header=False, inferSchema=True ) # 给字段命名(文件无表头时用) df = df.toDF("id", "name", "code", "col4", "region") # 注册为临时视图 df.createOrReplaceTempView("temp_csv_view")
验证读取数据
创建视图后,用SQL查询验证:
SELECT * FROM temp_csv_view;
或用PySpark代码查询:
spark.sql("SELECT * FROM temp_csv_view").show()
注意事项
- 确认文件路径正确:DBFS路径格式为
dbfs:/xxx/xxx.csv,ADLS挂载路径直接用挂载后的路径。 - 若文件包含表头,需将
header参数设为true,并对应调整列名配置。 - 自动推断schema可能存在类型误差,生产场景建议手动指定schema保障数据准确性。
内容的提问来源于stack exchange,提问作者dasa m
相关产品推荐
相关产品推荐

