Upgrade to Pro — share decks privately, control downloads, hide ads and more …

GO e Sketch Data Structures

GO e Sketch Data Structures

Apresentação no TDC 2020 São Paulo - ebook: https://github.com/gleicon/ebook-go-sketch

Gleicon Moraes

August 27, 2020
Tweet

More Decks by Gleicon Moraes

Other Decks in Programming

Transcript

  1. pen4education Trilha – Go Diversão com Go e Estruturas de

    dados probabilísticas Gleicon Moraes VP Engenharia Gympass github.com/gleicon
  2. pen4education Estruturas probabiliasdhjasd ?!? • Estruturas de dados probabilisticas •

    Sketch Data Structures (Sketch -> Rascunho) • Trocas entre espaço/precisão/velocidade
  3. pen4education Estruturas probabiliasdhjasd ?!? • Estruturas de dados probabilisticas •

    Sketch Data Structures (Sketch -> Rascunho) • Trocas entre espaço/precisão/velocidade
  4. pen4education Nazaré https://github.com/gleicon/nazare • Protocolo Redis • Command Line •

    Banco de dados local com snapshot • Concorrencia • Não tem muita certeza das coisas :(
  5. pen4education Bloom Filter/Cuckoo Filter • BitSet (buckets) • Hash Functions

    • Remoção • Espaço • Não tem muita certeza das coisas :(
  6. pen4education Bloom Filter/Cuckoo Filter Tipo Velocidade no pior dos casos

    Storage (guarda todos os valores) Falso Positivo Falso Negativo Delete ? Map (dict) Numero de elementos Sim Não Não Sim Bloom Tamanho do BitSet Hash Function Sim Não Não Cuckoo Tamanho do BitSet Hash Function Sim Não Sim
  7. pen4education HyperLogLog Count HLL Erro 10 10 0.0000% 50 50

    0.0000% 250 250 0.0000% 1250 1250 0.0000% 6250 6250 0.0000% 31250 31253 0.0096% 156250 155914 0.2150% 781250 778300 0.3776% 3906250 3874441 0.8143% 10000000 9969753 0.3025% HLL total size: 32776 Map total size: 10000000 (em bytes)