數據的靈活性


解決數據中的謎題

安娜Mongillo 通過安娜Mongillo2021年10月12日

在Braze,數據是我們工作的核心。幫助品牌實現真正的數據敏捷性對我們來說很重要,這也是我們創建的主要原因電流,我們的實時、基於事件的數據流產品。通過Currents提供用戶行為的細粒度信息(精確到毫秒),品牌商可以探索關鍵指標,如購買時間、每個用戶的會話數、消息頻率和節奏、每個國家的月活躍用戶(MAU)、粘性指標(點擊量、印象等)等。

在Braze,我們知道實時數據對你的品牌是多麼有價值,但我們也知道事情可能會出錯,有時診斷技術問題是多麼困難。解析大數據集中的細微差別就像大海撈針!這就是為什麼,在萬聖節來臨之際,我們整理了這一係列“數據偵探小說”,可能會在您的數據團隊下次排除電流數據故障時對他們有所幫助。這些被破解的案例可以作為解開你自己的一些謎團的線索——或者至少,它們可以為你的分析團隊配備一個手電筒,幫助照亮你數據中令人毛骨悚然的蛛網般的角落。因為夜是黑暗的,充滿了恐怖……

有一天,我們的團隊在檢查與用戶會話相關的信息時,有了一個意想不到的發現。我們注意到,當連接到第一個會話表的數據時,會話開始表的數據丟失了,像這樣:

我們一直假設會話開始表中的每個應用程序旅程都有相應的第一個會話,但顯然情況並非總是如此。經過一些研究,我們確定了這種現象的根本原因:所謂的“孤兒用戶”。

什麼是孤立用戶?當一個匿名用戶(即一個沒有外部ID)被品牌識別,而識別出的問題用戶已經存在於Braze中,匿名用戶就會被合並到已知用戶中,然後“孤立”。當發生這種情況時,一些數據將從孤立的用戶配置文件移動到標識的用戶配置文件。在此過程中,孤立數據將從第一個會話表中刪除,但是過去歸屬於該用戶的所有活動都保留在其他具有原始用戶id的表(讀取:會話開始表)中。

標準的用戶分離過程會合並應用程序組中擁有共享電子郵件地址的所有用戶。要保留的用戶和要合並的用戶按以下邏輯自動確定:

  • 保存在第一個會話表中的用戶將是具有最近會話的標識用戶;集合中的所有其他用戶都將合並到該用戶中。

  • 如果集合中沒有識別出的用戶有任何會話,那麼最近更新的識別出的用戶(例如通過API)將被保留。

  • 如果集合中沒有標識的用戶,那麼擁有最近會話的匿名用戶將是要保留的用戶(同樣,如果集合中沒有用戶有會話,那麼保留的用戶將是最近更新的匿名用戶)。

  • 默認情況下,遷移不會合並已識別的用戶。但是,如果您的團隊願意,可以覆蓋此設置,以便合並已識別的用戶。

因為我們要表演獨家節目內連接由於連接條件中有user_id,從第一個會話表中刪除的孤立用戶導致平台中的會話開始計數與current查詢中的會話開始計數之間存在差異。謎團解開了!

你該如何處理這些信息?幸運的是,我們的分析表明這種現象並不常見;隻有大約1%的用戶成為孤兒。但是,請注意,這種現象可能解釋了當連接會話到相應的第一個會話時,Braze儀表板中的會話計數與Currents中的會話計數之間的一些差異。如果您的會話丟失的百分比特別有問題,請確保您的團隊在識別用戶的方式上沒有技術失誤——例如,使用電子郵件地址作為一些用戶的外部id,而不是其他用戶的。

這一次,我們的數據團隊注意到,與Braze儀表板中的會話開始計數相比,我們在Currents中輸入的原始會話結束計數被低估了。邏輯上,任何給定的會話開始都應該有相應的會話結束,對嗎?好吧,我們再一次發現這並不總是正確的,至少,它並不總是立即正確的。這是因為由於未使用應用程序而發生的會話結束事件,它們通常在下一次會話開始時刷新到服務器。

這意味著什麼呢?本質上講,釺SDK緩存數據(例如會話,自定義事件)並定期上傳數據。隻有在有問題的數據上傳之後,儀表板上的值才會更新。上傳間隔考慮了設備的狀態,並受網絡連接質量的影響:

如果沒有網絡連接,數據會被本地緩存到設備上,直到網絡連接重新建立。當連接重新建立或應用程序重新打開時,數據將被上傳到Braze。

