Databricks 将事物称为“目录”和“数据库”而不是更标准的“数据库和模式”有什么理由吗?
他们所说的数据库基本上是一种模式:它可以包含表、视图和函数,但其下面没有额外的级别。
因此,他们所说的目录基本上是一个数据库:它包含单独的事物(通常称为模式,他们称之为数据库),其中包含表、视图和函数,并且可以拥有自己的权限。
我认为他们违反标准命名约定一定有某种理由,但到目前为止我还没有弄清楚。他们似乎是一个异常值。
我想我明白为什么了。如果您在文档中查看此页面,他们会说,
在引入 Unity Catalog 之前,Databricks 使用两层 命名空间。目录是 Unity 目录中的第三层 命名空间模型:
catalog_name.database_name.table_name
换句话说,目录是后来引入的,它曾经只是包含表的数据库(两者之间不可能有模式),所以命名是有意义的。
然后他们引入了目录来包含这两个,我猜他们不想重命名任何东西,但现在轻轻地建议你将数据库称为“模式”。