Beitrag von Mark (8 Beiträge) am Donnerstag, 21.Juni.2001, 13:31.
Volltextsuche
Hallo allerseits,
habe da eine Frage zur Volltextsuche.
Ich habe schon im Forum recherchiert, ob es eine Möglichkeit gibt, eine Volltextsuche über ein oder mehrere Felder zu schalten. Mit den Ergebnissen bin ich aber nicht weiter gekommen.
Das Problem besteht darin, dass bei meiner Suche über die von mir erstellten Felder immer nur das erste Wort gefunden wird, was ja nicht gerade rosig ist.
Ich habe eine Linkliste erstellt, in der ich ziemlich genaue Auskunft über jeden link gebe. Schön wäre es, wenn ich eine Suche über den gesamten Beschreibungstext / Beschreibungs-Feld laufen lassen könnte.
Wäre nett, wenn mir da jemand weiterhelfen könnte, oder falls es einen verständlichen Beitrag schon im Forum gibt, mir diesen zu nennen.
In diesem Sinne...
"des Leba isch koi Picknick"
Mark
Antworten
Beitrag von anonym (129 Beiträge) am Donnerstag, 21.Juni.2001, 17:45.
Re: Volltextsuche
Bisher unterstützt Baseportal keine Volltextsuche. Bei größeren Datenbanken wird dadurch die Geschwindigkeit sehr reduziert, wenn ohne Indizierung gesucht wird, da ja auf jeden Buchstaben, wenn auch nur am Wortanfang, zugegriffen werden muss, eingerechnet die Suche nach den Wortanfängen.
Ausweg aus diesem Dilemma schaffen Such- und Sortieralgorythmen, die Index-Tabellen erstellen und verwalten. Dazu wird nach jedem neuen Eintrag die Index-Tabelle erweitert. Ein gutes Verfahren ist der logaryhtmische Suchbaum, allerdings wird die Suchdatenbank (der Baum) u.U. sehr gross.
Wenn man Einträge nur ab Wortanfang und nur mit einer begrenzten Stellenanzahl zulässt, müsste man mal ausrechnen, wieviel Platz so ein Baum braucht.
Antworten
Beitrag von Mark (8 Beiträge) am Freitag, 22.Juni.2001, 12:34.
Re: Volltextsuche
Hallo Titus,
vielen Dank für den Tip. Schade, habe in dem Forum etwas über eine Betaversion gelesen, meinst Du, dass diese Betaversion die Volltextsuche unterstützen könnte?
Habe da noch eine Frage zu dem logarythmischen Suchbaum:
Gibt es diesen schon als Vorlage in der Bibliothek, oder muß man den selbst basteln?
Viele Grüße
Mark
"In München steht ein Hofbräuhaus..."
Antworten
Beitrag von anonym (129 Beiträge) am Freitag, 22.Juni.2001, 17:22.
Re: Volltextsuche
Keine Ahnung, ob Volltextsuche in der Betaversion vorgesehen ist, habe ich noch nichts von gehört.
Der Suchbaum ist nützlich, wenn die Datenmenge groß
ist oder werden soll und bei großen Texten. Dazu ist m.E. noch kein Kode da. Ein Verfahren, was ich mir gut vorstellen kann, ist, ungefähr nur die ersten 4 Buchstaben von Worten im Suchbaum anzulegen.
Dann könnte man noch einen Filter davorsetzen, der häufige Wortpartikel wie "und, so, wie, er, das, die, ein" herausfiltert, um die durchschnittliche Zugriffszeit zu verringern.
Sucht man z.B. unter "das ist ein Test", so wird nach der Filterung nur nach "Test" gesucht.
Beispiel:
"Destilliertes Wasser"
"dest"
"wass"
nun ist klar, dass hinter beiden Wortbestandteilen der gleichen Zeiger (auf Datensatz, eventuell auf Suchstelle) stehen muss, wenn diese im Datensatz stehen. Die Treffergenaugikeit ist relativ gut und wird gezielter, umso mehr Wörter eingegeben werden. Das heisst, man braucht für dieses Verfahren den Speicherplatz für die 4-Byte-Wortschlüssel und zusätzlich ca. 4 Byte (Long-Integer) x jedes Wort, ausgenommen der gefilterten Worte. Dadurch wird der insgesamte Speicherplatz vielleicht auf 1/3 mehr aufgebläht, außerdem ist der Eintrag in den Suchbaum schnell und belastet nicht den Server.
Mit würde mal interessieren, was Christoph von dem Thema hält.
Ciao
Antworten
Beitrag von Christoph Bergmann (8110 Beiträge) am Freitag, 22.Juni.2001, 20:15.
Re: Volltextsuche
Jups, in der nächsten Version wirds wohl eine Volltextsuche geben. Mehr dazu hier:
http://seite.net/bphp/newfeatures.html
Tja, allerdings ist es tatsächlich noch nich ganz klar, welche Technik nun am Besten dafür verwendet werden sollte... Es existiert zwar schon (ziemlich lange sogar ;-) ) etwas ähnliches wie von Dir beschrieben, allerdings fehlts da noch an etwas Feinschliff und Fehler sind auch noch drin. Ist in der Umsetzung doch ganz schön kompliziert. Beispiel warum: Für jeden Eintrag der neu aufgenommen wird, muss ja der Text in Wörter aufgeteilt und dann in die Wort-Index-Datei geschrieben werden. So, nun gibt es aber die Möglichkeit dass ein Eintrag zurückgewiesen wird, weil ein Feld ungültig ist (z.b. das EMail-Feld enthält kein @=) - dann müssen die Wörter dort wieder raus, bzw. dürfen erst garnicht rein. Naja ist nur ein Beispiel, es ist im Detail schon ganz schön knifflig...
Viiieeel leichter ist das durchsuchen mittels einer "regex" oder per "index(..."-Befehl. Bei Datenbanken < z.B. 100 KB ist das auch schnell genug...
Antworten
Beitrag von Mark (8 Beiträge) am Montag, 25.Juni.2001, 10:49.
Re: Volltextsuche
Hi Christoph,
danke für den nützlichen Hinweis auf die "Beta-Seiten".
Werde versuchen mich da mal "durchzukämpfen".
In dem Beta-Forum sind ja auch noch ein paar Einträge zur Volltextsuche, irgendwie klappt das bestimmt.
Grüßle
Mark
Antworten
Beitrag von ron (2 Beiträge) am Freitag, 22.Juni.2001, 12:26. WWW: webindex4you.de
Re: Volltextsuche
Ich habe sowas. Kannst ja meine Seite mal angucken.Wenn das das Richtige ist was du suchst schick mir mal deine E-Mail Adresse ich schick dir dann den Code zu.
Antworten
Beitrag von Mark (8 Beiträge) am Freitag, 22.Juni.2001, 12:53.
Re: Volltextsuche
Hi Ron,
habe mir gerade Deine Seite angeschaut, gefällt mir übrigens sehr gut!
Die Suchfunktion scheint genau das Richtige zu sein.
Besonders gut gefällt mir die Kombination zwischen Volltext und Kategoriensuche.
Würde mich sehr freuen, wenn Du mir den Code schicken würdest.
Viele Grüße & Danke
Mark
"I'm just a teenage dirtbag baby..."
Antworten