目录
一、环境准备
机器性配置: 4H8G
JDK 1.8
二、测试流程:
1、制造测试数据
造了350个用户标签,用户userId约25亿,从以下几个角度验证计算性能
┌─ln───────────────────┬─lv───────────┬───────uv─┐
│ 测试 │ 测试1 │ 0 │
│ 手机型号 │ vivo │ 95 │
│ 手机型号 │ 华为 │ 95 │
│ 手机型号 │ oppo │ 95 │
│ 手机型号 │ 小米 │ 95 │
│ 手机型号 │ 三星 │ 96 │
│ App活跃用户 │ 最近14天 │ 96 │
│ App活跃用户 │ 最近21天 │ 97 │
│ 性别 │ 女 │ 97 │
│ 性别 │ 男 │ 97 │
│ 手机型号 │ 苹果 │ 98 │
│ App活跃用户 │ 最近7天 │ 98 │
│ App活跃用户 │ 最近30天 │ 99 │
│ general │ 女 │ 50001 │
│ 标签43 │ 标签43_值_2 │ 951315 │
│ 标签26 │ 标签26_值_3 │ 951336 │
│ 标签1 │ 标签1_值_1 │ 951366 │
│ 标签75 │ 标签75_值_2 │ 951380 │
│ 标签15 │ 标签15_值_3 │ 951431 │
│ 标签38 │ 标签38_值_4 │ 951464 │
│ 标签49 │ 标签49_值_4 │ 951514 │
│ 标签52 │ 标签52_值_0 │ 951520 │
│ 标签41 │ 标签41_值_4 │ 951537 │
│ 标签75 │ 标签75_值_1 │ 951541 │
│ 标签1 │ 标签1_值_0 │ 951563 │
│ 标签15 │ 标签15_值_0 │ 951586 │
│ 标签38 │ 标签38_值_3 │ 951643 │
│ 标签26 │ 标签26_值_4 │ 951655 │
│ 标签52 │ 标签52_值_2 │ 951679 │
│ 标签52 │ 标签52_值_1 │ 951683 │
│ 标签58 │ 标签58_值_0 │ 951706 │
│ 标签49 │ 标签49_值_2 │ 951715 │
│ 标签15 │ 标签15_值_1 │ 951728 │
│ 标签58 │ 标签58_值_1 │ 951732 │
│ 标签49 │ 标签49_值_3 │ 951749 │
│ 标签85 │ 标签85_值_0 │ 951808 │
│ 标签1 │ 标签1_值_2 │ 951852 │
│ 标签15 │ 标签15_值_2 │ 951890 │
│ 标签75 │ 标签75_值_0 │ 951968 │
│ 标签1 │ 标签1_值_3 │ 952119 │
│ 关注用户数 │ 10-20 │ 999454 │
│ 是否App新用户 │ 是 │ 999484 │
│ 增值服务累计购买金额 │ 40000+ │ 999486 │
│ App近30天活跃次数 │ 30+ │ 999489 │
│ 是否主题域新用户 │ 是 │ 999501 │
│ 是否平台新用户 │ 否 │ 999514 │
│ App最近一次登录方式 │ facebook │ 999518 │
│ 是否平台新用户 │ 是 │ 1009499 │
│ 标签40 │ 标签40_值_2 │ 1811765 │
│ 标签40 │ 标签40_值_4 │ 1812093 │
│ 标签50 │ 标签50_值_4 │ 1812324 │
│ 标签40 │ 标签40_值_3 │ 1812394 │
│ 标签29 │ 标签29_值_3 │ 1812398 │
│ 标签98 │ 标签98_值_3 │ 1812582 │
│ 标签6 │ 标签6_值_1 │ 1812627 │
│ 标签99 │ 标签99_值_0 │ 1812634 │
│ 标签98 │ 标签98_值_0 │ 1812640 │
│ 标签50 │ 标签50_值_2 │ 1812787 │
│ 标签99 │ 标签99_值_1 │ 1812788 │
│ 标签98 │ 标签98_值_1 │ 1812931 │
│ 标签50 │ 标签50_值_3 │ 1813014 │
│ 标签98 │ 标签98_值_2 │ 1813072 │
│ 标签50 │ 标签50_值_1 │ 1813104 │
│ 标签40 │ 标签40_值_1 │ 1813203 │
│ 标签29 │ 标签29_值_4 │ 1813473 │
│ 关注用户数 │ 20-30 │ 1998033 │
│ 标签12 │ 标签12_值_2 │ 2591211 │
│ 标签70 │ 标签70_值_0 │ 2591456 │
│ 标签12 │ 标签12_值_1 │ 2591534 │
│ 标签28 │ 标签28_值_1 │ 2591633 │
│ 标签90 │ 标签90_值_0 │ 2591701 │
│ 标签70 │ 标签70_值_4 │ 2591792 │
│ 标签70 │ 标签70_值_3 │ 2591894 │
│ 标签28 │ 标签28_值_2 │ 2592043 │
│ 标签28 │ 标签28_值_0 │ 2592173 │
│ 标签90 │ 标签90_值_1 │ 2592211 │
│ 标签70 │ 标签70_值_1 │ 2592255 │
│ 标签70 │ 标签70_值_2 │ 2592352 │
│ 是否主题域新用户 │ 否 │ 2995466 │
│ App近30天活跃次数 │ 10-30 │ 2995518 │
│ App最近一次登录方式 │ 支付宝 │ 2995549 │
│ 标签54 │ 标签54_值_1 │ 3295754 │
│ 标签54 │ 标签54_值_3 │ 3295841 │
│ 标签23 │ 标签23_值_3 │ 3296201 │
│ 标签34 │ 标签34_值_4 │ 3296336 │
│ 标签23 │ 标签23_值_4 │ 3296479 │
│ 标签88 │ 标签88_值_1 │ 3296536 │
│ 标签54 │ 标签54_值_0 │ 3296708 │
│ 标签88 │ 标签88_值_0 │ 3296836 │
│ 标签89 │ 标签89_值_0 │ 3296876 │
│ 标签54 │ 标签54_值_4 │ 3297087 │
│ 标签67 │ 标签67_值_0 │ 3297099 │
│ 标签54 │ 标签54_值_2 │ 3297338 │
│ 标签29 │ 标签29_值_1 │ 3932805 │
│ 标签16 │ 标签16_值_1 │ 3933676 │
│ 标签62 │ 标签62_值_3 │ 3934138 │
│ 标签29 │ 标签29_值_0 │ 3934328 │
│ 标签16 │ 标签16_值_2 │ 3934415 │
│ 标签16 │ 标签16_值_0 │ 3934639 │
│ 标签16 │ 标签16_值_3 │ 3934645 │
│ 标签29 │ 标签29_值_2 │ 3934690 │
│ 标签73 │ 标签73_值_1 │ 3934745 │
│ 标签7 │ 标签7_值_3 │ 3935026 │
│ 标签77 │ 标签77_值_1 │ 3935087 │
│ 标签7 │ 标签7_值_2 │ 3935111 │
│ 标签16 │ 标签16_值_4 │ 3935256 │
│ 标签73 │ 标签73_值_2 │ 3935290 │
│ 标签62 │ 标签62_值_4 │ 3935373 │
│ 标签62 │ 标签62_值_2 │ 3935432 │
│ 标签7 │ 标签7_值_1 │ 3935468 │
│ 标签3 │ 标签3_值_2 │ 3935581 │
│ 标签77 │ 标签77_值_0 │ 3935598 │
│ 标签7 │ 标签7_值_4 │ 3935729 │
│ 标签62 │ 标签62_值_1 │ 3935775 │
│ 标签73 │ 标签73_值_0 │ 3936045 │
│ 标签62 │ 标签62_值_0 │ 3936604 │
│ 标签76 │ 标签76_值_0 │ 4510139 │
│ 标签34 │ 标签34_值_2 │ 4510609 │
│ 标签34 │ 标签34_值_3 │ 4511120 │
│ 标签40 │ 标签40_值_0 │ 4511250 │
│ 标签76 │ 标签76_值_2 │ 4511375 │
│ 标签34 │ 标签34_值_1 │ 4511553 │
│ 标签78 │ 标签78_值_2 │ 4511762 │
│ 标签60 │ 标签60_值_0 │ 4511779 │
│ 标签78 │ 标签78_值_1 │ 4511868 │
│ 标签94 │ 标签94_值_0 │ 4512033 │
│ 标签50 │ 标签50_值_0 │ 4512034 │
│ 标签2 │ 标签2_值_2 │ 4512157 │
│ 标签60 │ 标签60_值_2 │ 4512822 │
│ 标签60 │ 标签60_值_1 │ 4512927 │
│ 标签76 │ 标签76_值_1 │ 4512969 │
│ 标签34 │ 标签34_值_0 │ 4513043 │
│ 标签78 │ 标签78_值_0 │ 4513182 │
│ 关注用户数 │ 50-100 │ 4987442 │
│ 增值服务累计购买金额 │ 10000-20000 │ 4987683 │
│ 标签3 │ 标签3_值_0 │ 5033584 │
│ 标签79 │ 标签79_值_0 │ 5033935 │
│ 标签79 │ 标签79_值_1 │ 5034129 │
│ 标签56 │ 标签56_值_0 │ 5034160 │
│ 标签43 │ 标签43_值_0 │ 5034545 │
│ 标签3 │ 标签3_值_1 │ 5035575 │
│ 标签43 │ 标签43_值_1 │ 5035667 │
│ 标签19 │ 标签19_值_3 │ 5504183 │
│ 标签66 │ 标签66_值_1 │ 5504592 │
│ 标签41 │ 标签41_值_1 │ 5505238 │
│ 标签6 │ 标签6_值_0 │ 5505445 │
│ 标签20 │ 标签20_值_4 │ 5505520 │
│ 标签96 │ 标签96_值_0 │ 5505640 │
│ 标签93 │ 标签93_值_2 │ 5505684 │
│ 标签41 │ 标签41_值_0 │ 5505695 │
│ 标签100 │ 标签100_值_0 │ 5505771 │
│ 标签93 │ 标签93_值_1 │ 5505826 │
│ 标签41 │ 标签41_值_2 │ 5505966 │
│ 标签19 │ 标签19_值_2 │ 5506111 │
│ 标签65 │ 标签65_值_3 │ 5506291 │
│ 标签19 │ 标签19_值_1 │ 5506379 │
│ 标签65 │ 标签65_值_1 │ 5506398 │
│ 标签20 │ 标签20_值_2 │ 5506429 │
│ 标签65 │ 标签65_值_0 │ 5506474 │
│ 标签19 │ 标签19_值_0 │ 5506480 │
│ 标签65 │ 标签65_值_2 │ 5506487 │
│ 标签45 │ 标签45_值_0 │ 5506562 │
│ 标签22 │ 标签22_值_4 │ 5506661 │
│ 标签12 │ 标签12_值_0 │ 5506717 │
│ 标签93 │ 标签93_值_0 │ 5506726 │
│ 标签20 │ 标签20_值_3 │ 5506841 │
│ 标签66 │ 标签66_值_0 │ 5506957 │
│ 标签41 │ 标签41_值_3 │ 5506972 │
│ 标签0 │ 标签0_值_3 │ 5507417 │
│ 标签66 │ 标签66_值_2 │ 5508076 │
│ 标签91 │ 标签91_值_0 │ 5508122 │
│ 标签64 │ 标签64_值_0 │ 5932408 │
│ 标签57 │ 标签57_值_1 │ 5932684 │
│ 标签21 │ 标签21_值_0 │ 5933347 │
│ 标签72 │ 标签72_值_2 │ 5933560 │
│ 标签37 │ 标签37_值_0 │ 5933628 │
│ 标签44 │ 标签44_值_1 │ 5933805 │
│ 标签37 │ 标签37_值_3 │ 5933883 │
│ 标签81 │ 标签81_值_0 │ 5933983 │
│ 标签72 │ 标签72_值_1 │ 5934065 │
│ 标签37 │ 标签37_值_2 │ 5934378 │
│ 标签35 │ 标签35_值_1 │ 5934969 │
│ 标签57 │ 标签57_值_2 │ 5935053 │
│ 标签57 │ 标签57_值_0 │ 5935169 │
│ 标签25 │ 标签25_值_2 │ 5935205 │
│ 标签37 │ 标签37_值_1 │ 5935512 │
│ 标签72 │ 标签72_值_0 │ 5936261 │
│ 是否App新用户 │ 否 │ 5982165 │
│ App最近一次登录方式 │ 微信 │ 5982244 │
│ 标签26 │ 标签26_值_1 │ 6319836 │
│ 标签55 │ 标签55_值_3 │ 6319970 │
│ 标签68 │ 标签68_值_0 │ 6320005 │
│ 标签11 │ 标签11_值_1 │ 6320686 │
│ 标签53 │ 标签53_值_0 │ 6320810 │
│ 标签27 │ 标签27_值_2 │ 6321102 │
│ 标签55 │ 标签55_值_0 │ 6321259 │
│ 标签11 │ 标签11_值_2 │ 6321286 │
│ 标签55 │ 标签55_值_4 │ 6321301 │
│ 标签55 │ 标签55_值_1 │ 6321443 │
│ 标签26 │ 标签26_值_2 │ 6321673 │
│ 标签55 │ 标签55_值_2 │ 6321783 │
│ 标签68 │ 标签68_值_2 │ 6321973 │
│ 标签68 │ 标签68_值_3 │ 6322051 │
│ 标签53 │ 标签53_值_1 │ 6322300 │
│ 标签26 │ 标签26_值_0 │ 6322500 │
│ 标签11 │ 标签11_值_3 │ 6322583 │
│ 标签68 │ 标签68_值_1 │ 6322606 │
│ 标签13 │ 标签13_值_1 │ 6322617 │
│ 标签27 │ 标签27_值_3 │ 6322635 │
│ 标签13 │ 标签13_值_2 │ 6323719 │
│ 标签18 │ 标签18_值_3 │ 6668910 │
│ 标签61 │ 标签61_值_3 │ 6669141 │
│ 标签71 │ 标签71_值_1 │ 6669566 │
│ 标签71 │ 标签71_值_4 │ 6669837 │
│ 标签36 │ 标签36_值_4 │ 6670184 │
│ 标签71 │ 标签71_值_2 │ 6670205 │
│ 标签51 │ 标签51_值_1 │ 6670455 │
│ 标签51 │ 标签51_值_2 │ 6670553 │
│ 标签63 │ 标签63_值_0 │ 6670558 │
│ 标签39 │ 标签39_值_1 │ 6670559 │
│ 标签61 │ 标签61_值_1 │ 6670617 │
│ 标签71 │ 标签71_值_3 │ 6670886 │
│ 标签71 │ 标签71_值_0 │ 6671048 │
│ 标签61 │ 标签61_值_0 │ 6671053 │
│ 标签61 │ 标签61_值_2 │ 6671096 │
│ 标签51 │ 标签51_值_0 │ 6671134 │
│ 标签39 │ 标签39_值_2 │ 6671171 │
│ 标签25 │ 标签25_值_0 │ 6671211 │
│ 标签36 │ 标签36_值_2 │ 6671420 │
│ 标签24 │ 标签24_值_1 │ 6671455 │
│ 标签39 │ 标签39_值_3 │ 6671739 │
│ 标签63 │ 标签63_值_1 │ 6672251 │
│ 标签51 │ 标签51_值_3 │ 6672283 │
│ 标签18 │ 标签18_值_1 │ 6672348 │
│ 标签36 │ 标签36_值_3 │ 6672351 │
│ 标签14 │ 标签14_值_3 │ 6672394 │
│ 标签14 │ 标签14_值_4 │ 6672534 │
│ 标签69 │ 标签69_值_0 │ 6672582 │
│ 标签25 │ 标签25_值_1 │ 6672855 │
│ 标签18 │ 标签18_值_2 │ 6673508 │
│ 标签44 │ 标签44_值_0 │ 6986260 │
│ 标签92 │ 标签92_值_4 │ 6986685 │
│ 标签97 │ 标签97_值_2 │ 6986693 │
│ 标签46 │ 标签46_值_1 │ 6986888 │
│ 标签97 │ 标签97_值_0 │ 6986926 │
│ 标签84 │ 标签84_值_0 │ 6987399 │
│ 标签46 │ 标签46_值_2 │ 6987738 │
│ 标签32 │ 标签32_值_3 │ 6987976 │
│ 标签46 │ 标签46_值_3 │ 6987987 │
│ 标签33 │ 标签33_值_1 │ 6988094 │
│ 标签35 │ 标签35_值_0 │ 6988197 │
│ 标签92 │ 标签92_值_3 │ 6988307 │
│ 标签33 │ 标签33_值_3 │ 6988587 │
│ 标签84 │ 标签84_值_1 │ 6988740 │
│ 标签92 │ 标签92_值_1 │ 6988798 │
│ 标签92 │ 标签92_值_0 │ 6989206 │
│ 标签92 │ 标签92_值_2 │ 6989241 │
│ 标签33 │ 标签33_值_2 │ 6989877 │
│ 标签97 │ 标签97_值_1 │ 6990093 │
│ 标签9 │ 标签9_值_3 │ 7271764 │
│ 标签20 │ 标签20_值_1 │ 7272235 │
│ 标签86 │ 标签86_值_2 │ 7273686 │
│ 标签33 │ 标签33_值_0 │ 7274311 │
│ 标签86 │ 标签86_值_1 │ 7274387 │
│ 标签9 │ 标签9_值_2 │ 7274706 │
│ 标签86 │ 标签86_值_3 │ 7275016 │
│ 标签20 │ 标签20_值_0 │ 7275094 │
│ 标签17 │ 标签17_值_3 │ 7275347 │
│ 标签14 │ 标签14_值_0 │ 7275401 │
│ 标签86 │ 标签86_值_0 │ 7275586 │
│ 标签14 │ 标签14_值_1 │ 7275754 │
│ 标签14 │ 标签14_值_2 │ 7275985 │
│ 标签4 │ 标签4_值_2 │ 7531801 │
│ 标签4 │ 标签4_值_3 │ 7532631 │
│ 标签83 │ 标签83_值_2 │ 7532975 │
│ 标签95 │ 标签95_值_4 │ 7532976 │
│ 标签95 │ 标签95_值_0 │ 7533004 │
│ 标签31 │ 标签31_值_2 │ 7533095 │
│ 标签31 │ 标签31_值_3 │ 7533190 │
│ 标签2 │ 标签2_值_1 │ 7533198 │
│ 标签32 │ 标签32_值_0 │ 7533507 │
│ 标签83 │ 标签83_值_1 │ 7533682 │
│ 标签95 │ 标签95_值_2 │ 7533754 │
│ 标签83 │ 标签83_值_3 │ 7533804 │
│ 标签32 │ 标签32_值_1 │ 7533832 │
│ 标签83 │ 标签83_值_0 │ 7534057 │
│ 标签32 │ 标签32_值_2 │ 7534206 │
│ 标签31 │ 标签31_值_1 │ 7534342 │
│ 标签2 │ 标签2_值_0 │ 7534495 │
│ 标签95 │ 标签95_值_1 │ 7534534 │
│ 标签4 │ 标签4_值_4 │ 7534603 │
│ 标签95 │ 标签95_值_3 │ 7535808 │
│ 标签24 │ 标签24_值_0 │ 7766166 │
│ 标签38 │ 标签38_值_1 │ 7767207 │
│ 标签49 │ 标签49_值_0 │ 7768793 │
│ 标签38 │ 标签38_值_0 │ 7768945 │
│ 标签27 │ 标签27_值_1 │ 7769214 │
│ 标签38 │ 标签38_值_2 │ 7769496 │
│ 标签27 │ 标签27_值_0 │ 7769937 │
│ 标签49 │ 标签49_值_1 │ 7769940 │
│ 标签10 │ 标签10_值_1 │ 7981655 │
│ 标签10 │ 标签10_值_0 │ 7982108 │
│ 标签31 │ 标签31_值_0 │ 7983049 │
│ 标签23 │ 标签23_值_2 │ 8171981 │
│ 标签23 │ 标签23_值_0 │ 8172315 │
│ 标签30 │ 标签30_值_2 │ 8172344 │
│ 标签30 │ 标签30_值_1 │ 8172909 │
│ 标签23 │ 标签23_值_1 │ 8172937 │
│ 标签30 │ 标签30_值_0 │ 8173664 │
│ 标签39 │ 标签39_值_0 │ 8347293 │
│ 标签7 │ 标签7_值_0 │ 8347458 │
│ 标签11 │ 标签11_值_0 │ 8502903 │
│ 标签0 │ 标签0_值_1 │ 8504110 │
│ 标签36 │ 标签36_值_0 │ 8504268 │
│ 标签36 │ 标签36_值_1 │ 8504818 │
│ 标签0 │ 标签0_值_2 │ 8504995 │
│ 标签0 │ 标签0_值_0 │ 8647376 │
│ 标签22 │ 标签22_值_2 │ 8774495 │
│ 标签22 │ 标签22_值_3 │ 8774561 │
│ 标签22 │ 标签22_值_1 │ 8775315 │
│ 标签5 │ 标签5_值_0 │ 8775485 │
│ 标签22 │ 标签22_值_0 │ 8775601 │
│ 标签13 │ 标签13_值_0 │ 8892275 │
│ 标签47 │ 标签47_值_1 │ 8892614 │
│ 标签47 │ 标签47_值_0 │ 8892784 │
│ 标签46 │ 标签46_值_0 │ 8996840 │
│ 标签8 │ 标签8_值_0 │ 8997086 │
│ 标签8 │ 标签8_值_1 │ 8997282 │
│ 标签8 │ 标签8_值_3 │ 8998373 │
│ 标签48 │ 标签48_值_0 │ 8998499 │
│ 标签8 │ 标签8_值_2 │ 8998811 │
│ 标签42 │ 标签42_值_0 │ 9177970 │
│ 标签18 │ 标签18_值_0 │ 9179148 │
│ 标签9 │ 标签9_值_0 │ 9257161 │
│ 标签9 │ 标签9_值_1 │ 9257583 │
│ 标签4 │ 标签4_值_1 │ 9257709 │
│ 标签4 │ 标签4_值_0 │ 9257710 │
│ 标签17 │ 标签17_值_2 │ 9327228 │
│ 标签17 │ 标签17_值_0 │ 9328032 │
│ 标签17 │ 标签17_值_1 │ 9328159 │
│ App近30天活跃次数 │ 1-10 │ 9950176 │
│ 增值服务累计购买金额 │ 1-10000 │ 11928418 │
│ App最近一次登录方式 │ app │ 19801974 │
└──────────────────────┴──────────────┴──────────┘
343 rows in set. Elapsed: 3.596 sec.
2、测试维度
从以下角度查询测试的问题
- 查询标签预估人数
- 查询标签有多少人
- 人群圈选交集人数预估
- 人群圈选交集用户计算
- 查询单个用户标签画像
三、测试结果
1、查询标签预估人数
select lv, bitmapCardinality(groupBitmapMergeState(uv))as uv from user_profile_bitmap where ln='标签17' group by lv order by uv
┌─lv──────────┬──────uv─┐
│ 标签17_值_3 │ 7275347 │
│ 标签17_值_2 │ 9327228 │
│ 标签17_值_0 │ 9328032 │
│ 标签17_值_1 │ 9328159 │
└─────────────┴─────────┘
4 rows in set. Elapsed: 0.111 sec.
select lv, bitmapCardinality(groupBitmapMergeState(uv))as uv from user_profile_bitmap where ln='标签10' group by lv order by uv;
SELECT
lv,
bitmapCardinality(groupBitmapMergeState(uv)) AS uv
FROM user_profile_bitmap
WHERE ln = '标签10'
GROUP BY lv
ORDER BY uv ASC
┌─lv──────────┬──────uv─┐
│ 标签10_值_1 │ 7981655 │
│ 标签10_值_0 │ 7982108 │
└─────────────┴─────────┘
2 rows in set. Elapsed: 0.065 sec.
select lv, bitmapCardinality(groupBitmapMergeState(uv))as uv from user_profile_bitmap where ln='标签15' group by lv order by uv;
┌─lv──────────┬─────uv─┐
│ 标签15_值_3 │ 951431 │
│ 标签15_值_0 │ 951586 │
│ 标签15_值_1 │ 951728 │
│ 标签15_值_2 │ 951890 │
└─────────────┴────────┘
4 rows in set. Elapsed: 0.097 sec.
查询时间毫秒级别不到0.01秒。
2、查询标签所有的userId
select bitmapToArray(groupBitmapMergeState(uv))as uv from user_profile_bitmap where ln='是否平台新用户' and lv = '是';
查询100w用户userId返回
1 rows in set. Elapsed: 2.104 sec.
select ln,lv,bitmapCardinality(groupBitmapMergeState(uv))as uv from user_profile_bitmap where ln='标签10' and lv = '标签10_值_1' group by lv,ln order by uv;
┌─ln─────┬─lv──────────┬──────uv─┐
│ 标签10 │ 标签10_值_1 │ 7981655 │
└────────┴─────────────┴─────────┘
1 rows in set. Elapsed: 0.048 sec.
select bitmapToArray(groupBitmapMergeState(uv))as uv from user_profile_bitmap where ln='标签10' and lv = '标签10_值_1' ;
1 rows in set. Elapsed: 10.254 sec.
800W userID查询时间为10S
select bitmapToArray(groupBitmapMergeState(uv))as uv from user_profile_bitmap where ln='增值服务累计购买金额' and lv = '1-10000' ;
1 rows in set. Elapsed: 18.171 sec.
1200W 用户 返回时间为18S
计算都很快,主要在用户信息返回上,总共查询时间基本也是秒级别返回
3、人群圈选交集人数预估
elect bitmapAndCardinality(bu1,bu2) as uv from
:-] (select 1 as jid, groupBitmapMergeState(uv) as bu1 from user_profile_bitmap where ln='标签76' ) as t1
:-] inner join
:-] (select 1 as jid, groupBitmapMergeState(uv) as bu2 from user_profile_bitmap where ln='标签99' ) as t2 on t1.jid=t2.jid;
┌──────uv─┐
│ 2752166 │
└─────────┘
1 rows in set. Elapsed: 0.231 sec.
select bitmapAndCardinality(bu1,bu2) as uv from
:-] (select 1 as jid, groupBitmapMergeState(uv) as bu1 from user_profile_bitmap where ln='标签2' ) as t1
:-] inner join
:-] (select 1 as jid, groupBitmapMergeState(uv) as bu2 from user_profile_bitmap where ln='标签86' ) as t2 on t1.jid=t2.jid ;
┌──────uv─┐
│ 9520457 │
└─────────┘
1 rows in set. Elapsed: 0.155 sec.
基本上运算也是毫秒级别返回数据。
4、人群圈选交集用户计算
select arrayJoin( bitmapToArray((
bitmapAnd(
(select groupBitmapMergeState(uv) from user_profile_bitmap where ln='标签2' ),
(select groupBitmapMergeState(uv) from user_profile_bitmap where ln='标签86')
)) ))as uv;
9613586 rows in set. Elapsed: 5.374 sec.
select arrayJoin( bitmapToArray((
bitmapAnd(
(select groupBitmapMergeState(uv) from user_profile_bitmap where ln='标签76' ),
(select groupBitmapMergeState(uv) from user_profile_bitmap where ln='标签99')
)) ))as uv;
2752166 rows in set. Elapsed: 1.656 sec.
select arrayJoin( bitmapToArray((
bitmapAnd(
(select groupBitmapMergeState(uv) from user_profile_bitmap where ln='标签76' ),
(select bitmapAnd(
(select groupBitmapMergeState(uv) from user_profile_bitmap where ln='标签2' ),
(select groupBitmapMergeState(uv) from user_profile_bitmap where ln='标签86')))
)) ))as uv;
三个标签求交集
8024874 rows in set. Elapsed: 5.352 sec.
select arrayJoin( bitmapToArray((
bitmapAnd(
(select bitmapAnd(
(select groupBitmapMergeState(uv) from user_profile_bitmap where ln='标签20' ),
(select groupBitmapMergeState(uv) from user_profile_bitmap where ln='标签8'))) ,
(select bitmapAnd(
(select groupBitmapMergeState(uv) from user_profile_bitmap where ln='标签2' ),
(select groupBitmapMergeState(uv) from user_profile_bitmap where ln='标签77')))
)) ))as uv;
6069626 rows in set. Elapsed: 3.950 sec.
查询性能基本也是秒级返回
计算都很快,主要在用户信息返回上,总共查询时间基本也是秒级别返回
5、查询单个用户标签画像
select ln,lv from user_profile_bitmap where bitmapContains(uv,toUInt32(9999957))=1 group by ln,lv;
┌─ln─────┬─lv──────────┐
│ 标签62 │ 标签62_值_2 │
│ 标签93 │ 标签93_值_1 │
│ 标签77 │ 标签77_值_0 │
│ 标签17 │ 标签17_值_1 │
│ 标签97 │ 标签97_值_1 │
│ 标签34 │ 标签34_值_4 │
│ 标签66 │ 标签66_值_2 │
│ 标签43 │ 标签43_值_0 │
│ 标签23 │ 标签23_值_1 │
│ 标签47 │ 标签47_值_0 │
│ 标签8 │ 标签8_值_3 │
│ 标签32 │ 标签32_值_3 │
│ 标签27 │ 标签27_值_0 │
│ 标签8 │ 标签8_值_2 │
│ 标签47 │ 标签47_值_1 │
│ 标签32 │ 标签32_值_2 │
│ 标签36 │ 标签36_值_2 │
│ 标签23 │ 标签23_值_0 │
│ 标签43 │ 标签43_值_1 │
│ 标签13 │ 标签13_值_0 │
│ 标签97 │ 标签97_值_0 │
│ 标签54 │ 标签54_值_4 │
│ 标签62 │ 标签62_值_3 │
│ 标签86 │ 标签86_值_2 │
│ 标签17 │ 标签17_值_0 │
│ 标签17 │ 标签17_值_2 │
│ 标签62 │ 标签62_值_1 │
│ 标签5 │ 标签5_值_0 │
│ 标签8 │ 标签8_值_0 │
│ 标签23 │ 标签23_值_2 │
│ 标签71 │ 标签71_值_4 │
│ 标签36 │ 标签36_值_0 │
│ 标签43 │ 标签43_值_2 │
│ 标签36 │ 标签36_值_1 │
│ 标签95 │ 标签95_值_4 │
│ 标签56 │ 标签56_值_0 │
│ 标签32 │ 标签32_值_1 │
│ 标签27 │ 标签27_值_3 │
│ 标签8 │ 标签8_值_1 │
│ 标签86 │ 标签86_值_1 │
│ 标签66 │ 标签66_值_0 │
│ 标签71 │ 标签71_值_1 │
│ 标签18 │ 标签18_值_1 │
│ 标签78 │ 标签78_值_0 │
│ 标签0 │ 标签0_值_2 │
│ 标签28 │ 标签28_值_1 │
│ 标签48 │ 标签48_值_0 │
│ 标签39 │ 标签39_值_3 │
│ 标签25 │ 标签25_值_0 │
│ 标签30 │ 标签30_值_2 │
│ 标签39 │ 标签39_值_2 │
│ 标签45 │ 标签45_值_0 │
│ 标签95 │ 标签95_值_1 │
│ 标签0 │ 标签0_值_3 │
│ 标签71 │ 标签71_值_0 │
│ 标签18 │ 标签18_值_0 │
│ 标签18 │ 标签18_值_2 │
│ 标签0 │ 标签0_值_1 │
│ 标签23 │ 标签23_值_4 │
│ 标签71 │ 标签71_值_2 │
│ 标签89 │ 标签89_值_0 │
│ 标签11 │ 标签11_值_3 │
│ 标签84 │ 标签84_值_1 │
│ 标签60 │ 标签60_值_0 │
│ 标签50 │ 标签50_值_0 │
│ 标签39 │ 标签39_值_0 │
│ 标签54 │ 标签54_值_0 │
│ 标签34 │ 标签34_值_0 │
│ 标签6 │ 标签6_值_0 │
│ 标签30 │ 标签30_值_0 │
│ 标签25 │ 标签25_值_2 │
│ 标签15 │ 标签15_值_2 │
│ 标签84 │ 标签84_值_0 │
│ 标签0 │ 标签0_值_0 │
│ 标签18 │ 标签18_值_3 │
│ 标签11 │ 标签11_值_2 │
│ 标签95 │ 标签95_值_2 │
│ 标签71 │ 标签71_值_3 │
│ 标签22 │ 标签22_值_2 │
│ 标签26 │ 标签26_值_2 │
│ 标签2 │ 标签2_值_0 │
│ 标签33 │ 标签33_值_0 │
│ 标签9 │ 标签9_值_0 │
│ 标签4 │ 标签4_值_0 │
│ 标签12 │ 标签12_值_2 │
│ 标签83 │ 标签83_值_0 │
│ 标签20 │ 标签20_值_4 │
│ 标签4 │ 标签4_值_1 │
│ 标签63 │ 标签63_值_0 │
│ 标签9 │ 标签9_值_1 │
│ 标签46 │ 标签46_值_2 │
│ 标签33 │ 标签33_值_1 │
│ 标签53 │ 标签53_值_0 │
│ 标签2 │ 标签2_值_1 │
│ 标签57 │ 标签57_值_0 │
│ 标签22 │ 标签22_值_3 │
│ 标签46 │ 标签46_值_0 │
│ 标签26 │ 标签26_值_1 │
│ 标签42 │ 标签42_值_0 │
│ 标签22 │ 标签22_值_1 │
│ 标签57 │ 标签57_值_2 │
│ 标签83 │ 标签83_值_3 │
│ 标签72 │ 标签72_值_0 │
│ 标签76 │ 标签76_值_0 │
│ 标签92 │ 标签92_值_1 │
│ 标签9 │ 标签9_值_3 │
│ 标签4 │ 标签4_值_3 │
│ 标签76 │ 标签76_值_1 │
│ 标签12 │ 标签12_值_0 │
│ 标签72 │ 标签72_值_1 │
│ 标签22 │ 标签22_值_0 │
│ 标签33 │ 标签33_值_2 │
│ 标签2 │ 标签2_值_2 │
│ 标签46 │ 标签46_值_1 │
│ 标签55 │ 标签55_值_0 │
│ 标签29 │ 标签29_值_2 │
│ 标签92 │ 标签92_值_4 │
│ 标签16 │ 标签16_值_4 │
│ 标签31 │ 标签31_值_1 │
│ 标签61 │ 标签61_值_0 │
│ 标签68 │ 标签68_值_1 │
│ 标签7 │ 标签7_值_1 │
│ 标签65 │ 标签65_值_0 │
│ 标签22 │ 标签22_值_4 │
│ 标签7 │ 标签7_值_0 │
│ 标签70 │ 标签70_值_3 │
│ 标签65 │ 标签65_值_1 │
│ 标签81 │ 标签81_值_0 │
│ 标签61 │ 标签61_值_1 │
│ 标签14 │ 标签14_值_2 │
│ 标签31 │ 标签31_值_0 │
│ 标签51 │ 标签51_值_1 │
│ 标签35 │ 标签35_值_0 │
│ 标签55 │ 标签55_值_1 │
│ 标签1 │ 标签1_值_0 │
│ 标签40 │ 标签40_值_3 │
│ 标签51 │ 标签51_值_3 │
│ 标签31 │ 标签31_值_2 │
│ 标签38 │ 标签38_值_3 │
│ 标签24 │ 标签24_值_0 │
│ 标签20 │ 标签20_值_0 │
│ 标签55 │ 标签55_值_3 │
│ 标签29 │ 标签29_值_1 │
│ 标签49 │ 标签49_值_0 │
│ 标签65 │ 标签65_值_3 │
│ 标签79 │ 标签79_值_0 │
│ 标签90 │ 标签90_值_0 │
│ 标签14 │ 标签14_值_0 │
│ 标签68 │ 标签68_值_2 │
│ 标签14 │ 标签14_值_1 │
│ 标签61 │ 标签61_值_2 │
│ 标签79 │ 标签79_值_1 │
│ 标签65 │ 标签65_值_2 │
│ 标签7 │ 标签7_值_3 │
│ 标签10 │ 标签10_值_1 │
│ 标签70 │ 标签70_值_0 │
│ 标签49 │ 标签49_值_1 │
│ 标签55 │ 标签55_值_2 │
│ 标签31 │ 标签31_值_3 │
│ 标签4 │ 标签4_值_4 │
│ 标签24 │ 标签24_值_1 │
│ 标签38 │ 标签38_值_2 │
└────────┴─────────────┘
162 rows in set. Elapsed: 1.204 sec.
select ln,lv from user_profile_bitmap where bitmapContains(uv,toUInt32(9976957))=1 group by ln,lv;
171 rows in set. Elapsed: 0.871 sec.
20亿数据350个标签中查询单个用户画像基本1s左右
整体来看,25亿用户ID查询性能基本都在秒级返回,用CK存储用户画像查询性能可以说很优秀!