问题描述
我开始在Community Edition Databricks上使用流式播放,但是在产生测试事件几分钟后,我遇到了一些问题。我认为这与流传输过程中产生的一些临时小文件的事实有某种联系。我想找到它们并删除,但是找不到它们存储在哪里。我的例外是
com.databricks.api.base.DatabricksServiceException: QUOTA_EXCEEDED: You have exceeded the maximum number of allowed files on Databricks Community Edition. To ensure free access,you are limited to 10000 files and 10 GB of storage in DBFS. Please use dbutils.fs to list and clean up files to restore service. You may have to wait a few minutes after cleaning up the files for the quota to be refreshed. (Files found: 11492);
我尝试运行一些shell脚本来找出每个文件夹的文件数量,但是不幸的是,我找不到可疑的文件,主要是lib
,usr
和其他包含系统或python文件的文件夹在那里,找不到我的流式传输可能产生的任何内容。我使用的这个脚本
find / -maxdepth 2 -mindepth 1 -type d | while read dir; do
printf "%-25.25s : " "$dir"
find "$dir" -type f | wc -l
done
在哪里可以找到too many files
问题的原因?也许它根本没有连接到流媒体吗?
为清楚起见,我没有将许多自定义文件上传到/FileStore
解决方法
似乎您只检查了本地文件系统上的文件,而不是DBFS本身。您可以通过在Databricks笔记本中运行以下单元格来查看DBFS:
%sh
fs ls /
或:
%python
dbutils.fs.ls("/")
您可以在此处检查文件,然后使用dbutils.fs.rm
或fs rm
删除它们。另外,请查看DBFS上的/tmp
文件夹并删除其中的所有文件。