Frage

Ich habe eine Anwendung, die geplant ist, und einige Daten aus einer anderen Datenbanktabelle erhalten und Deponien in meiner Haupt-Anwendungen Datenbanktabelle, täglich die Anzahl der Datensätze in dieser Tabelle zu und ich nehme an, es täglich wachsen wird, da es Transaktionen Ereignisdaten dass occur.This Daten werden zur Verarbeitung durch die Hauptanwendung verwendet, die jeden Datensatz und hat die nötige Analyse nimmt und markiert jeden Datensatz wie verarbeitet werden.

Welche Lösung kann ich bieten, so dass ich die Größe der Datenbank nach unten in der Zukunft halten kann?

Wie würden Sie gehen über die es in dieser Situation?

Aus meiner Beobachtung von einigen Unternehmensanwendungen bietet eine Option, dass der Benutzer kann Archivalien ‚älter als 60 Tage‘ etc ... zu einem Text file.Well ich eine Option zur Verfügung stellen könnte, die verarbeiteten Datensätze in eine Textdatei und löschen Sie die Datensätze aus der Datenbank, die Textdatei später bei Bedarf importiert werden können archiviert? Ist das eine Lösung?

War es hilfreich?

Lösung

Wenn Sie gelegentlich zugreifen müssen, dass ältere Daten dann einen Prozess baut es zu archivieren, um zu Text und dann wieder von Text zu laden ist wahrscheinlich nicht eine große Lösung. Festplatten sind billig.

Sie könnten die älteren Daten aggregieren. Zum Beispiel, wenn die Transaktionsdaten sind im Millisekunde-Korn jetzt, aber wenn man auf ältere Daten melden Sie es von Tag zu Tag bekommen dann sollten Sie die Daten auf „täglich“ als Archivierungsprozess aggregiert werden. Sie können in der Lage sein, Hunderttausende von Zeilen in ein nur ein paar für jeden Tag zu kollabieren.

Auch ein gutes Partitionierungsschema überlegen, wo Sie die jüngsten Transaktionen auf einem Satz von Platten und die archivierten Daten auf andere Datenträger halten, hoffentlich in einem Prozess, in dem Sie ganz einfach neue Festplatten hinzufügen und Erstellen von Tabellen auf diese Datenträger.

Andere Tipps

Welche Art von Daten aus der Vergangenheit Reporting-Anforderungen hat Ihr Unternehmen? archivierten Daten in eine Textdatei Dropping ist alles schön und gut, Sie nicht weg von diesen Daten in der Zukunft berichten können unter der Annahme müssen. Allerdings ist es in einer Textdatei, die bedeutet, dass Sie einen manuellen Prozess haben, um es bei Bedarf in eine Datenbank zu importieren, wenn es benötigt wird.

Eine bessere Option wäre weg in eine Data Warehouse-Datenbank Archivdaten zu bewegen, die nicht für die Transaktionsverarbeitung (OLTP) verwendet wird, und stattdessen wird als Grundlage einer analytischen Verarbeitung Datenbank (OLAP) verwendet. Wenn die Zeit aus diesen archivierten Daten zu berichten, kommt, zu gehen seine bereit. Wenn Sie vorsichtig sind, wie Sie Daten in diesem Archiv-Datenbank-Struktur, sollte es sehr einfach sein, all Daten in eine OLAP-Cube zu aggregieren, die diese Daten weg viel schneller und flexiblere Berichterstattung macht.

Aber wieder ... hängt davon ab, ob Sie die Daten Berichte erstellen oder nicht, und wie weit zurück in der Zeit, die gehen könnte berichten.

Es ist davon abhängen, wie viel Analyse auf Daten aus der Vergangenheit getan werden, aber es gibt einen Weg, um alles in der Datenbank zu halten, ohne die Leistung ein Problem.

Die Lösung, die in den Sinn kommt, ist die Tabellen in Frage zu partitionieren. Meine Firma hat eine Datenbanktabelle, die von Monat partitioniert Daten hat, von denen jede etwa 20 Millionen Zeilen enthalten. Die Partitionierung macht diese Daten mit vielen praktischen, als wenn sie in einer einzigen Tabelle gespeichert wurden. Nun ist die einzige wirkliche Einschränkung ist Speicherplatz, die eine nicht-Frage gegeben, wie billig es in diesen Tagen ist.

Ich weiß aber, dass einige Datenbanken unterstützen keine Partitionierung. Wenn dies der Fall ist, nehme ich die Speicherung die Daten in einer Datei mit begrenzten wäre eine geeignete Lösung sein.

IMHO, es hängt davon ab, wie wahrscheinlich ist, dass die Benutzer Daten aus der Vergangenheit analysieren benötigen. Wenn es wahrscheinlich ist, nur gute Indizes erstellen und alle Daten in Ihrem Haupt-Datenbank halten.

Wenn es nicht dann zu einer TXT fallen wird. Die Zeit, wo es geschieht, muss konfigurierbar natürlich sein.

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