本申請涉及計(jì)算機(jī),具體而言,涉及一種用戶數(shù)據(jù)處理、查詢方法、裝置、介質(zhì)及設(shè)備。
背景技術(shù):
1、隨著app在日常生活中的核心地位日益凸顯,為了提升app的活躍用戶數(shù)和訪問量,app運(yùn)營者積極構(gòu)建多元化的任務(wù)體系以吸引用戶參與app內(nèi)的活動。這一任務(wù)體系在app中起著舉足輕重的作用,其完善與高效不僅能極大提升用戶的使用效率和滿意度,還能顯著增強(qiáng)用戶體驗(yàn)、支持復(fù)雜功能實(shí)現(xiàn)、促進(jìn)用戶留存和活躍度提升,以及支持?jǐn)?shù)據(jù)分析和優(yōu)化,并提供跨平臺和設(shè)備的無縫同步體驗(yàn)。
2、然而,在龐大用戶基數(shù)和信息繁雜的背景下,用戶參與的活動種類繁多,導(dǎo)致任務(wù)數(shù)據(jù)變得異常復(fù)雜。在任務(wù)完成的過程中對大量數(shù)據(jù)的處理往往難以達(dá)到預(yù)期效果,影響后續(xù)數(shù)據(jù)查詢、用戶響應(yīng)的效率,甚至造成數(shù)據(jù)庫崩潰的問題。
技術(shù)實(shí)現(xiàn)思路
1、針對上述問題,本申請?zhí)峁┮环N用戶數(shù)據(jù)處理、查詢方法、裝置、介質(zhì)及設(shè)備。
2、第一方面,本申請?zhí)峁┮环N用戶數(shù)據(jù)處理方法,所述方法包括:
3、當(dāng)用戶端通過應(yīng)用程序參與任務(wù)時(shí),獲取對應(yīng)的任務(wù)數(shù)據(jù),所述任務(wù)數(shù)據(jù)包括任務(wù)的標(biāo)識以及任務(wù)完成時(shí)間所屬的預(yù)設(shè)時(shí)段;
4、根據(jù)所述任務(wù)數(shù)據(jù),確定數(shù)據(jù)庫中與所述任務(wù)對應(yīng)的過濾工具,其中,所述數(shù)據(jù)庫中部署有過濾工具群組,所述過濾工具群組包括多個(gè)過濾工具,每個(gè)所述過濾工具對應(yīng)所述預(yù)設(shè)時(shí)段內(nèi)的一個(gè)任務(wù);
5、使用所述過濾工具記錄所述用戶端執(zhí)行所述任務(wù)的任務(wù)狀態(tài);其中,所述任務(wù)狀態(tài)用于記錄所述用戶端是否已完成所述任務(wù)。
6、在一種可能的實(shí)現(xiàn)方式中,所述過濾工具為布隆過濾器,所述確定數(shù)據(jù)庫中與所述任務(wù)對應(yīng)的布隆過濾器之前,還包括:
7、獲取所述預(yù)設(shè)時(shí)段對應(yīng)的任務(wù)清單,所述任務(wù)清單包括所述預(yù)設(shè)時(shí)段內(nèi)所述應(yīng)用程序?qū)?yīng)的至少一個(gè)任務(wù),以及每個(gè)所述任務(wù)對應(yīng)的標(biāo)識;
8、根據(jù)所述任務(wù)清單,創(chuàng)建每個(gè)任務(wù)對應(yīng)的布隆過濾器,其中,所述布隆過濾器通過對應(yīng)任務(wù)的標(biāo)識、預(yù)設(shè)時(shí)段進(jìn)行區(qū)分標(biāo)識。
9、在一種可能的實(shí)現(xiàn)方式中,所述根據(jù)所述任務(wù)清單,創(chuàng)建每個(gè)任務(wù)對應(yīng)的布隆過濾器,包括:
10、獲取所述任務(wù)清單中每個(gè)任務(wù)對應(yīng)的用戶數(shù)量;
11、根據(jù)預(yù)設(shè)關(guān)系、目標(biāo)誤判率和所述用戶數(shù)量,獲取每個(gè)任務(wù)對應(yīng)布隆過濾器的存儲容量,所述預(yù)設(shè)關(guān)系用于指示所述目標(biāo)誤判率、用戶數(shù)量,與布隆過濾器的存儲容量的映射關(guān)系,所述目標(biāo)誤判率用于指示布隆過濾器將用戶端未完成任務(wù)判斷為已完成任務(wù)的概率;
12、創(chuàng)建每個(gè)任務(wù)對應(yīng)存儲容量的布隆過濾器。
13、在一種可能的實(shí)現(xiàn)方式中,所述布隆過濾器包括:預(yù)設(shè)大小的數(shù)組以及哈希變換模塊;
14、所述哈希變換模塊,用于根據(jù)用戶端的標(biāo)識進(jìn)行編碼,得到所述用戶端對應(yīng)所述任務(wù)的鍵;根據(jù)所述用戶端對應(yīng)所述任務(wù)的狀態(tài),以及,所述數(shù)組的位數(shù),更新所述數(shù)組中的多個(gè)位對應(yīng)的值,以使所述多個(gè)位進(jìn)行更新得到的值與所述任務(wù)的任務(wù)狀態(tài)對應(yīng)。
15、第二方面,本申請?zhí)峁┮环N用戶數(shù)據(jù)查詢方法,數(shù)據(jù)庫部署有過濾工具群組,所述過濾工具群組包括多個(gè)過濾工具,每個(gè)所述過濾工具對應(yīng)所述預(yù)設(shè)時(shí)段內(nèi)的一個(gè)任務(wù),所述過濾工具用于記錄用戶端執(zhí)行該任務(wù)的任務(wù)狀態(tài);所述方法包括:
16、響應(yīng)于查詢請求,獲取所述查詢請求對應(yīng)的目標(biāo)任務(wù)數(shù)據(jù),所述目標(biāo)任務(wù)數(shù)據(jù)包括任務(wù)的標(biāo)識以及目標(biāo)查詢時(shí)間所屬的預(yù)設(shè)時(shí)段;
17、根據(jù)所述目標(biāo)任務(wù)數(shù)據(jù),確定數(shù)據(jù)庫中與所述任務(wù)對應(yīng)的過濾工具;
18、基于所述過濾工具記錄所述用戶端執(zhí)行所述任務(wù)的任務(wù)狀態(tài),獲取所述查詢請求對應(yīng)的查詢結(jié)果,并返回所述查詢結(jié)果,所述查詢結(jié)果用于指示所述用戶端是否已完成所述任務(wù)。
19、在一種可能的實(shí)現(xiàn)方式中,所述過濾工具為布隆過濾器,所述基于所述過濾工具記錄所述用戶端執(zhí)行所述任務(wù)的任務(wù)狀態(tài),獲取所述查詢請求對應(yīng)的查詢結(jié)果,包括:
20、根據(jù)所述用戶端對應(yīng)所述任務(wù)的鍵,確定所述布隆過濾器的數(shù)組中對應(yīng)的多個(gè)位的值;
21、若所述多個(gè)位的值所對應(yīng)的任務(wù)狀態(tài)顯示已完成,則所述查詢結(jié)果為所述用戶端已完成所述任務(wù);
22、若所述多個(gè)位的值所對應(yīng)的任務(wù)狀態(tài)顯示未完成,則表示所述查詢結(jié)果為所述用戶端未完成所述任務(wù)。
23、第三方面,本申請?zhí)峁┮环N用戶數(shù)據(jù)處理裝置,所述裝置包括:
24、第一獲取模塊,用于當(dāng)用戶端通過應(yīng)用程序參與任務(wù)時(shí),獲取對應(yīng)的任務(wù)數(shù)據(jù),所述任務(wù)數(shù)據(jù)包括任務(wù)的標(biāo)識以及任務(wù)完成時(shí)間所屬的預(yù)設(shè)時(shí)段;
25、第一處理模塊,用于根據(jù)所述任務(wù)數(shù)據(jù),確定數(shù)據(jù)庫中與所述任務(wù)對應(yīng)的過濾工具,其中,所述數(shù)據(jù)庫中部署有過濾工具群組,所述過濾工具群組包括多個(gè)過濾工具,每個(gè)所述過濾工具對應(yīng)所述預(yù)設(shè)時(shí)段內(nèi)的一個(gè)任務(wù);
26、所述第一處理模塊還用于,使用所述過濾工具記錄所述用戶端執(zhí)行所述任務(wù)的任務(wù)狀態(tài);其中,所述任務(wù)狀態(tài)用于記錄所述用戶端是否已完成所述任務(wù)。
27、第四方面,本申請?zhí)峁┮环N用戶數(shù)據(jù)查詢裝置,數(shù)據(jù)庫部署有過濾工具群組,所述過濾工具群組包括多個(gè)過濾工具,每個(gè)所述過濾工具對應(yīng)所述預(yù)設(shè)時(shí)段內(nèi)的一個(gè)任務(wù),所述過濾工具用于記錄用戶端執(zhí)行該任務(wù)的任務(wù)狀態(tài),所述裝置包括:
28、第二獲取模塊,用于響應(yīng)于查詢請求,獲取所述查詢請求對應(yīng)的目標(biāo)任務(wù)數(shù)據(jù),所述目標(biāo)任務(wù)數(shù)據(jù)包括任務(wù)的標(biāo)識以及目標(biāo)查詢時(shí)間所屬的預(yù)設(shè)時(shí)段;
29、第二處理模塊,用于根據(jù)所述任務(wù)數(shù)據(jù),確定數(shù)據(jù)庫中與所述任務(wù)對應(yīng)的過濾工具;
30、所述第二處理模塊還用于,基于所述過濾工具記錄所述用戶端執(zhí)行所述任務(wù)的任務(wù)狀態(tài),獲取所述查詢請求對應(yīng)的查詢結(jié)果,并返回所述查詢結(jié)果,所述查詢結(jié)果用于指示所述用戶端是否已完成所述任務(wù)。
31、第五方面,本申請?zhí)峁┮环N計(jì)算機(jī)可讀的存儲介質(zhì),所述計(jì)算機(jī)可讀的存儲介質(zhì)包括存儲的程序,其中,所述程序運(yùn)行時(shí)執(zhí)行第一方面和/或第二方面中任一項(xiàng)所述的方法。
32、第六方面,本申請?zhí)峁┮环N電子設(shè)備,包括存儲器和處理器,所述存儲器中存儲有計(jì)算機(jī)程序,所述處理器被設(shè)置為通過所述計(jì)算機(jī)程序執(zhí)行第一方面和/或第二方面中任一項(xiàng)所述的方法。
33、本發(fā)明提供用戶數(shù)據(jù)處理、查詢方法、裝置、介質(zhì)及設(shè)備,在數(shù)據(jù)庫中采用以日期和任務(wù)為主鍵的復(fù)數(shù)布隆過濾器來記錄當(dāng)日完成任務(wù)的用戶。當(dāng)用戶端通過應(yīng)用程序參與任務(wù)時(shí),獲取對應(yīng)的任務(wù)數(shù)據(jù),所述任務(wù)數(shù)據(jù)包括任務(wù)的標(biāo)識以及任務(wù)完成時(shí)間所屬的預(yù)設(shè)時(shí)段。根據(jù)所述任務(wù)數(shù)據(jù),確定數(shù)據(jù)庫中與所述任務(wù)對應(yīng)的布隆過濾器,其中,所述數(shù)據(jù)庫中部署有布隆過濾器群組,所述布隆過濾器群組包括多個(gè)布隆過濾器,每個(gè)所述布隆過濾器對應(yīng)所述預(yù)設(shè)時(shí)段內(nèi)的一個(gè)任務(wù)。使用所述布隆過濾器記錄所述用戶端執(zhí)行所述任務(wù)的任務(wù)狀態(tài)。本方法有效節(jié)省了存儲空間,使得海量用戶數(shù)據(jù)得以高效存儲。有效避免了因數(shù)據(jù)量過大而導(dǎo)致的數(shù)據(jù)庫崩潰問題,從而極大地提升了數(shù)據(jù)安全性。
1.一種用戶數(shù)據(jù)處理方法,其特征在于,所述方法包括:
2.根據(jù)權(quán)利要求1所述的用戶數(shù)據(jù)處理方法,其特征在于,所述過濾工具為布隆過濾器,所述確定數(shù)據(jù)庫中與所述任務(wù)對應(yīng)的過濾工具之前,還包括:
3.根據(jù)權(quán)利要求2所述的用戶數(shù)據(jù)處理方法,其特征在于,所述根據(jù)所述任務(wù)清單,創(chuàng)建每個(gè)任務(wù)對應(yīng)的布隆過濾器,包括:
4.根據(jù)權(quán)利要求3所述的用戶數(shù)據(jù)處理方法,其特征在于,所述布隆過濾器包括:預(yù)設(shè)大小的數(shù)組以及哈希變換模塊;
5.一種用戶數(shù)據(jù)查詢方法,其特征在于,數(shù)據(jù)庫部署有過濾工具群組,所述過濾工具群組包括多個(gè)過濾工具,每個(gè)所述過濾工具對應(yīng)預(yù)設(shè)時(shí)段內(nèi)的一個(gè)任務(wù),所述過濾工具用于記錄用戶端執(zhí)行該任務(wù)的任務(wù)狀態(tài);所述方法包括:
6.根據(jù)權(quán)利要求5所述的用戶數(shù)據(jù)查詢方法,其特征在于,所述過濾工具為布隆過濾器,所述基于所述過濾工具記錄所述用戶端執(zhí)行所述任務(wù)的任務(wù)狀態(tài),獲取所述查詢請求對應(yīng)的查詢結(jié)果,包括:
7.一種用戶數(shù)據(jù)處理裝置,其特征在于,所述裝置包括:
8.一種用戶數(shù)據(jù)查詢裝置,其特征在于,數(shù)據(jù)庫部署有過濾工具群組,所述過濾工具群組包括多個(gè)過濾工具,每個(gè)所述過濾工具對應(yīng)預(yù)設(shè)時(shí)段內(nèi)的一個(gè)任務(wù),所述過濾工具用于記錄用戶端執(zhí)行該任務(wù)的任務(wù)狀態(tài),所述裝置包括:
9.一種計(jì)算機(jī)可讀的存儲介質(zhì),其特征在于,所述計(jì)算機(jī)可讀的存儲介質(zhì)包括存儲的程序,其中,所述程序運(yùn)行時(shí)執(zhí)行如權(quán)利要求1至4任意一項(xiàng)所述的用戶數(shù)據(jù)處理方法和/或權(quán)利要求5-6任意一項(xiàng)所述的用戶數(shù)據(jù)查詢方法。
10.一種電子設(shè)備,包括存儲器和處理器,其特征在于,所述存儲器中存儲有計(jì)算機(jī)程序,所述處理器被設(shè)置為通過所述計(jì)算機(jī)程序執(zhí)行如權(quán)利要求1至4任意一項(xiàng)所述的用戶數(shù)據(jù)處理方法和/或權(quán)利要求5-6任意一項(xiàng)所述的用戶數(shù)據(jù)查詢方法。