Bloom-Filter: Das Geheimnis, SQLite 10-mal schneller zu machen

2024-12-22

Forscher haben Bloom-Filter clever eingesetzt, um analytische Abfragen in SQLite um das Zehnfache zu beschleunigen. Sie stellten fest, dass die verschachtelten Schleifenverbindungen von SQLite ineffizient waren und viel Zeit für B-Baum-Suchvorgänge aufgewendet wurde. Durch die Verwendung eines Bloom-Filters vor der Verbindungsoperation, um schnell Zeilen herauszufiltern, die wahrscheinlich nicht übereinstimmen, und dann nur noch B-Baum-Suchvorgänge für potenzielle Übereinstimmungen durchzuführen, wurde die Anzahl der Suchvorgänge deutlich reduziert. Bloom-Filter haben einen minimalen Speicheraufwand und waren einfach in die bestehende Abfrage-Engine von SQLite zu integrieren, was zu einer signifikanten Leistungssteigerung führte. Diese Verbesserung wurde in SQLite v3.38.0 integriert.

(avi.im)