计划数据源
您的数据在 Tableau 中心。您为自己或他人浏览数据、回答问题和构建可视化项的成功程度取决于基础数据。
如果您的目标是执行一些快速探索或临时分析,则可以跳进去,连接到某些数据、拖放一些数据以构建一些可视化项,然后带着您需要的信息跳出来。但是,如果您的目标是创建将使用多次的分析或数据源,则最好仔细考虑并规划数据源。
Tableau 数据源
Tableau 数据源是您的源数据与 Tableau 之间的链接。它本质上是您的数据(实时连接或数据提取形式)、连接信息、包含数据的表或工作表的名称,以及您基于要在 Tableau 中使用的数据进行的自定义项的总和。这些自定义项包括数据合并方式以及元数据(例如计算、重命名字段和默认格式设置)等内容。
Tableau 数据源可能包含与不同数据库或文件的多个数据连接。连接信息包括数据所在的位置(例如文件名和路径或网络位置),以及有关数据连接方式的详细信息,例如数据库服务器名称和服务器登录信息。
注意:术语数据源和数据连接过去被不加区别地使用,在较旧的材料中可能缺乏明确的区分。
还务必要牢记 Tableau 数据源(Tableau 对您的数据的访问权限以及可能涉及的所有自定义项)与源数据本身(例如数据库或 Excel 电子表格)之间的区别。从设计数据库的角度来规划数据源不属于本主题的范围。
Tableau 数据源可以一直嵌入在最初创建它们的工作簿中,也可以单独发布。已发布的数据源允许集中和扩展精心策划的数据源。有关详细信息,请参见发布的数据源的最佳做法。
合并数据
如果您的数据来自一个表,则可以连接到您的数据以创建数据源,将表拖到画布上,然后开始构建视图。但是,如果数据分布在多个表或多个数据库之间,则需要将其合并。合并数据操作在“数据源”页面上进行。
单个数据库 | 多个数据库 |
|
|
注意:为了将跨不同的数据库关联各个表,必须将表作为同一数据源内的数据连接(而不是新的数据源)添加。通过左侧窗格中的“添加”链接来添加数据连接。可以通过“数据”菜单或数据源名称旁边的图标下拉菜单来创建新数据源,如下图所示。
数据合并方法
关系是在 Tableau 中合并数据的默认方式。关系是为分析合并来自多个表的数据的一种动态、灵活的方式。如有必要,也可以联接表或合并表。也可以混合数据源。让我们看一下 Tableau 中的数据合并方式选项,以及每种方法有用的一些情况。
关系 | 根据关联的字段确定两个表之间的联接可能性。不将数据合并在一起以创建新的固定表。在分析期间,使用上下文适当的联接自动查询关联的表,以生成用于该分析的自定义数据表。 保持适当的详细级别,不会丢失数据,保留适当的聚合,并处理 null。 |
联接 | 基于联接子句和联接类型合并两个数据表,以形成新的固定数据表。通常用于跨相同的基本行结构添加新数据列。 如果所有表中不存在字段,则可能会导致某些联接类型数据丢失。如果表处于不同的详细级别,则可能会导致数据重复。 |
并集 | 合并两个或更多数据表以形成新的固定数据表。用于在跨相同的基本列结构上追加数据(添加新数据行)。 |
混合 | 跨两个或更多单独的 Tableau 数据源工作。数据保持独立。Tableau 会独立查询数据源,并根据为该工作表建立的链接字段在视图中将结果一起可视化。模拟左联接的行为,并可能筛选来自辅助数据源的数据。 |
注意:也可以使用自定义 SQL合并数据。大多数时候,最好直接在画布中或使用数据混合来合并数据。这使得 Tableau 具有最大的优化灵活性。但是,在某些情形下,可能有理由使用自定义 SQL。请记住,这样做可能会对性能产生影响,因为 Tableau 被迫按编写的那样执行自定义 SQL 语句。
关系
关联是一种基于这些表之间的共享字段(列)处理来自多个表的数据的方法。建立关系会告知 Tableau 如何在表之间连接行。Tableau 保存这些信息,但不会像硬编码连接那样立即将行合并在一起。相反,当创建可视化项时,分析中涉及的字段通过关系进行追溯,并创建适当的联接以返回正确的数据。
由于数据从来不会被强制放入可视化项上下文之外的单个表中,因此当数据处于不同详细级别或粒度时,关系非常有用。举例来说,如果您需要在一个表中处理每日降雨量相关数据,但在另一个表中处理每小时温度相关数据。
有关如何使用关系合并表的详细信息,请参见关联您的数据
有关如何使用关系合并表的详细信息,请参见关联您的数据和以下 Tableau 博客文章:
注意:在 Tableau 版本 2024.2 及更高版本中,Tableau 数据模型支持多事实分析和通过多事实关系共享维度。有关详细信息,请参见关于多事实关系数据模型(链接在新窗口中打开)、何时使用多事实关系模型(链接在新窗口中打开)和构建多事实关系数据模型(链接在新窗口中打开)。
联接
联接是用于合并由通用字段关联的表的一种方法。使用联接合并数据后会产生一个通过添加数据列横向扩展的表。
有关如何在 Tableau 中联接数据的详细信息,请参见联接数据。
数据混合
当使用数据混合来合并数据时,您可以将所谓的主数据源中的数据与一个或多个辅助数据源的通用字段进行合并。
当您需要按工作表更改数据源的配置方式,并且希望合并不允许关系或联接的数据库(例如多维数据集数据源或已发布数据源)时,数据混合非常有用例如多维数据集数据源或已发布数据源。
使用数据混合合并数据后会产生一个通过添加数据列横向扩展的虚拟表。每个数据源中的数据将聚合到公共级别,然后再一起显示在可视化项中。
有关混合数据的工作方式以及如何在 Tableau 中混合数据的详细信息,请参见混合您的数据。
并集
合并是一种将值(行)附加到表的方法。如果表具有相同的列,则可以合并这些表。使用并集合并数据后会生成一个虚拟表,此表具有相同的列,但会通过添加数据行进行纵向扩展。
您可以通过以下两种方式之一合并表:手动或使用通配符搜索。有关如何在 Tableau 中使用这些方法之一合并数据的详细信息,请参见合并数据。
Tableau 数据源注意事项
在进行任何其他操作之前,请确保您清楚数据源的用途。如果您要为有广泛问题的各种各样的用户创建一个包罗万象的数据源,那么您的做法将与构建一个针对性能优化的利基数据源不同。从一开始就了解您的目标很重要。
考虑到这一目标,在 Tableau 中构建数据源之前,有几个项目需要考虑和规划:
- 位置和访问
- 形状和清洁度
- 数据模型和合并数据
- 元数据和自定义项
- 可扩展性、安全性和可发现性
- 性能和新鲜度
位置和访问
数据的位置可以像计算机上的单个 Excel 文件或您创建的 Google 工作表一样简单,也可以像使用各种技术的多个数据库一样复杂。访问还可能涉及数据库的特定驱动程序或连接器,或者数据库服务器的登录信息。
要考虑的问题:
- 正确的 Tableau 用户是否能访问数据和 Tableau 并具备其权限?
- 应该使用哪些用户帐户登录到数据库?
- 是否需要用户筛选或行级安全性?
- 源数据是在本地还是在云中?
- 是否有支持的连接器?
- 该数据库是否有任何限制(它是否支持您希望使用的所有功能)?
形状和清洁度
您的组织可能已经有可连接到的结构完善的数据或可以利用的 ETL 进程,或者您可能需要使用 Tableau Prep Builder 执行清理和调整操作,以将数据转换为有用的格式。
要考虑的问题:
- 数据是否结构完善,可与 Tableau 一起使用?
- 是否应使用 Tableau Prep Builder 和 Tableau Prep Conductor 来清理和自动执行数据准备流程?
- 什么计算或操作最好在 Tableau 中以本机方式完成?
- 是否不需要这些数据?是否缺少任何数据?
数据模型和合并数据
Tableau 需要知道如何查询数据,这是由 Tableau 数据模型传达的。如果数据来自多个表,则需要合并数据。用于合并数据的方法包括关系、联接、并集和混合。
要考虑的问题:
- 数据是否分布在多个系统中?
- 合并每个数据表的最佳方式是什么?
元数据和自定义项
数据存储方式通常不容易让人舒适地使用。例如,默认字段名称可能难以处理,可能需要自定义格式设置,可能缺少缩写或代码的定义,或者基础数据中可能不存在常见计算。使用这些信息创建语义层可以使数据更易于理解和使用。
要考虑的问题:
- 应该添加哪些计算?
- 表和字段名称可以理解吗?
- 字段的默认设置是否有用,或者是否应该自定义这些设置?
- 是否应进行任何调整以支持 Tableau Catalog?
请注意,“数据解释”功能此时不支持多表数据源。
可扩展性、安全性和可发现性
数据源可能保留在创建它的工作簿中(嵌入式数据源),也可以独立于任何分析发布到 Tableau Server 或 Tableau Cloud,作为自己的内容资产。这种对已发布的数据源的集中化具有安全性和扩展方面的额外优势,允许多个用户访问一致的数据源。已发布的数据源还可以利用 Tableau Catalog和建议,并为组织提供单一真实来源。
要考虑的问题:
- 数据源是否应保留在工作簿中?
(以下问题假定数据源已发布)
性能和新鲜度
此外,Tableau 数据源可以是与源数据的实时连接,也可以将数据复制为可刷新的数据提取。数据提取可以提升分析性能或防止数据库的资源消耗。
要考虑的问题:
- 数据连接是实时连接还是数据提取?
- 如果已提取,是否会有刷新计划?(Tableau Server | Tableau Cloud)
- 如果发布到 Tableau Cloud,是否需要使用 Tableau Bridge?
构建高质量的数据源
设计和性能良好的数据源中有很多内容。不过,您不必在第一次尝试时就进行发布。与创建良好的可视化项一样,构建数据源可以是一个持续的过程。尝试合并您认为需要的数据,然后查看是否可以构建所需的可视化项。您可以随时返回并编写新的计算,或引入另一个数据表。进行一些用户测试,并询问同事是否能找出您的字段名。
当然,最好仅发布您有信心的数据源,并且只认证那些已经通过质量保证的数据源。当您的数据源出现在用户面前时,他们应该能够信任它。