我正在尝试在我的统一目录中创建视图,但无法创建视图并收到如下错误,另外,我有两个计算,一个启用了具有共享资源的统一目录,另一个是 SQL 仓库计算尝试过使用但没有成功。
示例查询
create view catalogname.catalogshcema.viewname as
select * from hive_metastore.data_vault.tablename
`AnalysisException: [UC_COMMAND_NOT_SUPPORTED.WITHOUT_RECOMMENDATION] The command(s): Creating a persistent view that references both Unity Catalog and Hive Metastore objects are not supported in Unity Catalog.`
请帮忙
视图是从元存储中的一个或多个表和视图创建的只读对象。它存在于 Unity Catalog 三级命名空间的第三层。您可以使用跨不同模式和目录的表和其他视图创建视图。
动态视图能够强制执行行级和列级访问控制,并提供数据屏蔽功能。
了解更多动态视图
代码/语法:
CREATE VIEW <catalog-name>.<schema-name>.<view-name> AS
SELECT <query>;
我尝试过以下方法:
CREATE VIEW spark_catalog.default.experienced_employee
(id COMMENT 'Unique identification number', Name)
COMMENT 'View for experienced employees'
AS SELECT id, name
FROM all_employee
结果:
这是预期的行为。在 Unity Catalog 世界中,在 UC 内,可以从多个模式和目录中的表和其他视图创建视图。
但是,您无法在 UC 中创建引用 Hive Metastore 的视图,反之亦然。