查询数据
本文展示了如何在Unity Catalog中查询数据。
需求
的计算资源用于运行笔记本、Databricks SQL编辑器或数据资源管理器工作流来创建查询的文件必须符合Unity Catalog安全要求。
要在表或视图中查询数据,用户必须具有
使用
对父目录和模式的权限选择
表或视图的权限。请注意
若要从使用单用户访问模式的集群上的视图中读取,用户必须具有
选择
在所有引用的表和视图上。
三级命名空间表示法
在Unity Catalog中,表或视图包含在父目录和模式中。可以使用两种不同的表示法来引用表或视图。你可以使用使用目录
而且使用
语句来指定目录和模式:
使用目录<catalog_name>;使用模式<schema_name>;选择*从<table_name>;
火花.sql("USE CATALOG " )火花.sql("USE SCHEMA " )显示(火花.表格(“< table_name >”))
图书馆(SparkR)sql("USE CATALOG " )sql("USE SCHEMA " )显示(tableToDF(“< table_name >”))
火花.sql("USE CATALOG " )火花.sql("USE SCHEMA " )显示(火花.表格(“< table_name >”))
作为一种替代方法,你可以使用三级命名空间表示法:
选择*从<catalog_name>.<schema_name>.<table_name>;
显示(火花.表格(“< catalog_name >, < schema_name >。< table_name >”))
图书馆(SparkR)显示(tableToDF(“< catalog_name >, < schema_name >。< table_name >”))
显示(火花.表格(“< catalog_name >, < schema_name >。< table_name >”))
使用三层命名空间简化了在多个编目和模式中查询数据。
您还可以通过设置为Hive metastore中的数据使用三级命名空间符号< catalog_name >
来hive_metastore
.
探索Databricks SQL中的表和视图
可以快速浏览表和视图,而不需要运行集群数据浏览.
要打开数据资源管理器,单击数据在侧栏中。
在“数据资源管理器”中,选择目录和模式以查看其表和视图。
对于Hive Metastore中的对象,必须运行SQL仓库才能使用Data Explorer。
从表和视图中选择
选择:从表中或从笔记本中选择视图:
使用侧栏切换到数据科学与工程。
将笔记本附在数据科学与工程或Databricks机器学习上集群为Unity Catalog配置的。
在笔记本中,创建一个引用Unity Catalog表和视图的查询。你可以使用三级命名空间表示法轻松地选择多个目录和模式中的数据,包括工作空间本地Hive metastore。
请注意
若要从具有单用户安全模式的集群的视图中读取数据,用户必须具有
选择
在所有引用的表和视图上。
从Databricks SQL的表或视图中选择:
使用侧栏切换到Databricks SQL。
点击SQL编辑器在侧栏中。
选择一个SQL仓库为Unity Catalog配置的。
编写一个查询。要将表或视图插入到查询中,请选择编目和模式,然后单击要插入的表或视图的名称。
点击运行.
从文件中选择
若要在从外部位置的数据创建表之前查看存储在该位置的数据,可以使用数据资源管理器或以下命令。
权限要求你必须有读文件
与云存储路径关联的外部位置上的权限,以返回该位置中的数据文件列表。
列出云存储路径下的文件:
列表s3: / / < path_to_files >”;
查询指定路径下文件中的数据:
选择*从<格式>.(s3: / / < path_to_files >”;
列出云存储路径下的文件:
显示(火花.sql(“列表s3: / / < path_to_files >“”))
查询指定路径下文件中的数据:
显示(火花.读.负载(“s3: / / < path_to_files >”))
列出云存储路径下的文件:
图书馆(SparkR)显示(sql(“列表s3: / / < path_to_files >“”))
查询指定路径下文件中的数据:
图书馆(SparkR)显示(loadDF(“s3: / / < path_to_files >”))
列出云存储路径下的文件:
显示(火花.sql(“列表s3: / / < path_to_files >“”))
查询指定路径下文件中的数据:
显示(火花.读.负载(“s3: / / < path_to_files >”))