-
友情链接:
不管您奈何组合数据哥也色地址,缔造数据源皆需要了解每个表的数据结构以及它们的组合形势。需要洽商几个关节身分:
细心级别:数据的细心进度 — 其粒度。可将其视为“行的界说是什么?”问题的谜底。相关粒度的细心信息,请参见构造用于分析的数据分享字段:至少必须有一个可用于在表之间造成结合的字段。关于聚拢,这些字段界说聚拢子句。在相关表中,它们缔造了关系。关联基数:分享字段有若干个唯独值(唯独性)。相关细心信息,请参见下一部分。援用齐全性:一个表中的值保证另一个表中具有匹配项。换句话说,一个表中不可有另一个表中莫得相应记载的记载。相关细心信息,请参见下文。关联基数不错在“性能选项”缔造中指定关联基数。相关细心信息,请参见使用性能选项优化关系查询。
援用齐全性有一个称为援用齐全性的相关主见,这意味着一个表中的行在另一个表中将永远具有匹配行,由其分享字段的值笃定。要是数据库不包含车辆无车牌或车牌或车辆的记载,则这种关系具有援用齐全性。
在 Tableau 中,援用齐全性在关系的每一端确立。在“性能选项”缔造中,某些记载匹配意味着莫得(大概您不知说念是否有)援用齐全性。统统记载匹配意味着存在援用齐全性。默许缔造是不假设援用齐全性(某些记载匹配)。
相关细心信息,请参见使用性能选项优化关系查询。
自测您能否界说每个图表的关联基数和援用齐全性?这在笔墨上是什么兴味?
示例:
要是咱们将左表缔造为竹素,将右表缔造为在 AuthorID 上结合的作家,将图表蜕变为文本:
一册书不错有多名作家(紫色记载在左侧的典籍表中显露一滑,与右侧作家表中的多札记载相对应)。莫得作家有多本书(右侧的每条作家记载仅指向的一条图通知录)。不存在莫得作家的典籍(左侧莫得记载不可与右侧的记载对应)。有些作家可能莫得典籍(右侧的灰色作家记载在左侧莫得对应的图通知录。)单击底下的每个部分将共张开。
为什么这很伏击?正确确立关联基数或援用齐全性缔造不错通过查询优化栽培性能。然而,不正确着实立可能会导致由于数据丢失或通常而出现团聚问题。默许的“性能选项”缔造为对关联基础为“多”,关于援用齐全性为“某些记载匹配”。惟有在笃定数据的正确特征时,才应调治这些缔造。
相关 Tableau 奈那边理每个缔造的细心信息,请参见基数和援用齐全性缔造的含义。
Tableau 中的一个示例让咱们来探讨一下当关联基数确立不正确时会发生什么。
珍藏:以下示例使用Bookshop 数据围聚表子集。您不错 下载职责簿进行操作,也不错下载原始数据以自行创建数据源。使用的表为 Bookshop.xlsx 中的“Books”(典籍)、“Info”(信息)和“Edition”(版块)(只保留一些字段),以及 BookshopLibraries.xlsx 中的“LibraryProfile”(藏书楼贵寓)和“Catalog”(目次)。
“Book”(典籍)和“Info”(信息)表具有一双一的关系 —“Info”(信息)本色上是“Book”(典籍)表的附加列。因此,固然它们可能相关,但聚拢它们以创建包含统统列的新逻辑表是有道理的。“Edition”(版块)与这个组合表具有多对一的关系,因为单一典籍可能有多个版块,接续具有不同的治安。(请珍藏,下图显露了从“Book+Info”(典籍+信息)表到“Edition”(版块)的关系,因此为一双多。)
“Edition”(版块)与“Catalog”(目次)相关,手脚 ISBN 上的一双多关系。“Catalog”(目次)和“LibraryProfile”(藏书楼贵寓)表在“Library Id”(藏书楼 ID)上具有多对多关系。关节点是,“LibraryProfiles”(藏书楼贵寓)表的每个库有多个行,每个东说念主员类型(藏书楼员、藏书楼助理、藏书楼本事东说念主员)一滑。相关这些表的结构的细心信息,请参见Bookshop 数据集。
正确的缔造正确缔造“Catalog-LibraryProfile”(目次-藏书楼贵寓)关系后,咱们不错创建一个浅易的可视化项,显露每个藏书楼对应于多本典籍的职责主说念主员数目。这个要缔造的可视化项有点愚蠢,但它有助于阐述这小数。Idle Hour Library(失业藏书楼)有 130 名职工, 不管咱们指摘的是哪本书。职工类型有三个值,因此每个认为由三札记载(括号中的数字)构成。
职责主说念主员按藏书楼和书称呼计数。(括号中的数字示意每个标识中的记载数。)
造作的缔造:一双一当关系被造作地缔造为一双一时,在可视化项中,“Catalog”(目次)中的每个书名仅与“LibraryProfile”(藏书楼贵寓)表中的一札记载进行有用配对(如括号中的记载计数所示)。
职责主说念主员按藏书楼和书称呼计数。(括号中的数字示意每个标识中的记载数。)
在上头,咱们不错看到每个藏书楼只显露其最少职责主说念主员数目。(请参阅底下的可视化项中的粗体数字。“Staff Count”(职责主说念主员计数)可视化项中反应的数目是最少职责主说念主员数目。
色色淫按类型和藏书楼分列的职责主说念主员。
相关关系奈何成为可视化项的荆棘文聚拢的细心信息,请参见 Tableau 博客上的 Tableau 博客中的新数据建模简介(结合在新窗口中洞开)。
造作的缔造:聚拢固然有目的惩办这类问题(细心级别抒发式是通用的),但聚拢具有不同粒度或其关联基数为“多”的表可能会导致通常。在这里,关于惟有一种治安的书名,职责主说念主员计数是准确的,但关于在“Editions”(版块)表中具有两种治安的典籍,传递到职责主说念主员计数的值也会翻倍(请珍藏,括号中的记载计数为 6 而不是正确的 3)。
职责主说念主员按藏书楼和书称呼计数。(括号中的数字示意每个标识中的记载数。)
造作的缔造:造作地假设援用齐全性在不存在援用齐全性的情况下,奉告 Tableau 存在援用齐全性(统统记载匹配)可能会导致值丢失。在这里,这两个可视化项是相似的,但右侧的一个来自确立为假设援用齐全性的数据源。阿谁可视化项还是丢失了 null。固然这在某些情况下可能没问题,但了解这些 null 代表什么终点伏击。此处,要是可视化项显露每个藏书楼中的版块数,则 null 示意版块表中存在但不属于任何藏书楼的两个版块。这可能是一个伏击的强劲,而且造作地假设援用齐全性会忽略这种强劲。
浏览职责簿过头数据源,了解并吞失当的表可能产生哪些其他问题。
性能影响要是这些缔造确立造作可能导致数据丢失或通常,为什么 Tableau 允许改革它们?在许厚情况下,您不错而且应该保留默许缔造:关联表而不是聚拢,将关联基数保留为多对多,况且不假设援用齐全性。非常是在您不笃定缔造应该是什么的情况下更应如斯。
然而,关联基数和援用齐全性是性能选项,因为可能会对默许值产素性能影响。要是您笃定数据的结构,确立正确的缔造不错减少查询实施,从而栽培速率。
在幕后珍藏:本节使用与其他数据组合本事雷同的本事来仅提供主见框架。它不是相关 Tableau 奈何使用关系性能缔造的本事形色。
关联基数
关系的关联基数会影响团聚的发生时刻。这不错从搀杂的角度来洽商。数据搀杂会寂寥查询两个数据源。不管其他数据源奈何,每个数据源皆会左证需要团聚到视图所需的细心级别。关于关系,关联基数缔造会影响团聚是在聚拢之前照旧之后发生。
在上头的示例中,“多”缔造示意在将数据与典籍信息并吞之前对每个藏书楼的职责主说念主员数目进行团聚,从而确保每本书皆有正确的数目。当关联基数造作地缔造为“一” 时,在将职责主说念主员数目与典籍数据并吞之前不会团聚,从而导致不正确的值。
请珍藏,不仅会显露不正确的值,统统值皆分拨给职责主说念主员类型“ Librarians”(藏书楼员),尽管它们来自统统三种职责主说念主员类型。此缔造确立造作可能会导致不可展望和不正确的值。惟有在视图中使用来自造作缔造的关系另一端的另一个表的字段时,才会发生此边界筛选。
然而,在这些值唯独的情况下,要是 Tableau 优化查询,则不错解放移除聚拢前的团聚。
援用齐全性
尽管援用齐全性是指关系的缔造,但不错从聚拢类型的角度洽商它。统统外部聚拢将保留统统记载,不管另一个表中是否有匹配项,但会以性能本钱设想。要是您不笃定记载是否会丢失,外部聚拢会更安全。当可能莫得援用齐全性时,这是处理表的形势(某些记载匹配)。
里面聚拢将仅保留两个表中有匹配项的记载,同期会删除不出当今每个表中的记载。要是您知说念里面聚拢不会摈斥必要的数据,则效力更高。要是“性能选项”缔造为“统统记载匹配”,则假设援用齐全性,并在不洽商不匹配值的情况下实施聚拢。
不正确的援用齐全性缔造可能会对组合数据产生雷同筛选器的后果,从而移除不匹配的值。相关保留不匹配记载的功能的细心信息,请参见 Tableau 博客上的跨多个相关表建议问题。相关聚拢类型数据的细心信息,请参见聚拢数据。
保留默许值要是您的分析具有可收受的性能哥也色地址,咱们激烈建议将默许的“性能选项”缔造保留为多对多,而不是假设援用齐全性。关系的力量来自于它们左证分析中使用的表提供准确、荆棘文符合的边界的智商。改革这些缔造会移除关系的语义生动性。