Databricks:有用的代码集锦

本文总结了在工作中用过的脚本

1,列出folder中的所有文件

%python
display(dbutils.fs.ls("dbfs:/mnt/folder/"))

2,改变表的列

由于Azure Databricks不支持修改列,所以可以通过把数据表重命名,然后创建一个同名的表来实现列的改变

%sql

alter table capsbi.table_data
rename to capsbi.table_data_old;

create table capsbi.table_data
using delta
as 
select column_1, ...
from capsbi.table__data_old;

3,检查表的schema

%python

sql_query="select * from CAPSBI.vw_table_data limit 1"
df = spark.sql(sql_query)
print(df.dtypes)

4,彻底删除表

有时表已经被删除了,但是无法创建同名的表,这可能是因为元数据没有彻底删除,需要用到以下命令来彻底删除。

dbutils.fs.rm("dbfs:/user/hive/warehouse/db_name.db/table_name", True)

如果遇到以下错误,可以使用dbutils.fs.rm()命令删除临时文件来修复:

The associated location ('dbfs:/user/hive/warehouse/xxx.db/xxx') is not empty

 

 

 

 

参考文档:

posted @ 2021-12-31 16:52  悦光阴  阅读(385)  评论(0编辑  收藏  举报