SQLite 3.8.0 unterstützt partielle Indizes, bringt einen verbesserten Next Generation Query Planner mit sowie eine “notindexed”-Option für das virtuelle Volltext-Tabellenmodul FTS4.
Partielle Indexe erlauben es, nur bestimmte Teile einer Tabelle zu indexieren und ermöglicht in großen Tabellen so einen schnelleren Zugriff auf bestimmte Daten. Dabei wird an das Statement “CREATE INDEX” ein “WHERE”-Teil gehängt, der die zu indizierende Untergruppe bestimmt. Das ist jedoch nur eines der neuen Features, die SQLite 3.8.0 im Gepäck hat.
Der Next Generation Query Planner (NGQP) soll insbesondere beim Zugriff auf große Datenmengen aus einer Vielzahl an Möglichkeiten den effizientesten Algorithmus ermitteln. Das ist eine Wissenschaft für sich, doch der neue Planner von SQLite 3.8.0 ist nach Aussage des Projekts besser und schneller und löst zum Beispiel das Problem des 8-Wege-Join von TPC-H Q8 deutlich eleganter über die “N Nearest Neighbors” (N3) Heuristic.
Spezielle Tabellen mit integrierter Volltext-Indexierung erlauben es, Text wesentlich schneller zu durchforsten, als wenn man den Text in einer klassischen Tabelle ablegen würde. Die virtuellen Tabellenmodule FTS3 und FTS4 (für Full-text Search) leisten genau das. FTS4 erlaubt es nun, für Tabellen bestimmte Spalten zu definieren, welche die Volltextsuche nicht indexieren soll, was den Prozess beschleunigen dürfte.
Das sind längst nicht alle Neuerungen von SQLite. Eine detaillierte Liste der Änderungen findet man im Release-Log, den Quelltext im Download-Bereich.




