聚合數(shù)據(jù)分析cardinality算法值優(yōu)化內存開銷以及HLL算法

cardinality呈枉,count(distinct)哲泊,5%的錯誤率,性能在100ms左右

1舷夺、precision_threshold優(yōu)化準確率和內存開銷

GET /tvs/sales/_search
{
    "size" : 0,
    "aggs" : {
        "distinct_brand" : {
            "cardinality" : {
              "field" : "brand",
              "precision_threshold" : 100 
            }
        }
    }
}

brand去重苦酱,如果brand的unique value,在100個以內冕房,小米躏啰,長虹趁矾,三星耙册,TCL,HTL毫捣。详拙。。

在多少個unique value以內蔓同,cardinality饶辙,幾乎保證100%準確
cardinality算法,會占用precision_threshold * 8 byte 內存消耗斑粱,100 * 8 = 800個字節(jié)
占用內存很小弃揽。。。而且unique value如果的確在值以內矿微,那么可以確保100%準確
100痕慢,數(shù)百萬的unique value,錯誤率在5%以內

precision_threshold涌矢,值設置的越大掖举,占用內存越大,1000 * 8 = 8000 / 1000 = 8KB娜庇,可以確保更多unique value的場景下塔次,100%的準確

field,去重名秀,count励负,這時候,unique value匕得,10000熄守,precision_threshold=10000,10000 * 8 = 80000個byte耗跛,80KB

2裕照、HyperLogLog++ (HLL)算法性能優(yōu)化

cardinality底層算法:HLL算法,HLL算法的性能

會對所有的uqniue value取hash值调塌,通過hash值近似去求distcint count晋南,誤差

默認情況下,發(fā)送一個cardinality請求的時候羔砾,會動態(tài)地對所有的field value负间,取hash值; 將取hash值的操作,前移到建立索引的時候

PUT /tvs/
{
  "mappings": {
    "sales": {
      "properties": {
        "brand": {
          "type": "text",
          "fields": {
            "hash": {
              "type": "murmur3" 
            }
          }
        }
      }
    }
  }
}
GET /tvs/sales/_search
{
    "size" : 0,
    "aggs" : {
        "distinct_brand" : {
            "cardinality" : {
              "field" : "brand.hash",
              "precision_threshold" : 100 
            }
        }
    }
}
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末姜凄,一起剝皮案震驚了整個濱河市政溃,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌态秧,老刑警劉巖董虱,帶你破解...
    沈念sama閱讀 211,042評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異申鱼,居然都是意外死亡愤诱,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評論 2 384
  • 文/潘曉璐 我一進店門捐友,熙熙樓的掌柜王于貴愁眉苦臉地迎上來淫半,“玉大人,你說我怎么就攤上這事匣砖】瓶裕” “怎么了昏滴?”我有些...
    開封第一講書人閱讀 156,674評論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長对人。 經(jīng)常有香客問我影涉,道長,這世上最難降的妖魔是什么规伐? 我笑而不...
    開封第一講書人閱讀 56,340評論 1 283
  • 正文 為了忘掉前任蟹倾,我火速辦了婚禮,結果婚禮上猖闪,老公的妹妹穿的比我還像新娘鲜棠。我一直安慰自己,他們只是感情好培慌,可當我...
    茶點故事閱讀 65,404評論 5 384
  • 文/花漫 我一把揭開白布豁陆。 她就那樣靜靜地躺著,像睡著了一般吵护。 火紅的嫁衣襯著肌膚如雪盒音。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,749評論 1 289
  • 那天馅而,我揣著相機與錄音祥诽,去河邊找鬼。 笑死瓮恭,一個胖子當著我的面吹牛雄坪,可吹牛的內容都是我干的。 我是一名探鬼主播屯蹦,決...
    沈念sama閱讀 38,902評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼维哈,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了登澜?” 一聲冷哼從身側響起阔挠,我...
    開封第一講書人閱讀 37,662評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎脑蠕,沒想到半個月后购撼,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,110評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡空郊,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年份招,在試婚紗的時候發(fā)現(xiàn)自己被綠了切揭。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片狞甚。...
    茶點故事閱讀 38,577評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖廓旬,靈堂內的尸體忽然破棺而出哼审,到底是詐尸還是另有隱情谐腰,我是刑警寧澤,帶...
    沈念sama閱讀 34,258評論 4 328
  • 正文 年R本政府宣布涩盾,位于F島的核電站十气,受9級特大地震影響,放射性物質發(fā)生泄漏春霍。R本人自食惡果不足惜砸西,卻給世界環(huán)境...
    茶點故事閱讀 39,848評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望址儒。 院中可真熱鬧芹枷,春花似錦、人聲如沸莲趣。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽喧伞。三九已至走芋,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間潘鲫,已是汗流浹背翁逞。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留溉仑,地道東北人熄攘。 一個月前我還...
    沈念sama閱讀 46,271評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像彼念,于是被迫代替她去往敵國和親挪圾。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,452評論 2 348

推薦閱讀更多精彩內容

  • 信息聚合系列之近似聚合 摘要 如果所有的數(shù)據(jù)都在一臺機器上逐沙,那么生活會容易許多哲思,CS201 課商教的經(jīng)典算法就足夠...
    達微閱讀 438評論 0 1
  • pyspark.sql模塊 模塊上下文 Spark SQL和DataFrames的重要類: pyspark.sql...
    mpro閱讀 9,448評論 0 13
  • 教你如何迅速秒殺掉:99%的海量數(shù)據(jù)處理面試題 本文經(jīng)過大量細致的優(yōu)化后,收錄于我的新書《編程之法》第六章中吩案,新書...
    Helen_Cat閱讀 7,407評論 1 39
  • Redis的內存優(yōu)化 聲明:本文內容來自《Redis開發(fā)與運維》一書第八章棚赔,如轉載請聲明。 Redis所有的數(shù)據(jù)都...
    meng_philip123閱讀 18,879評論 2 29
  • 1.影帝 ——漫漫何其多 高甜徘郭,放心入坑靠益,最喜歡的耽美小說,沒有之一残揉! 老流氓影帝攻X小癡漢鮮肉受 甜度:++++...
    BeginAgain_6e00閱讀 32,702評論 0 6