Qual é a comparação mais recente de arquivos de assinatura e índices invertidos?

7

Trabalhos modernos sobre índices de pesquisa geralmente contêm uma declaração de que índices invertidos (listas de postagem) são categoricamente superiores aos arquivos de assinatura (filtros de bloom). Aqui estão alguns exemplos de artigos publicados em 2016:

Embora essa técnica [arquivo de assinatura] forneça uma sobrecarga computacional relativamente baixa, estudos de Zobel et al. [1998] mostraram que os arquivos invertidos superam significativamente os arquivos de assinatura.

Os índices invertidos têm sido comparados como a estrutura mais generalizável e com melhor desempenho (Zobel et al., 1998)

Todo artigo parece citar Zobel et al., Arquivos invertidos versus arquivos de assinatura para indexação de texto .

No entanto, se estou lendo Zobel et al. corretamente, o argumento que eles formulam não é fundamental (por exemplo, um limite assintótico ou um limite teórico da informação). Em vez disso, o argumento parece ser, dados os arquivos de assinatura implementados com as técnicas X, Y e Z em comparação com os índices invertidos implementados com as técnicas A, B e C e a tecnologia atual do dia (discos com sobrecarga de busca / acesso muito alta ), os índices invertidos são superiores porque exigem menos buscas e são mais rápidos.

Existe uma comparação mais recente que compara essas técnicas em SSD, NVMe ou RAM, ou há uma comparação mais recente que analisa as "novas" técnicas que foram inventadas desde 1998?

dan
fonte

Respostas:

1

Não conhece nenhuma referência nova.

Em cima da minha cabeça:

Arquivos de assinatura requerem verificação de candidato por meio de arquivos encaminhados. Isso requer muitos acessos aleatórios, basicamente um por correspondência potencial. Um acesso aleatório à memória tem mais de 100 ciclos de CPU. Você pode trabalhar bastante em 100 ciclos da CPU (por exemplo, pode descompactar mais de 100 IDs de núcleo único http://boytsov.info/pubs/simdcompressionarxiv.pdf ).

A velocidade de acesso aleatório é ainda pior no caso de HDD ou SSD. De fato, existe uma lacuna crescente entre a velocidade de acesso aleatório e seqüencial.

Antes de fazer esse acesso aleatório, você não pode fazer a poda, o encerramento antecipado, etc ... BTW, para a estrutura de dados recente mais sofisticada, você provavelmente deve verificar os índices Elias-Fano particionados: http://pages.di.unipi.it/ rossano / wp-content / uploads / sites / 7/2015/11 / sigir14.pdf

Leonid Boytsov
fonte