[仅限PaaS]{class="badge informative" title="仅适用于云项目(Adobe管理的PaaS基础架构)和内部部署项目上的Adobe Commerce 。"}
使用映射表标准化数据
假设您正在Report Builder构建Revenue by State报表。 在您尝试将billing state分组添加到您的报告并且看到以下内容之前,一切进展顺利:
怎么会这样?
遗憾的是,缺乏标准化有时会导致数据混乱,并在构建报告时带来麻烦。 在此示例中,可能没有下拉菜单或标准化方式可供您的客户输入其计费状态信息。 这会导致不同的值 — pa、PA、penna、pennsylvania和Pennsylvania — 都处于同一状态,这会导致Report Builder中出现一些奇怪的结果。
可能存在一个技术资源,可帮助您清理数据或将所需的列直接插入数据库。 如果没有,则存在其他解决方案 — 映射表。 映射表允许您将数据映射到单个输出,从而快速、轻松地清除和标准化任何乱数据。
如何创建它? how
数据格式刷新程序:
- 确保您的电子表格具有标题行。
- 避免使用逗号! 在上传文件时会导致问题。
- 对日期使用标准日期格式
(YYYY-MM-DD HH:MM:SS)。 - 百分比必须以小数形式输入。
- 请确保正确保留任何前导零或尾随零。
在深入之前,Adobe建议您导出原始表数据。 首先查看原始数据意味着您可以浏览要清理的数据的所有可能组合,从而确保映射表涵盖所有内容。
要生成映射表,您需要创建一个两列电子表格,该电子表格应遵循用于文件上载的格式化规则。
在第一列中,输入存储在数据库中的值,每行 中仅有一个值。 例如,pa和PA不能位于同一行 — 每个输入都需要有自己的行。 有关示例,请参阅下文。
在第二列中,输入这些值 应为 的值。 继续使用计费状态示例,如果您希望pa、PA、Pennsylvania和pennsylvania只是PA,则应当在此列中为每个输入值输入PA。
我需要在Commerce Intelligence中执行什么操作才能使用它? use
创建完映射表后,必须将文件上载到Commerce Intelligence和创建一个联接列,该列将新字段重新定位到所需的表中。 将文件同步到Data Warehouse后,您便可以执行该操作。
此示例使用联接列将您在mapping_state表(state_input)上创建的列移至customer_address表。 这允许我们在报表中按干净的state_input列而不是state列进行分组。
要创建joined列,请在Data Warehouse管理器中导航到字段将重新定位到的表。 在此示例中,这将是customer_address表。
-
单击 Create a Column。
-
从
Joined Column下拉列表中选择Definition。 -
为该列提供一个名称,使其与数据库中的
state列不同。 为列billing state (mapped)命名,以便您能够在Report Builder中进行分段时了解要使用哪个列。 -
连接表所需的路径不存在,因此您需要创建一个路径。 在 Create new path 下拉菜单中单击
Select a table and column。如果您不确定表关系是什么,或者不确定如何正确定义主键和外键,请查看教程以获取帮助。
-
在
Many端,选择您要将该字段重新定位到的表(同样,对我们来说,它是customer_address)以及示例中的Foreign Key列或state列。 -
在
One侧,选择mapping表和Primary key列。 在这种情况下,应从state_input表中选择mapping_state列。 -
以下是路径的外观:
-
-
完成后,单击 Save 以创建路径。
-
路径在保存后可能不会立即填充 — 如果发生这种情况,请单击
Path框并选择您创建的路径。 -
单击 Save 以创建列。
我现在该怎么办? wrapup
更新周期完成后,您将能够使用新的联接列正确划分数据,而不是使用数据库中乱七八糟的列。 现在来看看你的分组选项 — 不再有压力混乱:
无论您何时想要清理Data Warehouse中一些潜在的乱数据,都可以使用映射表。 但是,映射表也可以用于其他酷炫用例,如在 Google Analytics channels 中复制 Commerce Intelligence。