編輯導讀:ID就是代表一個使用者實體的一串兒序列號,本文作者針對ID mapping展開了三個層次的分析,希望對大家有幫助。
今天跟大家談一個話題,就是ID mapping。
談之前,先拋一個問題出來,什麼是ID。在這裡我們今天要談的範疇中,給ID下一個定義,ID就是代表一個使用者實體的一串兒序列號。在這個定義下,我們就發現手機號是一個使用者ID,身份證號是一個使用者ID,郵箱是一個使用者ID,微訊號也是一個使用者ID。只不過這些ID的生命週期不同,精度也不同。
比如,身份證號一個人一生一般只有一個且終生不變,而手機號,郵箱號,微訊號則存在停用和轉贈的可能,可見如果使用手機號來代表一個人則可能存在一定的誤差,而這就引出了第二個概念,mapping。
介紹mapping之前我們來看這樣一個現實的案例。
A公司為了滿足使用者在不同場景下的需求開發了多條產品線,其中包含,小程式,APP和網站。同時,線上下透過多種渠道接觸使用者挖掘使用者需求,獲得的資訊迴流到了企業的CRM系統中,最終我們發現A企業從多個觸點獲取到大量的使用者行為資訊,但存在一個問題,由於各個系統相對孤立,同一個使用者在不同的系統中被使用獨立ID進行標識,在進行資料分析和決策時,每個使用者的畫像是片面的,只有孤立域中的畫像。
使用者的行為是斷裂的,因為同一個使用者在不同系統間操作時被採用了不同的ID進行標識。同時企業總體的使用者統計數也是不準確的。mapping的提出正是為了解決這個案例中提到的問題。 ID Mapping是將使用者關聯,使得物理世界中一個真實的使用者在網際網路世界中也採用一個統一的ID進行關聯。
關於ID mapping的實現,我們可以分成兩大步驟,第一步是ID的標識,第二步則是ID的關聯。
一、ID標識
如何標識一個使用者又可以分成兩種場景,第一是使用者匿名狀態下,第二是使用者登入狀態下。在使用者登入狀態下一般使用業務ID來對使用者進行標識,如身份證號、userID、手機號等等。而在使用者匿名狀態下,則需要透過裝置ID來對使用者進行標識,根據使用者使用的裝置和系統的差異,標識的方式也不相同,一般來說可分為以下4類。
1.網頁,網頁一般使用cookie ID作為匿名ID來使用,cookie ID的生成規則是基於時間戳、隨機數、螢幕的寬高和UA作業系統版本號進行生成的。cookie ID是64位字串,使用cookie ID的風險在於一旦cookie 被清除或者使用者更換了瀏覽器,那麼cookie ID也會改變。
2.Android系統,Android裝置獲取裝置唯一ID的方案有多種,如獲取IMEI,WIFI或藍芽的MAC地址都可以。考慮到易獲得性,可以使用Android ID作為裝置ID。Android ID 的位數為16位,Android ID會因為APP簽名不同和裝置賬號不同而生成不同的值。需要注意的是Android 8.0 以下 Android ID不會改變,Android 8.0以上使用者透過OTA方式升級app Android ID不會變,但如果解除安裝之後重新安裝 Android ID會發生改變。
3.iOS系統,iOS系統一般採用IDFA或IDFV作為裝置ID。IDFA和IDFV分別是iOS生態為廣告主和開發商設計的兩套ID規範。分別可供有廣告的APP和同應用開發廠商進行使用,前者同一個裝置下不同APP共享,後者同一個開發商下不同的APP共享。需要注意的是,使用者是可以透過設定重新整理來不斷更新IDFA的。當然,蘋果這麼做也是為了方便使用者清除個人的歷史痕跡,包含自己的隱私。而在蘋果的新規出臺後,APP在獲取IDFA的值時也需要使用者完成手動確認後才可以。
4.微信小程式,微信小程式可以使用OPEN ID作為使用者的匿名ID。
二、ID mapping
第二步是關聯,根據使用者關聯解決的不同問題,可以將使用者關聯分為3個層次,分別是一對一關聯,一對多關聯和全域關聯。
1.一對一關聯解決的是使用者登入前後的關聯問題,其核心思路是將裝置的匿名ID和使用者的登入ID進行關聯,同時每個裝置ID和登入ID只進行一次成功關聯,也就是說當裝置甲已經和使用者A關聯後,若使用者B在裝置甲上登入並使用,裝置甲不會再和使用者B進行關聯。同樣的,使用者A登入裝置乙時也不會再進行關聯。
2.一對多關聯解決的是使用者登入多個裝置的關聯問題,在一對一的關聯方案下,雖然可以將使用者登入前後的行為打通。但實際上,一個使用者可能在網頁,手機,平板等多個終端使用同一個產品。為了將使用者使用多裝置,多終端的資料打通,一對多的關聯方案應運而生。
一對多的關聯方案核心是一個使用者登入ID可以和多個裝置的匿名ID相關聯。也就是說當用戶分別在裝置甲、乙、丙上登入使用者賬號後,系統會將裝置甲、乙、丙和使用者A關聯成為同一個獨立的使用者實體。從而使得多個終端的行為資料得以打通。在關聯時同樣要注意的是,若裝置乙已經和使用者B關聯過,那麼使用者A再登入裝置乙時不會再進行關聯。即一個使用者可能關聯多個裝置,但一個裝置不會關聯多個使用者。
3.前兩種關聯方式解決的是同一業務系統下的使用者關聯問題。但實際上,一家企業可能在不同時期不同環境下存在多條產品線和業務系統。
這些系統中使用者使用不同ID進行登入,這就引出了使用者關聯的第三個層次,全域關聯。全域關聯的核心是打通不同業務系統中的資料,在關聯邏輯上使用到了圖論中的連通圖概念,可以簡單理解,A和B產生了關聯,B和C產生了關聯,則A、B、C之間兩兩進行了關聯,這種關聯方式與前兩種關聯方式最大的不同是,前兩種方式以登入ID作為唯一樞紐ID,其他ID圍繞登入ID進行關聯,而全域關聯將每個ID都作為聯通的樞紐,最大程度上關聯所有業務系統中的ID。
下圖是一個形象的例子。
在上圖中分別透過Unionid,loginid,Phone將屬於不同系統的各類語義ID進行了關聯。值得注意的是,除了以上關聯外還需要根據業務特性定義唯一的業務ID,定義唯一業務ID的目的是將關聯的各類使用者ID關聯到一個使用者實體上,而在前兩種關聯方式上因為場景較為簡單預設使用了登入id作為業務id進行使用了。
三、需要注意
進行IDmapping的方案設計時,可以根據自身的業務情況選擇合適的ID mapping方案,除此之外還有一些特別需要注意的問題。
1.對歷史事件的影響,ID mapping成功後勢必會導致一些使用者的合併從而使得事件分析的情況出現一定的差異,比如原來由於未關聯而存在的使用者A1和使用者A2關聯成同一個使用者A,這時需要對歷史的事件和使用者屬性進行合併,實時合併在大量查詢時會影響效率,T+1的方式合併時則會對當日查詢精度產生一定影響,選擇哪種方案可視業務需求而定。
2.對使用者屬性的合併影響,在合併使用者屬性時可以根據業務需要選擇多種邏輯覆蓋,如以較早的時間戳為準先到先得,或以較晚的時間戳為準後來居上,再或者對不同id設定優先順序,優先順序較高的id覆蓋優先順序較低的id攜帶的屬性都是可以選擇的合併邏輯。
四、總結
總結一下,ID mapping的意義在於將網際網路中的使用者對映成為一個真實的使用者實體,從而幫助企業完善使用者畫像和進行使用者行為路徑的分析。進行ID mapping時,分為ID 標識和ID關聯兩個步驟,每個步驟根據業務場景的差異各有多種方案可以選擇。
關聯完成並非結束,關聯使用者的目的是為了獲得更為準確的資料幫助企業進行決策,因此對於歷史事件和使用者屬性的合併邏輯同樣不能忽視。
本文由 @Beam 原創釋出於人人都是產品經理。未經許可,禁止轉載。
題圖來自Unsplash,基於CC0協議。