需要一個例子嗎?假設你是一個用戶。你打開應用,它會觸發會話啟動,然後刷新。然後你關閉應用程序,關掉手機,或者退出服務——現在你應該有一個會話結束事件(你結束了會話),但在你打開應用程序並開始下一個會話之前,沒有什麼可以記錄的(應用程序沒有運行/設備關閉/設備沒有網絡訪問)。最後,您重新打開應用程序—幾小時或幾天後—前一個會話的會話結束事件將最終被記錄下來,並使用會話實際結束時的正確時間戳進行追溯。

同樣值得注意的是,會話結束數據的及時性可以由單個品牌控製。Braze客manbetx万博全站客户端戶應該確保在會話打開後直接在SDK集成中有一個requestImmediateDataFlush調用,以防止任何打開會話並立即強製退出應用程序、關閉設備或離線的人延遲收集,而沒有等待會話啟動事件在標準10秒刷新間隔結束時刷新。這種方法將防止會話結束的日誌記錄延遲或根本沒有日誌記錄,從而減少該問題的影響和頻率。

我們的分析表明,總的來說,近99%(98.72%)的會話被統計在所有應用組的會話結束表中。剩下的1-2%似乎由那些沒有在SDK集成中實現即時數據刷新的品牌承擔。

這對你有什麼影響?您的數據團隊可能希望使用會話結束表而不是會話開始表來度量會話活動,以便他們能夠評估平均會話持續時間,這對於會話長度是KPI (流媒體服務,例如)。然而,根據所分析的應用程序組的不同,這種細微差別可能會導致Braze儀表板中顯示的會話數據與您自己的分析之間的差異。

如果您的數據團隊正在使用Currents中的會話結束表來提取會話數據(例如,每周活躍用戶、每個用戶的每日會話數、按國家劃分的會話量等),您可以使用Braze儀表板進行完整性檢查,以確保您的品牌在會話開始和結束數據之間沒有很大的差異。如果你的品牌確實存在這個問題,請使用你的會話開始電流表來提取有問題的數據,並通知團隊會話結束可能沒有得到正確的統計,因為這可能導致會話持續時間等指標不可靠。考慮在給定的會話打開後直接在SDK集成中實現requestImmediateDataFlush調用,以緩解這個問題。

最後,我們來到了最後一個偵探:幻影購買。

什麼是虛假購買?這指的是購買不屬於任何應用的情況(在Currents中的購買表中,應用ID字段為空)。方法在購買對象中app_id是可選的REST API.品牌可以根據自己的意願回填或記錄購買信息,包括貨幣數據。因此,大部分可用的購買活動信息取決於你的品牌所提供的信息。如果你的團隊沒有將應用id與用戶購買信息結合在一起,你便很難有效地分析數據。例如,如果你想使用Currents查看購買時間,就不可能使用連接條件中的應用程序ID將購買數據連接到第一個會話數據。

你如何知道虛假購買是否影響了你的品牌和你的數據團隊正在進行的分析?調查(或讓你的分析部門確定)你在Currents中的購買事件中有多少百分比與任何應用ID無關。我們的估計表明,這個問題影響了電流相當多的購買事件,所以不要認為你的公司沒有檢查免疫。因為它們不屬於我們在Braze服務的任何應用程序,這些購買事件可能是指任何當麵購買、虛假購買、回填數據等。當你的數據團隊在對Currents數據進行分析時,請記住這一點;畢竟,如果你的團隊沒有向Braze提供獲得全麵情況所需的信息,那麼購買時間或購買可能性等參數可能更像是一個代理。

最終的想法

使用電流當涉及到支持你的品牌的短期和長期營銷策略時,更細粒度地獲取你的數據可以是一個重要的幫助。雖然高級的分析能力總是值得努力,但如果你不能理解所提供數據的細微差別,那麼這一切都是徒勞的。重要的是,你要花時間去理解你的數據,這樣就不會有怪物跳出來嚇到你。

有興趣了解更多關於Currents以及它如何幫助支持您的客戶參與計劃嗎?查看我們的獨家報道概述深入了解洋流的一切。


安娜Mongillo

安娜Mongillo

安娜是Braze紐約總部的商業智能分析師。她同時還是美食家、詩人、奧斯汀·特expat和音樂愛好者。

相關內容

流數據

用數據獨立性控製你的命運

閱讀更多

英國品牌為逐步淘汰第三方餅幹做好準備

閱讀更多

為什麼現代營銷人員需要數據驅動

閱讀更多

營銷自動化

沒有流數據真的是營銷自動化嗎?

閱讀更多