Weil wir ein "pensch"-Feature *) benötigen.
Warum macht ihr dann nicht einen Index, bei dem jedes Wort Buchstabenweise vorne verkürt wird? Beispiel: Lampenschirm im Index gäbe die Einträge Lampenschirm, ampenschirm, mpenschirm, penschirm, enschirm, nschirm, schirm, chirm, hirm, irm (ich würde bei drei Buchstaben aufhören). Dadurch kann die Datenbank trotzdem noch den Baum-Index nutzen und du bekommst deine O(ld n)-Ordnung.
Die Idee hatte ich auch (und ist auch nicht verworfen bisher), aber das ist ein zeitliches Problem. Selbst mit sehr starken Rechnern dauert das Stunden, um das aufzubauen. Und leider muß das regelmäßig gemacht werden.
Das stimmt, ja. Wenn das regelmäßig neu gemacht werden muss, würde ich zwei Datenbanken machen: eine Datenbank, wo dieser Index aufgebaut wird und eine Datenbank, die gerade "Live" ist. Ist die aufzubauende Datenbank fertig, wird geswitcht.
Alternativ kann man diese Indizes auch inkrementell aufbauen, wenn die alten Datenbestände nicht oder nur kaum ändern. Also immer nur das neue einfügen. Aber dazu müsste man jetzt mehr wissen über die genaueren Umstände.