创建和管理目录

本文将展示如何创建和管理统一目录中的目录。一个目录包含模式(数据库)模式包含表和视图。

请注意

学习如何创建一个外国目录统一目录对象,反映了数据库在外部数据系统,明白了创建一个外国目录。另请参阅与外国目录管理和工作

需求

  • 你必须是一个砖metastore管理员或已获得在metastore创建目录权限

  • 必须在你的砖账户保费计划

  • 你必须有一个统一目录metastore连接到工作区你在哪里执行创建目录。

  • 计算资源你使用笔记本或砖SQL运行创建目录必须使用统一目录的访问模式。

创建一个目录

创建一个目录,您可以使用数据浏览器或SQL命令。

  1. 登录到一个工作区metastore有关。

  2. 点击数据图标数据

  3. 单击创建目录按钮。

  4. (可选)指定的位置数据管理表存储在目录中。

    指定一个位置在这里只有如果你不希望在此目录管理表存储在默认的根为metastore配置的存储位置。看到创建一个目录metastore统一

    您所指定的路径,必须定义在一个外部位置配置,你必须有创建管理存储特权,外部的位置。您还可以使用的子路径路。看到管理外部位置和存储凭证

  5. 点击创建

  6. (可选)指定的工作区目录一定会。

    默认情况下,这个目录是与所有共享工作区附加到当前metastore。如果目录将包含数据应该被限制在特定的工作区,去工作区选项卡,并添加这些工作区。

    有关更多信息,请参见(可选)指定一个特定的工作区目录

  7. 分配权限的目录。看到统一目录权限和可获得的对象

  1. 运行以下SQL命令在笔记本或砖SQL编辑器。物品在括号中是可选的。替换占位符的值:

    • <目录名称>:目录的名称。

    • <位置路径>:可选的。提供一个存储位置的路径,如果你想要在这个目录管理表存储在一个位置不同的默认配置metastore。这条路必须定义在一个外部位置配置,你必须有创建管理存储特权在外部位置配置。您可以使用路径中定义外部位置配置或子路径(换句话说,“gs: / /部门/金融”“gs: / /部门/金融/产品)。需要砖运行时的11.3及以上。

    • < >的评论:可选的描述或其他评论。

    创建目录(如果存在]<目录- - - - - -的名字>(管理位置“<位置路径>”](评论<评论>];

    例如,要创建一个目录命名例子:

    创建目录如果存在例子;
  2. 分配权限的目录。看到统一目录权限和可获得的对象

  1. 运行以下SQL命令在一个笔记本上。物品在括号中是可选的。替换占位符的值:

    • <目录名称>:目录的名称。

    • <位置路径>:可选的。提供一个存储位置的路径,如果你想要在这个目录管理表存储在一个位置不同的默认配置metastore。这条路必须定义在一个外部位置配置,你必须有创建管理存储特权在外部位置配置。您可以使用路径中定义外部位置配置或子路径(换句话说,“gs: / /部门/金融”“gs: / /部门/金融/产品)。需要砖运行时的11.3及以上。

    • < >的评论:一个可选的评论。

    火花sql(“创建目录(如果不存在)<目录名称>[管理位置的<位置路径>][评论<评论>]”)

    例如,要创建一个目录命名例子:

    火花sql(“创建目录如果不存在例子”)

    参数的描述,请参阅创建目录

  2. 分配权限的目录。看到统一目录权限和可获得的对象

  1. 运行以下SQL命令在一个笔记本上。物品在括号中是可选的。替换占位符的值:

    • <目录名称>:目录的名称。

    • <位置路径>:可选的。提供一个存储位置的路径,如果你想要在这个目录管理表存储在一个位置不同的默认配置metastore。这条路必须定义在一个外部位置配置,你必须有创建管理存储特权在外部位置配置。您可以使用路径中定义外部位置配置或子路径(换句话说,“gs: / /部门/金融”“gs: / /部门/金融/产品)。需要砖运行时的11.3及以上。

    • < >的评论:一个可选的评论。

    图书馆(SparkR)sql(“创建目录(如果不存在)<目录名称>[管理位置的<位置路径>][评论<评论>]”)

    例如,要创建一个目录命名例子:

    图书馆(SparkR)sql(“创建目录如果不存在例子”)
  2. 分配权限的目录。看到统一目录权限和可获得的对象

  1. 运行以下SQL命令在一个笔记本上。物品在括号中是可选的。替换占位符的值:

    • <目录名称>:目录的名称。

    • <位置路径>:可选的。提供一个存储位置的路径,如果你想要在这个目录管理表存储在一个位置不同的默认配置metastore。这条路必须定义在一个外部位置配置,你必须有创建管理存储特权在外部位置配置。您可以使用路径中定义外部位置配置或子路径(换句话说,“gs: / /部门/金融”“gs: / /部门/金融/产品)。需要砖运行时的11.3及以上。

    • < >的评论:一个可选的评论。

    火花sql(“创建目录(如果不存在)<目录名称>[管理位置的<位置路径>][评论<评论>]”)

    例如,要创建一个目录命名例子:

    火花sql(“创建目录如果不存在例子”)
  2. 分配权限的目录。看到统一目录权限和可获得的对象

