Frage

Ich bin die Erstellung und app, die sich auf eine Datenbank, und ich habe alle Absicht auf mit einem flat-file db, gibt es keine ernsthaften Gründe zu bleiben Weg von diesem?

Ich bin mit der mimesis (http://mimesis.110mb.com) es ist einfacher als die Verwendung von mySQL, die ich muss zugeben, ich habe wenig Erfahrung mit.Ich wundere mich über die Sicherheit der db.aber die Dateien gespeichert sind, wie php und es scheint eine solide Lösung.

Ich mag die einfache Sicherung und den Transport der Datenbanken, die ich gefunden habe, die härter und mit mySQL.Ich sehe, dass jeder scheint zu bevorzugen, die die mySQL-Weg - und es ist wahrscheinlich schneller, wenn es um Abfragen, aber anders als das gibt es einen Grund zu bleiben Weg von flat-file-dbs und (endlich) richtig zu lernen von mysql ?


Bearbeiten Nur Leute wissen zu lassen, Ich landete mit mySQL und verwende das CodeIgniter-framework.Immer noch, wie das flat-file db, hab jetzt aber gemerkt, dass es viel komplizierter für dieses Projekt als notwendig.

War es hilfreich?

Lösung

Die Antwort ist „Fine“, wenn Sie nur eine Flat-File-Struktur benötigen. Ein Test: Wäre eine einzige einfache Tabelle alle Anforderungen umgehen? Wenn nicht, müssen Sie eine relationale Struktur, nicht eine flache Datei.

Wenn Sie nicht sicher sind, können Sie vielleicht Flat-Datei starten. SQLite ist eine großartige App für den Einstieg.

Es ist nicht gut zu lernen, die falsche Wahl getroffen, wenn Sie es heraus zu weit entlang in dem Prozess. Aber wenn man die Bedeutung einer relationalen Struktur verstehen und upsize früh, wenn nötig, dann sind Sie in Ordnung.

Andere Tipps

Verwenden Sie SQLite , erhalten Sie eine Datenbank mit vielen SQL-Funktionen und doch ist es nur eine einzige Datei.

Grüße, ich bin der Schöpfer der Mimesis.Relationale Datenbanken und SQL sind wichtig in Situationen, in denen Sie riesige Mengen an Daten verarbeitet werden muss.Sind flache Dateien überlegen gegenüber Datenbanken?Gut, Sie könnte Fragen Sie Google als Ihre gesamte Archivierung-system arbeitet mit flachen Dateien und die beliebteste Suchmaschine auf der Erde.Tut Mimesis vergleichen, um Ihr system?Wahrscheinlich nicht.

Mimesis wurde erstellt, um zu lösen eine bestimmte Nische problem.Ich benutze nur Kostenlose websites für meine online-Bemühungen.Viele Websites bieten Kostenlose die Möglichkeit zur Verwendung von PHP.Jedoch, Sie nicht bieten Kostenlose SQL-Datenbank-Zugriff.Daher musste ich eine Datenbank erstellen, speichern von Daten, die Implementierung von Sperrungen und um Datei-Berechtigungen.Diese waren die wichtigsten design-Parameter der Mimesis, und es gelingt auf allen von denen.

Wenn Sie eine Idee der Mimesis ist die Geschwindigkeit, wenn Sie navigieren Sie zur ersten Seite es wird Ihnen sagen, welche Land Sie sind, die Anzeige der Website aus.Diese Kostenlose Datenbank werden von der Website genommen ip2nation.com und portiert in einer Mimesis ffdb.Es hat Hunderte, wenn nicht Tausende von Einträgen.

Ferner, der Zugriffszähler auf der Hauptseite bereits verfolgten über 7000 Besucher.Diese sind EINZIGARTIG besucht, was bedeutet, dass das Skript hat um die Datenbank zu durchsuchen, um zu sehen, wenn die IP-Adresse, der Besuch bereits vorhanden ist, und führt auch eine Zählung der Gesamt-IPs.

Wenn Sie bemerkt haben die Hauptseite lädt sich ziemlich schnell, und es hat zwei ziemlich intensive Mimesis Datenbank-Skripte laufen auf das backend.Die Art und Weise der Mimesis speichert Daten erfolgt zu beschleunigen Lesen und schreiben von Prozeduren und auch die übersetzung Verfahren.Die meisten ffdb Beispiel Skripte oder andere ffdb-Skripte gibt, verwenden Sie einen einfachen CVS-Datei oder einem anderen eine solche Struktur für die Speicherung von Daten.Mimesis tatsächlich interpretiert werden binäre Daten auf einigen Ebenen zu erweitern seine Funktionalität.Mimesis ist so etwas wie ein hybrid zwischen einem flat-file-Datenbank und einer relationalen Datenbank.

Die meisten anderen ffdb-Skripte beinhalten, umschreiben die KOMPLETTE Datei jedes mal, wenn ein update gemacht wird.Mimesis tut dies nicht, er schreibt nur den strukturellen Datei und aktualisiert die tatsächliche Zeile Inhalt.So dass, selbst wenn ein Fehler Auftritt, verlieren Sie nur neue Daten Hinzugefügt, nicht aber die älteren Daten.Mimesis unterhält auch seine Geschichte.Es sei denn, die Tabelle ist aktualisiert, die Daten, die Zeilen zuvor noch enthaltenen.

Ich könnte weitermachen, über alle Funktionen, aber dies ist nicht gedacht als "Mimesis ist die größte Datenbank immer" schimpfen.Außerdem soll Menschen die Augen zu öffnen, um die Tatsache, dass SQL ist nicht die EINZIGE Technologie zur Verfügung steht, und das flat-Dateien, wenn der ordnungsgemäßen Entwicklung Paradigmen überlegen sind, eine relationale Datenbank unter Berücksichtigung Sie sind mehr spezialisiert.

Lange live-flat-files und die Programmierer, die mutig genug sind die Kopfschmerzen die Folgen.

  

Ich mag die einfache Sicherung   und Transportieren der Datenbanken, die   Ich habe härter gefunden mit mySQL.

Verwenden Sie SQLite wie in einer anderen Antwort erwähnt. Es gibt nur eine Datei zu sichern, oder periodischen Dumps der MySQL-Datenbanken auf SQL-Dateien einzurichten. Dies ist eine relativ einfache Sache zu tun.

  

Ich sehe, dass jeder scheint zu bevorzugen   die mySQL Weg - und es wahrscheinlich ist,   schneller, wenn es darum geht, auf Anfragen

Die Geschwindigkeit ist auf jeden Fall eine Überlegung. Datenbanken sind in der Regel viel schneller, weil die Daten besser organisiert ist.

  

anders als das gibt es keinen Grund zu   bleiben weg von Flat-File-DBs und   (Endlich) richtig mysql lernen?

Es sicher gibt viele Gründe, eine Datenbanklösung zu verwenden, aber es gibt Argumente für flache Dateien vorgenommen werden. Es ist immer gut, Dinge zu lernen, andere als das, was man „in der Regel“ verwenden. Die meisten Entscheidungen hängen von der Anwendung ab. Wie viele gleichzeitige Benutzer sind Sie gehen zu müssen? Haben Sie Transaktionsunterstützung benötigen?

Wollte informieren, dass Mimesis von der ursprünglichen URL bewegt hat http://mimesis.site11.com/

Darüber hinaus bin ich Verschieben des Fokus von Mimesis von einem ffdb zu einem Schlüssel-Wert zu speichern. Es ist sinnvoller, die Arten von Informationen Da ich die Speicherung und die Methoden, die ich es abzurufen verwenden. Es gab auch einen schwerwiegenden Fehler in der Codierung von Mimesis (die ich seit behoben habe). Aber ich bin immer noch in der Testphase des neuen Schlüssel-Wert-Speichertypen. Ich habe auch von anderen Dingen Seite verfolgt worden. Locking hat sich auch bei der Verwendung von Dateierstellung zu Verzeichniserstellung als Mutex Mechanismus geändert.

Die Interoperabilität. MySQL kann im Grunde jeder Sprache verbunden werden, die zählt. Mimesis ist unwahrscheinlich verwendbar außerhalb von PHP sein.

Dies wird bedeutsam, sobald Sie versuchen, Profilern zu verwenden, oder Ändern von Daten von außen.

Das könnte Sie auch sehen http://lukeplant.me.uk/resources/flatfile/ für das PHP-Flatfile-Paket.

Das Problem mit Flatfile geht, ist, dass Sie die Situation für die weitere Entwicklung anzupassen, um eine erhebliche Menge an Code verändern, um die Grundlage des Systems zu verbessern. Während, wenn es dich um ein reines SQL-System ist, würde es wenig erfordert keine Änderung in der Zukunft gehen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top