表元数据管理员设置
Metabase允许您向表和列添加和编辑元数据,以便您可以根据业务逻辑的变化来管理组织的业务逻辑。转到“管理设置”中的“表元数据”标签,
表元数据管理设置只会影响数据在Metabase中的显示和解释方式。这些设置不会更改数据库中的数据。
表设置
在左侧侧边栏中单击表名以在Metabase中查看表的设置。
如果您连接了多个数据库到Metabase,请单击数据库名称(例如,“示例数据库”),然后从下拉菜单中选择另一个数据库。选择数据库后,该数据库中的表将出现在侧边栏中。
表显示名称
要编辑Metabase中表的显示名称,请单击包含当前表名的框。一旦您离开框,更改就会自动保存。
表描述
要添加表描述,请单击表名下方的框。描述在Metabase的数据参考中显示,以帮助人们找到适合其用例的正确表。
表可见性
可查询的表在整个Metabase中可见。
隐藏的表不会出现在查询构建器或数据参考中。但这不是一个安全特性:隐藏的表仍然可以在SQL查询中使用,如果有人从SQL编辑器中写入SELECT * FROM hidden_table
。要防止人们针对特定表编写查询,请参阅数据权限。
提示:要隐藏数据库中的所有表(例如,如果您已迁移到新数据库),请单击左侧侧边栏中“#可查询表”旁边的隐藏眼睛图标。
原始模式
为了记住列名和数据类型在数据库中的存储方式,请单击(在“可见性”下方)原始模式。
列(字段)设置
选择数据库,然后单击侧边栏中的表名以显示基本的列显示设置
对于额外的列设置,请单击列设置框右侧的齿轮图标
- 将文本或数字转换为日期
- 更改筛选小部件(例如,更改为下拉菜单)
- 重新映射列值(例如,从“5”到“非常好”)
- 将列显示为链接
列名称
要更改Metabase中列的全局显示名称,请单击列名称。例如,您可以将“auth.user”显示为“用户”,使列更易于阅读。人们可以使用模型为列提供本地于模型的显示名称。
列描述
要添加描述,请单击列名称下方的框。描述在数据参考中显示,以帮助人们解释列的值。如果您的列包含以下内容,您应考虑添加描述:
- 缩写或代码
- 零、空值或空白值
- 占位符值,如
9999-99-99
列可见性
全局:默认情况下,用户可以查看表中的所有列。
仅详细视图中会隐藏问题结果中的长文本。如果一列的值的平均长度超过50个字符,此设置将默认应用。例如,您可以在已有“客户评分”列的情况下,对“客户评论”列使用此设置。
不包括的列将不会在查询构建器或数据引用中显示。您可以在敏感列(如PII)或不相关列上设置“不包括”。但此可见性选项是一个简单的省略/隐藏选项;它不是安全特性。具有本地查询权限的人员仍然可以访问这些列;他们可以在SQL编辑器中编写 SELECT hidden_column FROM table
或 SELECT * from table
并查看这些字段及其值。要防止人们查看某些列,请参阅数据沙盒。
列顺序
Metabase默认采用数据库模式中定义的列顺序。要在问题结果和菜单中手动重新排列列的显示顺序,请点击每个列右侧的抓取栏,并将列拖动到新的位置。
要自动排序列,请点击第一列设置框右上角的 排序 图标。排序选项包括
- 数据库。(默认)列在数据库中的顺序。
- 字母顺序。 A, B, C…按字母顺序排列。
- 自定义。您可以选择顺序。如果重新排列任何列,Metabase将自动将排序顺序切换到“自定义”。
- 智能。Metabase为您选择。
字段类型
要更改列的字段类型,请点击列设置框中的 类型 下拉菜单。您还可以使用 类型 下拉菜单将列标记为Metabase中的实体键(主键)或外键(不会影响您的数据库)。
转换为特定数据类型
如果您想让Metabase将文本或数字列视为日期时间列
- 转到 管理设置 > 表元数据。
- 找到您的数据库和表。
- 点击列设置框右侧的 齿轮 图标。
- 滚动到 转换为特定数据类型
- 选择一个转换选项。
Metabase当前仅支持在 转换为特定数据类型 中转换为日期时间类型。如果您需要转换为其他类型(如float),可以创建一个将数据转换为SQL问题的SQL问题,并将其保存为模型,或在数据库中直接创建视图。
文本转换为日期时间的转换选项:
- ISO8601->Date
- ISO8601->Datetime
- ISO8601->Time
数字转换为日期时间的转换选项:
- UNIXMicroSeconds->DateTime
- UNIXMilliSeconds->DateTime
- UNIXNanoSeconds->DateTime
- UNIXSeconds->DateTime
转换不同于设置字段类型。例如,假设您在数据库中有一个“创建时间”列,该列具有字符串数据类型。如果您想创建相对日期过滤器,如“创建时间=上周”,或者使用“创建时间”与datetimeAdd等公式,则需要将“创建时间”转换为上述日期时间类型之一。
- 创建相对日期过滤器,例如“创建时间=上周”。
- 使用“创建时间”与datetimeAdd等公式。
从“表元数据”管理设置中转换数据类型不会影响数据库中的原始数据类型。
修改过滤器小部件
要更改列的 过滤器小部件
- 转到 管理设置 > 表元数据。
- 找到您的数据库和表。
- 点击列设置框右侧的 齿轮 图标。
- 滚动到 在此字段上筛选。
- 选择一个过滤器小部件选项。
过滤器小部件选项
此字段默认的“是”筛选器行为。
- 搜索框:显示一个搜索框,并为匹配搜索词的该列值建议自动完成。
- 所有值的列表:显示一个搜索框,以及一个复选框列表,供人们选择作为搜索词的下拉菜单中的值。
- 普通输入框:显示一个搜索框,但不建议自动完成。
将搜索框筛选器更改为下拉筛选器
下拉筛选器小部件可能会有些棘手,因为 Metabase 需要运行一个 扫描 来获取下拉菜单的值列表。
- 转到 管理设置 > 表元数据。
- 找到您的数据库和表。
- 滚动到您的列。
- 在列的设置框中,将 类型 设置为“类别”。
- 将 在此字段上筛选 设置为“所有值的列表”。
当您将默认筛选器更改为下拉筛选器时,您将触发一个数据库查询,获取该列的第一个 1,000 个不同的值(按升序排列)。Metabase 将缓存前 100kB 的文本以显示在下拉菜单中。如果您有具有超过 1,000 个不同值的列或文本密集型数据列,我们建议将 在此字段上筛选 设置为“搜索框”。
重新映射列值
假设您有一个包含值 1、2 和 3 的列,并且您想要将每个数字映射到“低”、“中等”和“高”的值。这种映射可以在具有数值或外键 字段类型 的列上执行。
重新映射数字
- 转到 管理设置 > 表元数据。
- 找到您的数据库和表。
- 单击列设置框右侧的 齿轮 图标。
- 滚动到 显示值。
- 从下拉菜单中选择“自定义映射”。
- 在 映射值 下输入显示值。
重新映射外键
- 转到 管理设置 > 表元数据。
- 找到您的数据库和表。
- 单击列设置框右侧的 齿轮 图标。
- 滚动到 显示值。
- 从下拉菜单中选择“使用外键”。
- 从第二个下拉菜单中选择列名称。
将列显示为链接
- 转到 管理设置 > 表元数据。
- 找到您的数据库和表。
- 点击列设置框右侧的 齿轮 图标。
- 从侧边栏中选择 格式化。
- 从 显示为 中选择 链接。
- 可选:在 链接文本 下设置显示文本。
- 在 链接 URL 字段中输入 URL。
- 可选:通过添加列名称作为
{{parameter}}
创建动态 URL。
例如,如果您将“形容词”列的 链接 URL 设置为
https://www.google.com/search?q={{adjective}}
当有人点击“形容词”列中的值“倾斜”时,他们将进入 Google 搜索 URL
https://www.google.com/search?q=askew
刷新或丢弃缓存值
要更新您的筛选器下拉菜单中的值,请刷新或重置缓存值。缓存操作 包括
表缓存操作
- 转到 管理设置 > 表元数据。
- 找到您的数据库和表。
- 单击右上角的 齿轮 图标(在 退出管理 下方)。
- 选择缓存操作。
列缓存操作
- 转到 管理设置 > 表元数据。
- 找到您的数据库和表。
- 单击列设置框右侧的 齿轮 图标。
- 滚动到 缓存字段值。
- 选择缓存操作。
展开 JSON
如果 Metabase 支持您的数据库的 JSON 展开功能,您可以选择是否将 JSON 展开到组件字段中,其中每个 JSON 键成为一个列。如果性能缓慢,您可以关闭此功能。
- 转到 管理设置 > 表元数据。
- 找到您的数据库和表。
- 单击列设置框右侧的 齿轮 图标。
- 滚动到 展开 JSON。
- 切换JSON展开。
进一步阅读
阅读其他Metabase版本的文档。