当您创建一个目录,自动创建两个模式(数据库):默认的information_schema

您还可以创建一个目录使用砖起程拓殖的提供者databricks_catalog。您可以检索目录使用的信息databricks_catalogs

(可选)指定一个特定的工作区目录

如果你使用工作区孤立用户数据访问,您可能希望限制目录访问特定工作区在您的帐户,也称为workspace-catalog绑定。默认是共享目录和所有工作区附加到当前metastore。

典型用例绑定到特定的工作区目录包括:

  • 确保用户只能访问生产数据从一个生产工作区环境。

  • 确保用户只能处理敏感数据从一个专用的工作间。

比如说生产和开发隔离。如果你指定生产数据目录只能从生产工作区,访问这个取代任何个人资助,发给用户。

Catalog-workspace绑定图

在这个图中,prod_catalog绑定到两个生产工作区。假设一个用户被授予访问一个表prod_catalog被称为my_table(使用格兰特选择my_table<用户名>)。如果用户试图访问my_table在开发工作区,他们收到一条错误消息。用户可以访问my_table只有从刺激ETL和促使分析工作区。

Workspace-catalog绑定是受人尊敬的在各领域的平台。bob体育客户端下载例如,如果您查询的信息模式,你只看到工作区中的目录访问你的查询问题。数据沿袭和搜索ui同样只显示目录分配给工作区(是否使用绑定或默认情况下)。

配置

指定一个特定的工作区目录,您可以使用数据浏览或统一编目REST API:

权限要求:Metastore管理员或目录所有者。

请注意

Metastore管理员可以看到所有目录在使用数据explorer和Metastore目录所有者可以看到所有目录他们拥有的metastore-regardless目录是否分配给当前工作区中。目录没有分配到工作区出现灰色的,和不可见或可查询子对象。

  1. 登录到一个工作区metastore有关。

  2. 点击数据图标数据

  3. 数据窗格中,在左边,点击目录名称。

    主要的数据浏览窗格违约目录列表。您也可以选择目录。

  4. 工作区选项卡上,清晰的所有工作空间访问复选框。

  5. 点击分配给工作空间并输入或找到你想要的工作分配。

撤销访问去了工作区选项卡上,选择工作区,然后单击撤销

