{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["admonition"]},"redocly_category":"Products","product_name":"ID Unification","type":"markdown"},"seo":{"title":"Learning canonical_id for Cookie ID","description":"Treasure Data Product Documentation · Collect and Unify · Segment and Activate · Experiment and Analyze · Decisioning Automate with AI Scale and Trust.","siteUrl":"https://docs.treasuredata.com","lang":"en-US","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"learning-canonical_id-for-cookie-id","__idx":0},"children":["Learning ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]}," for Cookie ID"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In this page, we will explain about cases where the same person is identified by stitching together the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_client_id"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_global_id"]}," of multiple sites."," ","Consider the following data example where there are four sites and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_client_id"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_global_id"]}," are available in all tables."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"date"},"children":["date"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":""},"children":[]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"site_aaa"},"children":["site_aaa"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"site_aaa"},"children":["site_aaa"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":""},"children":[]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"site_xxx"},"children":["site_xxx"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"site_xxx"},"children":["site_xxx"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":""},"children":[]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"site_yyy"},"children":["site_yyy"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"site_yyy"},"children":["site_yyy"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":""},"children":[]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"site_zzz"},"children":["site_zzz"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"site_zzz"},"children":["site_zzz"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["month"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["day"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["td_client_id"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["td_global_id"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["td_client_id"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["td_global_id"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["td_client_id"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["td_global_id"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["td_client_id"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["td_global_id"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["5"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_002"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_002"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["5"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_004"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_004"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_005"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy_002"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_005"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy_002"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_006"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_006"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["5"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_007"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx_002"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_008"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_008"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_002"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_009"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx_002"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_009"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["4"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["5"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_002"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_010"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_010"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_011"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz_004"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_011"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_012"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz_004"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_012"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["5"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["5"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_013"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_013"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_014"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_015"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy_004"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_015"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz_005"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_015"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["6"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["5"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_016"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx_004"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_016"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx_004"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_017"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz_005"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_017"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy_005"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_018"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz_005"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_018"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["It may appear that there are multiple users, but in fact these are cases that can be identified to just one person by connecting them with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_client_id"]}," and td_global_id across the site."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/4-1-1.9cb773f0ac217e4a061d84f532fa11df74f2e7aa99c2c5815d7d69e454661288.55be243a.avif","alt":"canonical_id_1"},"children":[]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If ID Unification is performed with this data as input, only one ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]}," is expected to be generated. Let's check this in practice."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"data-preparation","__idx":1},"children":["Data Preparation"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["We proceed on the assumption that the above data is stored in TD tables with the names site_aaa, site_xxx, site_yyy and site_zzz for each site, as in the site_aaa table below. This table can be generated by using ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://github.com/treasure-data/treasure-boxes/tree/master/tool-box/id-unification-samples"},"children":[" Workflow Samples"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"site_aaa","__idx":2},"children":["site_aaa"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"time"},"children":["time"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"site"},"children":["site"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"td_client_id"},"children":["td_client_id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"td_global_id"},"children":["td_global_id"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/01/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_001"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/01/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_002"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/01/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_003"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/02/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_004"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/02/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/02/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/03/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/03/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/03/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_002"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_009"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/04/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_002"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_010"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/04/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/04/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/05/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_013"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/05/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_014"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/05/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_015"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/06/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_016"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/06/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/06/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"site_xxx","__idx":3},"children":["site_xxx"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"time"},"children":["time"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"site"},"children":["site"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"td_client_id"},"children":["td_client_id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"td_global_id"},"children":["td_global_id"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/01/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/01/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/01/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/02/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_004"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/02/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_005"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/02/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/03/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/03/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx_002"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_008"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/03/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx_002"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_009"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/04/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/04/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/04/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_012"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/05/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_013"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/05/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/05/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/06/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx_004"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_016"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/06/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx_004"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_017"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/06/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["xxx.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"site_yyy","__idx":4},"children":["site_yyy"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"time"},"children":["time"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"site"},"children":["site"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"td_client_id"},"children":["td_client_id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"td_global_id"},"children":["td_global_id"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/01/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_001"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/01/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/01/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/02/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/02/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy_002"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_005"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/02/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy_002"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_006"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/03/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/03/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/03/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/04/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_010"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/04/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_011"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/04/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/05/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/05/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/05/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy_004"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_015"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/06/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/06/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/06/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy_005"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_018"]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"site_zzz","__idx":5},"children":["site_zzz"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"time"},"children":["time"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"site"},"children":["site"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"td_client_id"},"children":["td_client_id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"td_global_id"},"children":["td_global_id"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/01/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/01/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_002"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/01/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/02/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/02/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/02/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_006"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/03/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_007"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/03/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_008"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/03/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/04/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/04/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz_004"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_011"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/04/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz_004"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_012"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/05/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/05/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/05/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz_005"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_015"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/06/05"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/06/15"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz_005"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_017"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2023/06/25"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz_005"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_018"]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"id_unification_ex1dig","__idx":6},"children":["id_unification_ex1.dig"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"+call_unification:\n  http_call>: https://api-cdp.treasuredata.com/unifications/workflow_call\n  headers:\n    - authorization: ${secret:td.apikey}\n  method: POST\n  retry: true\n  content_format: json\n  content:\n    run_canonical_ids: true\n    run_enrichments: true\n    run_master_tables: true\n\n    full_refresh: true\n    keep_debug_tables: true\n\n    unification:\n      !include : unification_ex1.yml\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"unification_ex1yml","__idx":7},"children":["unification_ex1.yml"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"name: test_id_unification_ex1\n\nkeys:\n  - name: td_client_id\n    invalid_texts: ['']\n\n  - name: td_global_id\n    valid_regexp: \"3rd_*\"\n    invalid_texts: ['']\n\ntables:\n  - database: test_id_unification_ex1\n    table: site_aaa\n    key_columns:\n      - {column: td_client_id, key: td_client_id}\n      - {column: td_global_id, key: td_global_id}\n  - database: test_id_unification_ex1\n    table: site_xxx\n    key_columns:\n      - {column: td_client_id, key: td_client_id}\n      - {column: td_global_id, key: td_global_id}\n\n  - database: test_id_unification_ex1\n    table: site_yyy\n    key_columns:\n      - {column: td_client_id, key: td_client_id}\n      - {column: td_global_id, key: td_global_id}\n\n  - database: test_id_unification_ex1\n    table: site_zzz\n    key_columns:\n      - {column: td_client_id, key: td_client_id}\n      - {column: td_global_id, key: td_global_id}\n\ncanonical_ids:\n  - name: unified_cookie_id\n    merge_by_keys: [td_client_id, td_global_id]\n    merge_iterations: 5\n\nmaster_tables:\n  - name: master_table_ex1\n    canonical_id: unified_cookie_id\n    attributes:\n      - name: td_client_id\n        invalid_texts: ['']\n        array_elements: 5\n        source_columns:\n          - {table: site_aaa, order: first, order_by: td_client_id, priority: 1}\n          - {table: site_xxx, order: first, order_by: td_client_id, priority: 2}\n          - {table: site_yyy, order: first, order_by: td_client_id, priority: 3}\n          - {table: site_zzz, order: first, order_by: td_client_id, priority: 4}\n      - name: td_global_id\n        valid_regexp: \"3rd_*\"\n        invalid_texts: ['']\n        source_columns:\n          - {table: site_aaa, order: last, order_by: time, priority: 1}\n          - {table: site_xxx, order: last, order_by: time, priority: 1}\n          - {table: site_yyy, order: last, order_by: time, priority: 1}\n          - {table: site_zzz, order: last, order_by: time, priority: 1}\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"explanation-of-the-unification-algorithm","__idx":8},"children":["Explanation of the Unification Algorithm"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["While this algorithm is commonly referred to as the Union-Find Algorithm, it will be referred to as the Unification Algorithm in this document. The Unification Algorithm represents the relationships between keys as a directed graph and transforms the graph into a structure that allows the system to identify groups of keys as representing the same individual through iterative processing."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"initial-state-of-the-graph","__idx":9},"children":["Initial State of the Graph"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["+extract_and_merge"]}," task in the workflow generates the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["graph_unify_loop_0"]}," table. This represents the initial state of the graph, illustrating the \"follower -> leader\" relationships between keys."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/4-2-1.072b2ab0cbdf446d6dfe1d239f94596bfaa36dedaa01179dd40f40a73f351181.55be243a.avif","alt":"canonical_id_1"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"graph_unify_loop_0","__idx":10},"children":["graph_unify_loop_0"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The initial graph represented by the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["graph_unify_loop_0"]}," table is visualized using Graphviz as shown below."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/graph_unify_loop_0.c612ba010390de120f15080c91189fefb40680f82f847e294d413f130558c7e9.55be243a.avif","alt":"canonical_id_1"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"how-the-graph_unify_loop_0-table-is-created","__idx":11},"children":["How the graph_unify_loop_0 Table Is Created"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Let’s examine how the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["graph_unify_loop_0"]}," table, which represents the initial graph, is generated."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"canonical_ids:\n  - name: unified_cookie_id\n    merge_by_keys: [td_client_id, td_global_id]\n    merge_iterations: 5\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["merge_by_keys:"]}," section of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_ids:"]},", keys used for stitching are listed in order of priority. This priority influences how the graph is constructed."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/4-3-1.3be8f9b6821a32e3c61d587cb1863b1e73a2b97bcccc1d27a72b47776f24e26d.55be243a.avif","alt":"canonical_id_1"},"children":[]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["graph_unify_loop_0"]}," table is generated from the original data through the following steps:"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/4-4-1.7d7bcdb5a0acbd2d5f264c9e5fd0dbaee393086daf56a69562143efc0b5fd69a.55be243a.avif","alt":"canonical_id_1"},"children":[]}]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Among all key columns, the highest-priority key is designated as the leader."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["All key columns (including the leader) are expanded into rows as followers paired with their leader."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The source table is similarly expanded for all tables."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["graph_unify_loop_0"]}," table is created by performing a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["UNION ALL"]}," on all tables and extracting unique pairs of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["follower_id"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["follower_ns"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["leader_id"]},", and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["leader_ns"]},"."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["follower_ns"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["leader_ns"]}," specify the key each ID belongs to (in this example, 1 corresponds to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_client_id"]},", and 2 to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_global_id"]},"). The priority of keys in this setup is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["[1, 2]"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"graph_unify_loop_1","__idx":12},"children":["graph_unify_loop_1"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Using the graph from ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["graph_unify_loop_0"]},", leaders are updated based on the following rules:"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/4-5-1.a4fefb3e0772c455d16593bf9ac419be7de3b84ca7bf78e5a8069cac0e0446d1.55be243a.avif","alt":"canonical_id_1"},"children":[]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["For each leader, compare its value with all other leaders connected via a single follower."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["If a smaller value exists (in terms of string comparison), the leader is replaced by the one with the smaller value. The original leader becomes the old leader and is replaced by the new leader."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["An \"old_leader -> old_leader\" relationship will always exist and must be replaced by \"old_leader -> new_leader.\" This change signifies that the old leader is now a follower of the new leader."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The table created after all leaders are updated to their new leaders becomes the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["graph_unify_loop_1"]}," table."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/4-6-1.72580e72f40c39879479a7c85e6d63e70b2a49e6d436df4e121c134fa14f04fe.55be243a.avif","alt":"canonical_id_1"},"children":[]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This process results in many leaders being replaced, with old leaders pointing to new leaders as followers. The same process is repeated in subsequent loops."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/graph_unify_loop_1.82ca880d1d924e133f008c562ff6326566d773bf806d88f35baa7a38a39dc55c.55be243a.avif","alt":"canonical_id_1"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"graph_unify_loop_2","__idx":13},"children":["graph_unify_loop_2"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/graph_unify_loop_2.9d8b8cd51a23ce29b1d59ef9ef6d9c7adf7e7a49d6b51277cb2cb5bc8c45c42c.55be243a.avif","alt":"canonical_id_1"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"graph_unify_loop_3","__idx":14},"children":["graph_unify_loop_3"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/graph_unify_loop_3.ddedf0404235e466ef7f6db494c3bb735cb09ac038e7dab21126df7c77ffdd4f.55be243a.avif","alt":"canonical_id_1"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"graph_unify_loop_4","__idx":15},"children":["graph_unify_loop_4"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/graph_unify_loop_4.eeb038dad40ab18297837ed8929da6c3bf2680ba3067a9b2626b7d81b27d2f5c.55be243a.avif","alt":"canonical_id_1"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"graph_unify_loop_5-graph","__idx":16},"children":["graph_unify_loop_5 (graph)"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In this example, with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["merge_iterations:"]}," set to 5, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["graph_unify_loop_5"]}," represents the final state of the algorithm. Note that this table is output as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["graph"]}," rather than ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["graph_unify_loop_5"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"determining-convergence","__idx":17},"children":["Determining Convergence"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The Unification Algorithm is guaranteed to converge. In ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["graph_unify_loop_4"]},", only one leader remains, and all followers point to it. This is considered a converged state. The convergence conditions are:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["A single leader is consolidated for each individual."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["All keys point exclusively to this leader."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Once converged, a canonical ID can be assigned to all keys for the same individual. In this example, a minimum of 4 iterations (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["merge_iterations: 4"]},") is necessary to achieve convergence."]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"Note"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Setting a higher value for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["merge_iterations:"]}," is not problematic since processing stops upon convergence. However, note that ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["graph_unify_loop_N"]}," tables are only created up to the point of convergence."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"impact-of-changing-merge_by_keys-order","__idx":18},"children":["Impact of Changing merge_by_keys: Order"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If the order in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["merge_by_keys:"]}," is changed to prioritize ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_global_id"]}," as shown below, the graph evolution will differ completely:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"canonical_ids:\n  - name: unified_cookie_id\n    # merge_by_keys: [td_client_id, td_global_id]\n    merge_by_keys: [td_global_id, td_client_id]\n    merge_iterations: 5\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"graph_unify_loop_0-1","__idx":19},"children":["graph_unify_loop_0"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/graph_unify_loop_0.c7c3eafe5df27f9075980ae81a114b0b2b3ee15ae51846ee9707441869d3acf7.351f0cda.avif","alt":"graph_unify_loop_0"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"graph_unify_loop_1-1","__idx":20},"children":["graph_unify_loop_1"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/graph_unify_loop_1.437514a5396f09cc95d215dcecf24930e353bdaf9c91f3c1e836db758d4952be.351f0cda.avif","alt":"graph_unify_loop_1"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"graph_unify_loop_2-1","__idx":21},"children":["graph_unify_loop_2"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/graph_unify_loop_2.21ea93bb2143399b720582c57d4542f5024512e0d7963c41edd957fc4f195f63.351f0cda.avif","alt":"graph_unify_loop_2"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"graph_unify_loop_3-1","__idx":22},"children":["graph_unify_loop_3"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/graph_unify_loop_3.000f11a304cf602ace1cf8e247b6cd13b9293b23df03eadc8e3f9eca7e338b0c.351f0cda.avif","alt":"graph_unify_loop_3"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"graph_unify_loop_4-1","__idx":23},"children":["graph_unify_loop_4"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/graph_unify_loop_4.671ad6ba361aea33308861112294d4b3020814fbb8f2cd7a3711c5198d2b9622.351f0cda.avif","alt":"graph_unify_loop_4"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"is-the-order-good-for-the-least-number-of-loops","__idx":24},"children":["Is the order good for the least number of loops?"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You might think that a good ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["merge_by_keys:"]}," order is one that minimises the number of loops, but this is not true. (To begin with, finding the order of keys that minimises the number of loops is not realistic, as you have to run every combination of the order at least once.)"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The important thing is not the number of loops, but to set the order so that the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]}," generated for each individual is as invariant as possible (for subsequent workflow updates)."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"generation-and-assignment-of-canonical_id","__idx":25},"children":["Generation and Assignment of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The process of assigning ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]}," to the final graph after running the Unification Algorithm is executed through the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["+canonicalize"]}," task. For each user, a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]}," is generated based on the leader's value, and the same ID is distributed to all its followers."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]}," is derived based on the value of the leader key (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["graph.leader_id"]},") using the following calculation:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"SQL","header":{"controls":{"copy":{}}},"source":"to_base64url(\n  to_big_endian_64(\n    bitwise_xor(\n      from_big_endian_64(\n        substr(\n          sha256(to_utf8(graph.leader_id)), 1, 8\n        )\n      ), leader_keys.key_mask_low64i\n    )\n  ) || leader_keys.key_mask_high8b\n)\n","lang":"SQL"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/4-7-1.e1b4bbb66c549c07a2ed31bc3c59fee202cd9772002b4b3a42165b2d6ce60708.55be243a.avif","alt":"canonical_id_1"},"children":[]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In the above example, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]}," for User1 and User2 is generated based on the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_client_id"]}," that became the leader. In contrast, User3's ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_client_id"]}," is absent, so the leader is set to the next prioritized value (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_global_id"]},"), and the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]}," is generated accordingly. The generated ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]}," is also assigned to all connecting followers, ensuring that one leader and all its followers share the same ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]},". The resulting lookup table records this information, allowing you to see the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]}," assigned to each key."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"is-canonical_id-immutable","__idx":26},"children":["Is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]}," Immutable?"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]}," is not guaranteed to remain consistent (for the same user) across every run of the Unification Workflow."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/4-8-1.91046e1d14598393f3116dd50823b41d488015ef88f1c6504562a49177ac93b6.55be243a.avif","alt":"canonical_id_1"},"children":[]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In the next update, suppose a smaller value leader, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["\"aaa_00\""]},", appears for User1. In this case, User1's leader becomes ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["\"aaa_00\""]}," (as the smallest value becomes the sole leader), and a different ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]}," is generated. A different ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]}," implies a different individual, indicating the emergence of a new user. For example, in Audience Studio, which uses this ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]},", the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["cdp_customer_id"]}," for User1 would change."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"determining-the-order-of-merge_by_keys","__idx":27},"children":["Determining the Order of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["merge_by_keys"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["It is crucial to ensure that the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]}," remains as consistent as possible across updates to the Unification Workflow. The order of keys in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["merge_by_keys:"]}," has a significant impact on the immutability of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]},"."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The Unification Algorithm prioritizes the keys specified in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["merge_by_keys:"]}," in order, setting the earliest (highest priority) key as the leader whenever possible. This means the key at the top of the list is often chosen as the leader for each user."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Therefore, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["merge_by_keys:"]}," should be set with keys ordered from those least likely to change over time to ensure stability. For users who lack the highest-priority key, the second-priority key becomes the leader, making the order of keys critically important."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"examples-of-merge_by_keys-settings","__idx":28},"children":["Examples of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["merge_by_keys:"]}," Settings"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Good: ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["merge_by_keys: [email, td_global_id]"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["email"]}," is less likely to change or increase for individuals, ensuring the same value is selected across updates (and thus a consistent ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]},")."]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Good: ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["merge_by_keys: [member_id, email, td_global_id]"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["member_id"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["customer_id"]}," is stable for individuals, ensuring the same value is selected across updates (and thus a consistent ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]},")."]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Bad: ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["merge_by_keys: [td_client_id, email, td_global_id]"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_client_id"]}," may change over time. If a newly generated value is smaller than the previous minimum, it becomes the leader, resulting in a different ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]}," from the previous run."]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"id-unification-output","__idx":29},"children":["ID Unification Output"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Here, we will closely examine the tables outputted in this example. This will provide more detailed insights than the explanation provided in ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/customer-data-platform/id-unification/p2_output_result"},"children":["Unification Output"]},", including the meaning of each column in the tables."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"database-for-storing-results","__idx":30},"children":["Database for Storing Results"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A database named ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["cdp_unification_${name}"]},", based on the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["name:"]}," value defined in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["unification_ex1.yml"]},", is created to store the results. In this example, the database is named ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["cdp_unification_test_id_unification_ex1"]},"."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"name: test_id_unification_ex1 # Unification Name\n\nkeys:\n  - name: td_client_id\n  - name: td_global_id\n\ntables:\n  - database: test_id_unification_ex1\n    table: ex1_site_aaa\n    key_columns:\n      - {column: td_client_id, key: td_client_id}\n      - {column: td_global_id, key: td_global_id}\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/4-9-1.95e5b67ad146c35d0463b32879326dfc21e496d887baa69abc59ad8cd8b489ea.55be243a.avif","alt":"canonical_id_1"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"tables-utilizing-the-results","__idx":31},"children":["Tables Utilizing the Results"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"master_table","__idx":32},"children":["master_table"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In this example, the table is named ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["master_table_ex1"]},"."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"master_tables:\n  - name: master_table_ex1\n    canonical_id: unified_cookie_id\n    attributes:\n      - name: td_client_id\n        invalid_texts: ['']\n        array_elements: 5\n        source_columns:\n          - {table: site_aaa, order: first, order_by: td_client_id, priority: 1}\n          - {table: site_xxx, order: first, order_by: td_client_id, priority: 2}\n          - {table: site_yyy, order: first, order_by: td_client_id, priority: 3}\n          - {table: site_zzz, order: first, order_by: td_client_id, priority: 4}\n      - name: td_global_id\n        valid_regexp: \"3rd_*\"\n        invalid_texts: ['']\n        source_columns:\n          - {table: site_aaa, order: last, order_by: time, priority: 1}\n          - {table: site_xxx, order: last, order_by: time, priority: 1}\n          - {table: site_yyy, order: last, order_by: time, priority: 1}\n          - {table: site_zzz, order: last, order_by: time, priority: 1}\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The table specified under ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["name:"]}," in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["master_tables:"]}," is output. This is used as the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["master_table"]}," in the Master Segment of the Audience Studio. Below is the result from this example."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":5,"id":"example-result","__idx":33},"children":["Example Result"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"unified_cookie_id"},"children":["unified_cookie_id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"td_client_id"},"children":["td_client_id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"td_global_id"},"children":["td_global_id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"time"},"children":["time"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["tRf8bJZ_0EC1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["[\"aaa_001\", \"aaa_001\", \"aaa_001\", \"aaa_001\", \"aaa_002\"]"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_018"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A record is generated for each ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]},". In this case, there is only one record. The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["time"]}," column indicates when the table was created."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/4-10-1.4d760096724915720f966187fcc0632737ca4c6c87a0f091835f8ddc48e7c617.55be243a.avif","alt":"canonical_id_1"},"children":[]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Apart from the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]},", values specified in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["attributes:"]}," are stored. The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_client_id"]}," column, for example, picks up a maximum of five values based on the table order and record sequence defined in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["source_tables:"]},". However, as shown in this example, duplicate values may occur, so caution is needed."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"enriched_-table","__idx":34},"children":["enriched_ Table"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In this example, the tables are named ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["enriched_site_aaa"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["enriched_site_xxx"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["enriched_site_yyy"]},", and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["enriched_site_zzz"]},"."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"tables:\n  - database: test_id_unification_ex1\n    table: site_aaa\n    key_columns:\n      - {column: td_client_id, key: td_client_id}\n      - {column: td_global_id, key: td_global_id}\n\n  - database: test_id_unification_ex1\n    table: site_xxx\n    key_columns:\n      - {column: td_client_id, key: td_client_id}\n      - {column: td_global_id, key: td_global_id}\n\n  - database: test_id_unification_ex1\n    table: site_yyy\n    key_columns:\n      - {column: td_client_id, key: td_client_id}\n      - {column: td_global_id, key: td_global_id}\n\n  - database: test_id_unification_ex1\n    table: site_zzz\n    key_columns:\n      - {column: td_client_id, key: td_client_id}\n      - {column: td_global_id, key: td_global_id}\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Tables named ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["enriched_${source_table_name}"]}," are output (four in this example). These are used in the Master Segment as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["attribute_table"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["behavior_table"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":5,"id":"example-result-1","__idx":35},"children":["Example Result"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Below is the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["enriched_site_aaa"]}," table."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"time"},"children":["time"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"site"},"children":["site"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"td_client_id"},"children":["td_client_id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"td_global_id"},"children":["td_global_id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"unified_cookie_id"},"children":["unified_cookie_id"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1672876800"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["tRf8bJZ_0EC1"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1673740800"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_002"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["tRf8bJZ_0EC1"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1674604800"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["tRf8bJZ_0EC1"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1675555200"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_004"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["tRf8bJZ_0EC1"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1676419200"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1677283200"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa.jp"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["..."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["..."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["..."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["..."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["..."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/4-11-1.6633d12f17999ab2a06f43de4ed82185529a70c3a8cae8cce5bc84c071608496.55be243a.avif","alt":"canonical_id_1"},"children":[]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This translation preserves the structure and technical accuracy of the original content while ensuring clarity in English. Let me know if you need further adjustments!"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"tables-to-check-if-unification-was-successful","__idx":36},"children":["Tables to Check If Unification Was Successful"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"source_key_stats-table","__idx":37},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["source_key_stats"]}," Table"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In this example, the table is named ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["unified_cookie_id_source_key_stats"]},"."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This table outputs statistics from the source table (e.g., the number of unique keys for each column). Only the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["total_distinct"]}," column is calculated from the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["unified_cookie_id_graph_unify_loop_0"]}," table."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This table appends records with each execution. To retrieve the latest record, execute the following query:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"SQL","header":{"controls":{"copy":{}}},"source":"SELECT *\nFROM (\n  SELECT *, RANK() OVER (ORDER BY time DESC) AS id\n  FROM unified_cookie_id_source_key_stats\n)\nWHERE id = 1\nORDER BY from_table\n","lang":"SQL"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":5,"id":"example-result-2","__idx":38},"children":["Example Result"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]}," column was added by the above SQL query."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"from_table"},"children":["from_table"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"total_distinct"},"children":["total_distinct"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"distinct_td_client_id"},"children":["distinct_td_client_id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"distinct_td_global_id"},"children":["distinct_td_global_id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"time"},"children":["time"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"id"},"children":["id"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["*"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["16"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["16"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["18"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["site_aaa"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["12"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["10"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["site_xxx"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["11"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["4"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["8"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["site_yyy"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["12"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["5"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["7"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["site_zzz"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["13"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["4"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["9"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/4-12-1.37156d2584242a75c4b28908afeb7ff918dd1859312196eebe89a3da85d2a749.55be243a.avif","alt":"source_key_stats"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"result_key_stats-table","__idx":39},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["result_key_stats"]}," Table"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In this example, the table is named ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["unified_cookie_id_result_key_stats"]},"."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This table records statistics such as the number of canonical IDs (unique individuals) generated for each table after ID unification. The table appends records with each execution. To retrieve the latest record, execute the following query:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"SQL","header":{"controls":{"copy":{}}},"source":"SELECT *\nFROM (\n  SELECT *, RANK() OVER (ORDER BY time DESC) AS id\n  FROM unified_cookie_id_result_key_stats\n)\nWHERE id = 1\nORDER BY from_table\n","lang":"SQL"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":5,"id":"example-results","__idx":40},"children":["Example Results"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]}," column was added by the above SQL query."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"from_table"},"children":["from_table"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"total_distinct"},"children":["total_distinct"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"distinct_with_td_client_id"},"children":["distinct_with_td_client_id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"distinct_with_td_global_id"},"children":["distinct_with_td_global_id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"histogram_td_client_id"},"children":["histogram_td_client_id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"histogram_td_global_id"},"children":["histogram_td_global_id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"time"},"children":["time"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"id"},"children":["id"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["*"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["16:1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["18:1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["site_aaa"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["16:1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["18:1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["site_xxx"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["16:1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["18:1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["site_yyy"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["16:1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["18:1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["site_zzz"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["16:1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["18:1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/4-13-1.926ecd1ebe8fc41b93c0dc786795f99e36f6bb1d8197ea62e9654262da089a3f.55be243a.avif","alt":"source_key_stats"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"column-explanations-for-result_key_stats","__idx":41},"children":["Column Explanations for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["result_key_stats"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["from_table"]}]},": Indicates the source table for the computed statistics. The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["\"*\""]}," row represents all tables combined."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["total_distinct"]}]},": Number of unique canonical IDs in the entire table (if ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["\"*\""]},") or within each specific table."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["distinct_with_td_client_id"]}]},": Number of canonical IDs containing at least one ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_client_id"]},". Excludes IDs not stitched with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_client_id"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["distinct_with_td_global_id"]}]},": Number of canonical IDs containing at least one ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_global_id"]},". Excludes IDs not stitched with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_global_id"]},"."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["histogram_td_client_id"]}]},": Distribution of how many ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_client_ids"]}," were merged into one canonical ID (e.g., ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["16:1"]}," means 16 ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_client_ids"]}," became one canonical ID)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["histogram_td_global_id"]}]},": Similar to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["histogram_td_client_id"]}," but for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_global_id"]},"."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"tables-generated-in-the-process-of-the-unification-algorithm","__idx":42},"children":["Tables Generated in the Process of the Unification Algorithm"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The following group of tables is used internally by the workflow. Some are used for tasks such as convergence judgment."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"graph_unify_loop_n-table","__idx":43},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["graph_unify_loop_N"]}," Table"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In this example, the table is named ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["unified_cookie_id_graph_unify_loop_0"]}," (1, 2, 3, 4)."," ","This table represents the state of the graph in the Nth loop, frequently referenced in the algorithm's introduction."," ","The last loop is not included here because it has a different name (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["graph"]}," Table)."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":5,"id":"example-result-for-unified_cookie_id_graph_unify_loop_0-","__idx":44},"children":["Example Result (for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["unified_cookie_id_graph_unify_loop_0"]},")"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"follower_id"},"children":["follower_id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"follower_ns"},"children":["follower_ns"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"leader_id"},"children":["leader_id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"leader_ns"},"children":["leader_ns"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"follower_first_seen_at"},"children":["follower_first_seen_at"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"follower_last_seen_at"},"children":["follower_last_seen_at"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"follower_source_table_ids"},"children":["follower_source_table_ids"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"follower_last_processed_at"},"children":["follower_last_processed_at"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"time"},"children":["time"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy_002"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy_002"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1676419200"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1677283200"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["[7]"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675815"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_015"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["zzz_005"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1684972800"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1684972800"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["[8, 5, 7]"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675815"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_015"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1684972800"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1684972800"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["[8, 5, 7]"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675815"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_015"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy_004"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1684972800"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1684972800"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["[8, 5, 7]"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675815"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["..."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["..."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["..."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["..."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["..."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["..."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["..."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["..."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["..."]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"column-explanations-for-unified_cookie_id_graph_unify_loop_0","__idx":45},"children":["Column Explanations for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["unified_cookie_id_graph_unify_loop_0"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["follower_id"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["leader_id"]}," Columns"]},": These columns represent the keys for the follower and leader."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["follower_ns"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["leader_ns"]}," Columns"]},": Indicate the namespace for the follower and leader keys. The order of keys in the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["merge_by_keys:"]}," configuration determines the values 1, 2, etc. In this example, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_client_id"]}," is 1, and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["td_global_id"]}," is 2."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["follower_first_seen_at"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["follower_last_seen_at"]}," Columns"]},": Record the timestamp when the follower's key value first and last appeared (based on the time column) in the source table."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["follower_source_table_ids"]}," Columns"]},": An array listing the IDs of source tables containing the follower's key values. Use the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tables"]}," table (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["unified_cookie_id_tables"]}," in this example) to determine which source table corresponds to each ID."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["follower_last_processed_at"]}," Columns"]},": The timestamp when the follower was last processed in the loop."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"graph-table","__idx":46},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["graph"]}," Table"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In this example, the table is named ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["unified_cookie_id_graph"]},". It represents the graph's state in the final specified loop."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"tables-for-mapping-canonical_id-to-keys","__idx":47},"children":["Tables for Mapping ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]}," to Keys"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"lookup-table","__idx":48},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["lookup"]}," Table"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In this example, the table is named ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["unified_cookie_id_lookup"]},"."," ","This table stores all key values in a single row and allows the lookup of a key's ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]},". It is used to create the master and enriched tables."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"img","attributes":{"src":"/assets/4-14-1.c617dcf2fd9252682f3c6f3c46020b883030c4e4c79eab84bffc7a639fd3ac44.55be243a.avif","alt":"source_key_stats"},"children":[]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":5,"id":"example-result-3","__idx":49},"children":["Example Result"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"canonical_id"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canonical_id"]}]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"id"},"children":["id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"id_key_type"},"children":["id_key_type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"canonical_id_first_seen_at"},"children":["canonical_id_first_seen_at"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"canonical_id_last_seen_at"},"children":["canonical_id_last_seen_at"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"id_first_seen_at"},"children":["id_first_seen_at"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"id_last_seen_at"},"children":["id_last_seen_at"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"id_source_table_ids"},"children":["id_source_table_ids"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"id_last_processed_at"},"children":["id_last_processed_at"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"time"},"children":["time"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["tRf8bJZ_0EC1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_016"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1672876800"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1687651200"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1685923200"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1685923200"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["[5, 6]"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675863"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["tRf8bJZ_0EC1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["aaa_001"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1672876800"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1687651200"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1672876800"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1675555200"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["[5]"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675815"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["tRf8bJZ_0EC1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["yyy_003"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1672876800"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1687651200"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1680652800"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1681516800"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["[7]"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675851"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["tRf8bJZ_0EC1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3rd_010"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1672876800"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1687651200"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1680652800"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1680652800"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["[7, 5]"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675851"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Columns not detailed below share the same meanings as in the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["unified_cookie_id_graph_unify_loop_0"]}," table."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"column-explanations-for-lookup","__idx":50},"children":["Column Explanations for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["lookup"]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id_key_type"]}," Column"]},": Indicates the key type (number) corresponding to the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]},". For mapping between ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["key_type"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["key_name"]},", refer to the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["keys"]}," table (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["unified_cookie_id_keys"]}," in this example)."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id_source_table_ids"]}," Column"]},": Lists the source tables containing the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]},". Use the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tables"]}," table (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["unified_cookie_id_tables"]}," in this example) to map each ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["table_id"]}," to a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["table_name"]},"."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"keys-table--unified_cookie_id_keys-","__idx":51},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["keys"]}," Table (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["unified_cookie_id_keys"]},")"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This table maps each key to its corresponding ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]}," (1, 2, ...). It is used to identify the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["key_name"]}," from the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id_key_type"]}," column in the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["lookup"]}," table."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":5,"id":"example-result-4","__idx":52},"children":["Example Result"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"key_type"},"children":["key_type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"key_name"},"children":["key_name"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"time"},"children":["time"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["td_client_id"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["td_global_id"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":4,"id":"tables-table--unified_cookie_id_tables-","__idx":53},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tables"]}," Table (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["unified_cookie_id_tables"]},")"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This table maps each source table to an assigned ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]},". It is used to identify the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["table_name"]}," from the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id_source_table_ids"]}," column in the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["lookup"]}," table."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":5,"id":"example-result-5","__idx":54},"children":["Example Result"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"table_id"},"children":["table_id"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"table_name"},"children":["table_name"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"time"},"children":["time"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["5"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["site_aaa"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["6"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["site_xxx"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["7"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["site_yyy"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["8"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["site_zzz"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1691675802"]}]}]}]}]}]},"headings":[{"value":"Learning canonical_id for Cookie ID","id":"learning-canonical_id-for-cookie-id","depth":1},{"value":"Data Preparation","id":"data-preparation","depth":2},{"value":"site_aaa","id":"site_aaa","depth":3},{"value":"site_xxx","id":"site_xxx","depth":3},{"value":"site_yyy","id":"site_yyy","depth":3},{"value":"site_zzz","id":"site_zzz","depth":3},{"value":"id_unification_ex1.dig","id":"id_unification_ex1dig","depth":3},{"value":"unification_ex1.yml","id":"unification_ex1yml","depth":3},{"value":"Explanation of the Unification Algorithm","id":"explanation-of-the-unification-algorithm","depth":2},{"value":"Initial State of the Graph","id":"initial-state-of-the-graph","depth":3},{"value":"graph_unify_loop_0","id":"graph_unify_loop_0","depth":3},{"value":"How the graph_unify_loop_0 Table Is Created","id":"how-the-graph_unify_loop_0-table-is-created","depth":4},{"value":"graph_unify_loop_1","id":"graph_unify_loop_1","depth":3},{"value":"graph_unify_loop_2","id":"graph_unify_loop_2","depth":3},{"value":"graph_unify_loop_3","id":"graph_unify_loop_3","depth":3},{"value":"graph_unify_loop_4","id":"graph_unify_loop_4","depth":3},{"value":"graph_unify_loop_5 (graph)","id":"graph_unify_loop_5-graph","depth":3},{"value":"Determining Convergence","id":"determining-convergence","depth":3},{"value":"Impact of Changing merge_by_keys: Order","id":"impact-of-changing-merge_by_keys-order","depth":3},{"value":"graph_unify_loop_0","id":"graph_unify_loop_0-1","depth":3},{"value":"graph_unify_loop_1","id":"graph_unify_loop_1-1","depth":3},{"value":"graph_unify_loop_2","id":"graph_unify_loop_2-1","depth":3},{"value":"graph_unify_loop_3","id":"graph_unify_loop_3-1","depth":3},{"value":"graph_unify_loop_4","id":"graph_unify_loop_4-1","depth":3},{"value":"Is the order good for the least number of loops?","id":"is-the-order-good-for-the-least-number-of-loops","depth":3},{"value":"Generation and Assignment of canonical_id","id":"generation-and-assignment-of-canonical_id","depth":2},{"value":"Is canonical_id Immutable?","id":"is-canonical_id-immutable","depth":3},{"value":"Determining the Order of merge_by_keys","id":"determining-the-order-of-merge_by_keys","depth":3},{"value":"Examples of merge_by_keys: Settings","id":"examples-of-merge_by_keys-settings","depth":3},{"value":"ID Unification Output","id":"id-unification-output","depth":2},{"value":"Database for Storing Results","id":"database-for-storing-results","depth":3},{"value":"Tables Utilizing the Results","id":"tables-utilizing-the-results","depth":3},{"value":"master_table","id":"master_table","depth":4},{"value":"Example Result","id":"example-result","depth":5},{"value":"enriched_ Table","id":"enriched_-table","depth":4},{"value":"Example Result","id":"example-result-1","depth":5},{"value":"Tables to Check If Unification Was Successful","id":"tables-to-check-if-unification-was-successful","depth":3},{"value":"source_key_stats Table","id":"source_key_stats-table","depth":4},{"value":"Example Result","id":"example-result-2","depth":5},{"value":"result_key_stats Table","id":"result_key_stats-table","depth":4},{"value":"Example Results","id":"example-results","depth":5},{"value":"Column Explanations for result_key_stats","id":"column-explanations-for-result_key_stats","depth":4},{"value":"Tables Generated in the Process of the Unification Algorithm","id":"tables-generated-in-the-process-of-the-unification-algorithm","depth":3},{"value":"graph_unify_loop_N Table","id":"graph_unify_loop_n-table","depth":4},{"value":"Example Result (for unified_cookie_id_graph_unify_loop_0 )","id":"example-result-for-unified_cookie_id_graph_unify_loop_0-","depth":5},{"value":"Column Explanations for unified_cookie_id_graph_unify_loop_0","id":"column-explanations-for-unified_cookie_id_graph_unify_loop_0","depth":4},{"value":"graph Table","id":"graph-table","depth":4},{"value":"Tables for Mapping canonical_id to Keys","id":"tables-for-mapping-canonical_id-to-keys","depth":3},{"value":"lookup Table","id":"lookup-table","depth":4},{"value":"Example Result","id":"example-result-3","depth":5},{"value":"Column Explanations for lookup","id":"column-explanations-for-lookup","depth":4},{"value":"keys Table ( unified_cookie_id_keys )","id":"keys-table--unified_cookie_id_keys-","depth":4},{"value":"Example Result","id":"example-result-4","depth":5},{"value":"tables Table ( unified_cookie_id_tables )","id":"tables-table--unified_cookie_id_tables-","depth":4},{"value":"Example Result","id":"example-result-5","depth":5}],"frontmatter":{"seo":{"title":"Learning canonical_id for Cookie ID"}},"lastModified":"2026-02-17T01:46:37.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/products/customer-data-platform/id-unification/p3_canonical_id_learning","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}