Implementación rápida de C# de filtros Bloom empacados en una biblioteca estándar de .NET.
Los filtros de Bloom son estructuras de datos probabilísticas con el objetivo de eliminar las entradas de un conjunto de datos en el momento constante. Utilizan múltiples funciones hash para generar posiciones en un mapa de bits, por lo que más adelante, en la fase de verificación, bits distintos de cero que no se encuentran en el mapa de bits eliminan el vector de búsqueda dado. Puede encontrar un ejemplo sobre cómo funcionan aquí.
Para instalar la última versión de paquete Bloomy en su proyecto:
Install-Package Bloomy.Lib
Un caso de uso muy simple es agregar cadenas en un filtro y verificar después:
BasicFilter filter = new BasicFilter ( 50000 , HashFunc . Murmur3 ) ;
filter . Insert ( "dotnet" ) ;
.. .
FilterResult res = filter . Check ( "dotnet" ) ; FilterResult.Presence da:
FilterResult.Probability Siéntase libre de abrir problemas, enviar PRS y usar este LIB y probarlo. Esta sigue siendo una biblioteca de trabajo en progreso, ya que las características nuevas y más robustas están por venir.
MIT