有两个api和两个步骤需要分配一个工作区目录。在下面的例子中,替换< workspace-url >与你的工作空间实例名。学习如何获得工作区实例名称和工作区ID,明白了工作区对象的标识符。了解获得令牌,看到的身份验证数据砖自动化

  1. 使用目录API来设置目录的隔离模式孤立的:

    curl - l - x片“https:// < workspace-url > / api / 2.1 / unity-catalog /目录/ <我的目录> \- h”授权:无记名<我>\- h“application / json内容类型:\——data-raw”{“isolation_mode”:“独立”}'

    默认的隔离模式开放所有工作区metastore贴。

  2. 使用workspace-bindingsAPI指定工作区目录:

    curl - l - x片“https:// < workspace-url > / api / 2.1 / unity-catalog workspace-bindings /目录/ <我的目录> \- h”授权:无记名<我>\- h“application / json内容类型:\——data-raw”{“assign_workspaces”: < workspace-id >、< workspace-id2 >,“unassign_workspaces”: [< workspace-id >、< workspace-id2 >]}'

列出所有工作空间作业目录,使用workspace-bindingsAPI:

curl - l - x片“https:// < workspace-url > / api / 2.1 / unity-catalog workspace-bindings /目录/ <我的目录> \- h”授权:无记名<我>\

下一个步骤

现在你可以模式(数据库)添加到您的目录

查看目录详细信息

查看信息目录,您可以使用数据浏览器或SQL命令。

  1. 登录到一个工作区metastore有关。

  2. 点击数据图标数据

  3. 数据窗格中,找到目录并单击其名称。

    一些细节都列在页面的顶部。其他人可以查看模式,细节,权限,工作区选项卡。

运行以下SQL命令在笔记本或砖SQL编辑器。物品在括号中是可选的。替换占位符<目录名称>

有关详细信息,请参见描述目录

描述目录<目录- - - - - -的名字>;

使用目录扩展全部细节。

删除一个目录

删除目录(或下降),您可以使用数据浏览器或SQL命令。删除一个目录你一定是它的主人。

你必须删除所有模式目录除外information_schema之前你可以删除一个目录。这包括自动创建默认的模式。

  1. 登录到一个工作区metastore有关。

  2. 点击数据图标数据

  3. 数据窗格中,在左边,点击你要删除的目录。

  4. 在细节窗格中,单击左边的菜单后按enter键创建数据库按钮并选择删除

  5. 删除目录对话框中,单击删除

运行以下SQL命令在笔记本或砖SQL编辑器。物品在括号中是可选的。替换占位符<目录名称>

参数的描述,请参阅删除目录

如果你使用下降目录没有级联选择,你必须删除所有模式的目录除外information_schema之前您可以删除目录。这包括自动创建默认的模式。

下降目录(如果存在]<目录- - - - - -的名字>(限制|级联]

例如,删除一个目录命名疫苗和它的模式:

下降目录疫苗级联

运行以下SQL命令在一个笔记本上。物品在括号中是可选的。替换占位符<目录名称>

参数的描述,请参阅删除目录

如果你使用下降目录没有级联选择,你必须删除所有模式的目录除外information_schema之前您可以删除目录。这包括自动创建默认的模式。

火花sql(“删除目录(如果存在)<目录名称>(限制|级联)”)

例如,删除一个目录命名疫苗和它的模式:

火花sql(“疫苗级联删除目录”)

运行以下SQL命令在一个笔记本上。物品在括号中是可选的。替换占位符<目录名称>

参数的描述,请参阅删除目录

如果你使用下降目录没有级联选择,你必须删除所有模式的目录除外information_schema之前您可以删除目录。这包括自动创建默认的模式。

图书馆(SparkR)rsql(“删除目录(如果存在)<目录名称>(限制|级联)”)

例如,删除一个目录命名疫苗和它的模式:

图书馆(SparkR)sql(“疫苗级联删除目录”)

运行以下SQL命令在一个笔记本上。物品在括号中是可选的。替换占位符<目录名称>

参数的描述,请参阅删除目录

如果你使用下降目录没有级联选择,你必须删除所有模式的目录除外information_schema之前您可以删除目录。这包括自动创建默认的模式。

火花sql(“删除目录(如果存在)<目录名称>(限制|级联)”)

例如,删除一个目录命名疫苗和它的模式:

火花sql(“疫苗级联删除目录”)