Frage

Jetzt weiß ich, dass Bigint 2^64 ist; Das heißt, mehr Atome als es im bekannten Universum gibt. Ich sollte mir keine Sorgen machen, da mein bloßes menschliches Gehirn die Ungeheuerlichkeit dieser Zahl einfach nicht umgehen kann.

Nehmen wir jedoch an, ich zeichne jede Änderung in jeder Kategorie, jedem Produkt und jeder Reihenfolge in meinem System von Start bis zum Ende der Zeit auf. Sollte ich mir Sorgen um die Leistung von Tabellenschreibungen machen, bevor ich mir Sorgen um die Primärschlüsselwerte mache? Sollte ich Ereignisse unterschiedlicher Prioritäten in verschiedenen Ereignisetabellen aufzeichnen? Wird mir auf einer Festplatte Atome ausgehen, bevor mir die Bigints ausgeht? Wie groß sollte ich eine Ereignisprotokolltabelle bekommen, bevor ich damit anfange, ihn zu archivieren / zu räumen?

War es hilfreich?

Lösung

Selbst wenn jeder Ihrer Einträge nur 1 Byte hätte, würden 2^64 Einträge auf Ihrer Festplatte um 18000000 TB einnehmen. Ich denke, Sie sollten sich darüber keine Sorgen machen.

Andere Tipps

Wenn Ihre Bewerbung einmal in jeder Millionstel einer Sekunde einen Rekord auf den Tisch hinzufügte, würde sie über fünfhunderttausend Jahre lang laufen, bevor sie die Schlüssel mehr hatten.

"Wie groß sollte ich eine Ereignisprotokolltabelle bekommen, bevor ich anfange, ihn zu archivieren / zu räumen?"

Löschen Sie niemals die Ereignisprotokolle - die Informationen haben einen erheblichen Wert.

Wenn jedoch ein Manager darauf besteht, dass ein Archiv erforderlich ist, können Sie die Kosten für den Speicher im Vergleich zu den Kosten Ihrer Zeit zeigen, um (a) darüber nachzudenken, (b) den zweiten und dritten Meinungen zu erhalten und dann (c) a zu schreiben a Prozedur zum Archiv -Protokolldatensätzen.

Die Lagerkosten sinken. Ihre Zeit ist besser für etwas anderes als Spülenprotokolldatensätze aufgewendet.

Fazit: Sie haben die Erlaubnis, nicht mehr die Hände zu wringen. Es ist alles gut. Sie machen keinen grundlegenden Fehler.

Es ist höchst unwahrscheinlich, dass Ihnen jemals die Primärschlüsselwerte ausgehen werden. Möglicherweise müssen Sie jedoch berücksichtigen, wie Sie auf die Protokolltabelle zugreifen möchten, um Daten abzurufen. Verwenden Sie dies, um zu informieren, wann Sie die Daten archivieren oder reinigen sollten. Wenn die Protokolldaten häufig gelesen werden, denken Sie über das Hinzufügen von Indizes zur Verbesserung der Leseleistung. Beachten Sie jedoch, dass die Indizes für jeden hinzugefügten Datensatz beibehalten werden müssen.

Die Art und Weise, wie wir damit umgehen, wird durch Bereitstellung einer Protokollarchivierungsfunktionalität, die die Protokolltabelle in separate Datenbanken nach Jahr unterteilt und es uns ermöglicht, den Identitätssamen in unserer Logevent -Tabelle zurückzusetzen.

Wir haben auch unterschiedliche Protokolltabellen, obwohl nur zwei wichtige.

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