Datenbank Problem und Neuinstallations-Gedanken

Es gab zwar schon mal Fragen deswegen, aber 2 Jahre alt und auch irgendwie ungeklärt…

Ich hab das Problem daß im Mairlist-Browser die erste, aber nur die erste, Datenbank-Suche den ganzen Laden für ca. 30sec einfrieren läßt. Musik spielt zwar, aber der Mauszeiger verschwindet sobald er auf ein Fenster “fährt” was zu Mairlist gehört (Desk, Cart, DB), die die gesamte grafische Darstellung (Uhren, Fortschrittsbalken usw) steht still. Nach erwähnten ca. 30sec zeigt der Browser aber die Suchergebnisse, alles läuft wieder normal und alle weiteren Suchanfragen funktionieren ohne Einfrieren normal zügig.
Woran kann das liegen? Hat übrigens noch ein anderer Kollege in unserm “Verein”.
ICH persönlich schiebs im Falle meines eigenen Senderechners
a) auf die langsame Festplattenanbindung (IDE, obwohl die Platte selbst SATA ist, aber der Board-Chipsatz kann den Sata-Üport nur im IDE-Modus betreiben, weil es keinen Sata-Treiber gibt)
b) auf die Größe der Datenbank-Datei (aktuell knapp 900MB für geschätzte 25000 Items). Wahrscheinlich is die deswegen so groß weil ich die Cover mitspeichere. Gut, damit muß man wohl leben wenn man die Cover-Spielerei machen will.
c) darauf, daß Mairlist die DB beim ersten Ansprechen in eine Art Cache lädt und das dauert halt bei der Größe. Is nur ne Vermutung.

ABER: Vielleicht gibts ja noch ne andere Ursache, zumal der erwähnte Kollege keine Cover speichert.

Zumindest Punkt a) wird dieses WE angepackt: Senderechner bekommt ein anderes Board, andere CPU, SATA-Ports, SSD fürs System + DB und Windows 7 statt XP :slight_smile: Aber wenns ich schon neu baue dann gleich richtig… macht es Sinn, von MairlistDB auf zB PostgreSQL umzustellen? Zumal ich was Mairlist betrifft keinerlei Netzwerk-Ambitionen habe.

Volltextsuche über 25.000 Datensätze bedeutet halt, dass die Datenbank alle diese Datensätze erstmal durchgehen muss, um die passenden Ergebnisse zu finden. Mich wundert es nicht, dass das so lange dauert, zumal ja die 900 MB erstmal auf der Platte gelesen werden müssen.

Bei der zweiten und folgenden Abfrage sind dann vielleicht schon benötigte Daten im RAM? Ich weiß nicht, wie intelligent SQLite da ist…

Das Problem mit den Coverbildern war damals, dass die in derselben Tabelle wie die Stammdaten abgelegt wurden, dadurch wurde die Tabelle speicherplatzmäßig sehr groß, und ein Durchlauf dauerte entsprechend lange. Seit die Cover in einer gesonderten Tabelle liegen, sollte es schneller gehen.

Welche Programmversion hast du denn im Einsatz?

In mAirList 5 ist es ja nicht mehr notwendig, die Cover extra in die DB zu importieren, wenn man sie nur in der Playlist anzeigen will. Das geht jetzt auch “on the fly”.

[quote=“Torben, post:2, topic:9502”]Volltextsuche über 25.000 Datensätze bedeutet halt, dass die Datenbank alle diese Datensätze erstmal durchgehen muss, um die passenden Ergebnisse zu finden. Mich wundert es nicht, dass das so lange dauert, zumal ja die 900 MB erstmal auf der Platte gelesen werden müssen.

Bei der zweiten und folgenden Abfrage sind dann vielleicht schon benötigte Daten im RAM? Ich weiß nicht, wie intelligent SQLite da ist…

Das Problem mit den Coverbildern war damals, dass die in derselben Tabelle wie die Stammdaten abgelegt wurden, dadurch wurde die Tabelle speicherplatzmäßig sehr groß, und ein Durchlauf dauerte entsprechend lange. Seit die Cover in einer gesonderten Tabelle liegen, sollte es schneller gehen.

Welche Programmversion hast du denn im Einsatz?

In mAirList 5 ist es ja nicht mehr notwendig, die Cover extra in die DB zu importieren, wenn man sie nur in der Playlist anzeigen will. Das geht jetzt auch “on the fly”.[/quote]Seit welcher Version liegen denn die Bilder in einer extra Tabelle?

Ich hab derzeit noch 4.3 am laufen (Build weiß ich jetzt nicht) nachdem ein Update auf 4.4 schiefgegangen und ein Image Rückspielen notwendig war. Bei der Neuinstallation des Rechners an diesem WE soll es dann 4.4 werden.
Mit der 5er hab ich mich noch garnicht beschäftigt und bin mir auch nicht sicher ob ich die derzeit haben will sprich ob die MIR genug bietet daß sich das Geld sofort rechnet. Vielleicht mach ich mir mal ne Demo drauf zum probieren.

Bleibt die Frage ob PostGre oder MairlistDB…

Die Home-Version unterstützt nur die lokale Datenbank (SQLite), das PostgreSQL-Backend kannst du nicht verwenden.

Die getrennte icons-Tabelle ist schon seit Version 4.1.2 (Datenbankschema 19) drin.

[quote=“Torben, post:4, topic:9502”]Die Home-Version unterstützt nur die lokale Datenbank (SQLite), das PostgreSQL-Backend kannst du nicht verwenden.

Die getrennte icons-Tabelle ist schon seit Version 4.1.2 (Datenbankschema 19) drin.[/quote]Ok dann bleibts halt bei MairlistDB, is ist ja auch ok.
Seit 4.1.2 … dann hab ich das ja auch mit der getrennten Tabelle. Ich hab grad mal nachgesehen… incl. OnAirDesign und allem anderen Gedöns ist die aktuell höchste ID in der Datenbank 30548 , und diese Mairlist43lokal.db is aktuell 899.654kB groß