Dateisystem überwachen.
-
Klar, nur muss man bei Datenbanken ab bestimmten Größen auch darauf achten, effizient zu cachen oder die Performance anderweitig zu gewährleisten.
Ich würde das an Deiner Stelle ähnlich lösen wie bei amarok oä, das wäre das praktischste. Also irgendwie einfach die Dateien in bestimmten Verzeichnissen einfach nach Metadaten (zB Interpret, Album, Genre, Erscheinungsjahr etc. bei Musik) sortieren und anzeigen; viel schöner wirst Du das wohl kaum hinbekommen.
Das übers gesamte Dateisystem zu machen wäre aber Wahnsinn; lass den User die Verzeichnisse auswählen, die Dein Programm sortieren soll, ich zB habe praktisch keine Musik außerhalb von /pub/music und meinem Homedirectory.
-
Ganz genau so ist es auch gelöst. Der Benutzer kann auswählen welches Verzeichnis indiziert werden soll.
-
Ok, gut.
Dann sollte der FAM doch reichen, oder?
Und auf Systemen ohne FAM lässt Du bei jedem Neustart den Index checken und ggf. aktualisieren bzw. das auch den User über das GUI selbst machen; damit deckst Du eigentlich die meisten Fälle recht elegant ab.
-
Hmmm ... das ist keine Lösung. Bei jedem Start das Datenmodell zu aktualisieren. Ich hab jetzt schon einen Splashscreen bei Start um die Startzeit zu überbrücken (das Datenmodell wird beim Starten geladen). Wenn ich es noch dazu aktualisieren würde, dann müsste ich schon einen spannenden Spielfilm anbieten damit der Benutzer nicht genervt ist
-
Naja, dann lass das ganze halt nicht in einem einzelnen Prozess laufen sondern im Hintergrund.