POI數據根據數據源不同,接入數據獲取的信息會有所不同,但無非是基礎數據和詳情數據。
數據接入后處理流程也可以統一為:
數據接入 => 數據標准化 => 數據判重 => 數據融合 => 數據發布 => 持續更新
不同的數據在步驟中操作可能會有所差異,但是基本上都會遵循上述步驟,下面將逐一介紹每個步驟
1. 數據接入:根據數據來源的不同接入方式也是多種多樣,如圖商的數據最為標准,通常為mid/mif的文件提供,此時轉化為流程可處理的數據格式即可;互聯網抓取的數據內容豐富但是遵循的規范多種多樣,此時進行初步判斷是否符合接入的條件以向下流轉;合作方的數據相對標准,但業務側重不同,而通常合作方的數據需要進行反饋數據接入時做好對賬和反饋查詢接口;ugc數據相對較少但是需要給與及時處理和反饋...。不同數據源數據重要性和數量級會所有不同,針對數據較大但是重要性相對較低的數據需要做好數據准入驗證;對數據量少、但是重要的數據要有通用的對賬和反饋機制,這會減少后期業務展開時的工作量。
2. 數據標准化:數據標准化一般包含三部分內容:1)字段對齊,對於某些數據源相同內容字段名稱可能不一致,此時將其轉換為統一的名稱和路徑;計算分類、狀態等字段值補全到數據中;2)數據正確性驗證,例如根據坐標校驗地址的省市區划是否一致,3)剔除部分分類的數據或者觸發黑名單數據,如涉黑涉恐等違法數據類型。標准化的過程不復雜但會隨着接入數據源的增加而變得繁瑣,因此一個健壯的可配置的標准化服務可以使得后續工作事半功倍。
3. 數據判重:數據源接入后如何判斷新接入數據是否與原有的數據重復,也就說新接入的了某個數據源的POI如果當前已經有了這個POI那么應該將新增的POI與原有的POI融合並更新原有的POI信息,如果當前沒有該POI,那么應使用新接入的POI獨立新增一個POI數據到自己的系統。判重流程比較負責,在這里暫不詳述,簡單說是將已有的POI的關鍵信息建立倒排索引,根據新增的POI的信息查詢倒排索引,根據倒排索引返回的POI列表計算相似度,如果有相似度達到閾值的那么判斷為重復。
4. 數據融合:是將不同來源標識相同的POI的數據融合為一條數據,這條數據在各個源中的數據選擇最可靠的基礎數據,和不同業務的詳情數生成一條POI。這條POI可以滿足不同的業務需求。
5. 數據發布:數據發布指數據融合得到的POI數據推送到各個業務方進行線上操作。同數據接入一樣,發布對接多個業務方,根據不同的業務進行數據適配和校驗,一個通用的發布模式是十分必要。
6. 數據更新:數據生成是一個持續交付過程,數據不斷采集和融合,數據也會不斷更新,數據發布的交付也是一個持續的過程。