Was wäre besser? memoryn / Zugriff auf data in einer lokalen Textdatei oder in einer database?

Im Grunde arbeite ich immer noch an einer Puzzle-bezogenen Website (wirklich eine Mikrosite), und ich mache ein Werkzeug, mit dem man ein Wortmuster eingeben kann (zB "r ?? n") und alle passenden Wörter bekommt ( in diesem Fall: Regen, Zügel, Ruine, etc.). Sollte ich die Wörter in lokalen Textdateien (wie words5.txt, die eine durch Leerzeichen getrennte list von 5-Buchstaben-Wörtern hätte) oder in einer database (wie die Tabelle Words5, die wieder 5-Buchstaben-Wörter speichern würde) )

Ich betrachte das Problem in Bezug auf die Geschwindigkeit beim dataabruf und die Auslastung des CPU-servers. Ich könnte es definitiv auf beide Arten versuchen und die timeen für mehrere Läufe mit beiden methods aufzeichnen, aber ich würde es lieber von Leuten hören, die Erfahrung damit haben könnten.

Welche Methode ist generell insgesamt besser?

Solutions Collecting From Web of "Was wäre besser? memoryn / Zugriff auf data in einer lokalen Textdatei oder in einer database?"

Für schnelles Retrieval möchten Sie sicherlich eine Art Index. Wenn Sie selbst keinen Indexcode schreiben wollen, ist es sicherlich am einfachsten, eine database zu verwenden.

Wenn Sie Java oder .NET für Ihre App verwenden, sollten Sie in db4o nachsehen . Es speichert nur objecte mit einer einzigen Codezeile und es entstehen keine Setup-Kosten für das Erstellen von Tabellen.

Die database bietet Ihnen die beste performance mit dem geringsten Arbeitsaufwand. Die eingebauten Index-Support und Abfrage-Analysatoren geben Ihnen gute performance kostenlos, während eine Textdatei Ihnen hervorragende performance für eine Tonne Arbeit geben kann.

Kurzfristig würde ich empfehlen, eine generische interface zu erstellen, die den Unterschied zwischen einer database und einer Flat-file verbergen würde. Später können Sie bestimmen, welcher die beste performance liefert, aber ich denke, dass die database Ihnen den besten Knall pro Stunde der Entwicklung geben wird.

memoryn von data in einer lokalen Textdatei (wenn Sie neue datasätze am Ende der file hinzufügen), immer schneller als in der database gespeichert. Wenn Sie also eine Anwendung mit hoher Auslastung erstellen, können Sie die data in einer Textdatei speichern und später data in eine database kopieren. In den meisten Anwendungen sollten Sie jedoch eine database statt einer Textdatei verwenden, da der databaseansatz viele Vorteile bietet.