Delphi-PRAXiS
Seite 1 von 5  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Was mache ich wenn meine Tabelle voll ist? (https://www.delphipraxis.net/183108-mache-ich-wenn-meine-tabelle-voll-ist.html)

Der schöne Günther 11. Dez 2014 18:18

Datenbank: Sybase Advantage • Version: 11.10 • Zugriff über: FireDAC / ACE

Was mache ich wenn meine Tabelle voll ist?
 
Deppenfrage mit Deppentitel.

Meine hauptsächlich verwendete Datenbank erlaubt zwar Dateigrößen im Exabyte-Bereich, will aber nicht mehr als 2^31 (2 Milliarden) Datensätze pro Tabelle zulassen.

Da ich, wie oft betont, null Praxiserfahrung mit Datenbanken habe bin ich davon jetzt überrascht worden! Ja, so eine Menge kann durchaus anfallen. Und ja, eventuell werde ich mehr brauchen.

Ärgere ich mich jetzt über die blöde Datenbank oder hat man das Problem öfter? Was tue ich dagegen? Lege ich nach 1,9Mrd. Einträgen die nächste Tabelle mit einem _2 hinten im Namen an? Presse ich (entgegen Normalisierung) mehr (eventuell leer bleibende) Spalten an einen Datensatz?

Ich bin verwirrt. :|

Dejan Vu 11. Dez 2014 18:28

AW: Was mache ich wenn meine Tabelle voll ist?
 
Welche Datenbank bzw. welches RDBMS wäre das?
Und -ja- du müsstest dann einfach eine weitere Tabelle anlegen bzw. die volle Tabelle umbenennen oder 1x pro Jahr ne neue Tabelle nehmen bzw. umbenennen.

Oder die ältesten Daten per Trigger oder per COB (Close of Businessday) ins Archiv verschieben. Die Archiv-DB ist natürlich eine, der ein paar mehr Zeilen pro Tabelle ablegen kann.

Uwe Raabe 11. Dez 2014 18:37

AW: Was mache ich wenn meine Tabelle voll ist?
 
Oder eine Datenbank verwenden, die diese Begrenzung nicht hat. Allerdings konnte ich auch für ADS keinen Hinweis auf diesen Constraint finden. Kann es eventuell auch ein von dir verwalteter Integer sein, der da überläuft?

Der schöne Günther 11. Dez 2014 18:43

AW: Was mache ich wenn meine Tabelle voll ist?
 
An die Begrenzung bin ich noch nicht gestoßen, aber die Proprietary File Format Specifications sprechen von
Zitat:

Maximum number of records per table - 2 Billion
Der Typ AUTOINC ist komischerweise 4 Byte Unsigned (4Mrd) was aber auch nicht viel besser ist (Field Types and Specifications)

Uwe Raabe 11. Dez 2014 20:27

AW: Was mache ich wenn meine Tabelle voll ist?
 
Im amerikanischen Sprachgebrauch entspricht Billion der deutschen Milliarde.

Der schöne Günther 11. Dez 2014 21:24

AW: Was mache ich wenn meine Tabelle voll ist?
 
Natürlich. Hat doch niemand etwas anderes behauptet?

Bernhard Geyer 11. Dez 2014 21:47

AW: Was mache ich wenn meine Tabelle voll ist?
 
2 Mrd. ist schon viel.Für viele Anwendungen ist diese Grenze irrrelevant

Uwe Raabe 11. Dez 2014 22:07

AW: Was mache ich wenn meine Tabelle voll ist?
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1283144)
2 Mrd. ist schon viel.Für viele Anwendungen ist diese Grenze irrrelevant

Genau diese Grenze wird aber im ersten Post bemängelt:
Zitat:

will aber nicht mehr als 2^31 (2 Milliarden) Datensätze pro Tabelle zulassen.

Perlsau 12. Dez 2014 03:52

Unpassendes Datenbankmanagementsystem
 
Zitat:

Zitat von Der schöne Günther (Beitrag 1283122)
... will aber nicht mehr als 2^31 (2 Milliarden) Datensätze pro Tabelle zulassen.

Je nach Anforderung sollte man das passende DBMS wählen. Man nimmt kein DBMS mit derartigen Begrenzungen, wenn zu erwarten ist, daß die zu entwickelnde Anwendung weitaus mehr Datensätze zu verwalten hat, als das DBMS zuläßt. Ich kann hier nur mal wieder Firebird empfehlen, damit hättest du diese Probleme nicht.

Dejan Vu 12. Dez 2014 07:54

AW: Was mache ich wenn meine Tabelle voll ist?
 
Ich glaube, die Anzahl der RDBMS, die diese Beschränkung nicht haben, ist größer als die, die diese Beschränkung haben.

Ich persönlich würde eh nur SQL-Server, PostGres oder FB nehmen. mySQL kenne ich nicht, aber 100 Mio Fliegen können nicht irren. Die Teile sind weit verbreitet, stabil, werden weiterentwickelt usw usw.

Zur Grenze, eine Beispielanwendung: In einer Fabrik wird pro Sekunde ein Bauteil mit 500 Messwerten durchgemessen, die Fabrik läuft 24/7. Das sind am Tag 43 Mio Zeilen, wenn ich mich nicht verrechnet habe. Da ist die Tabelle im Nonstopbetrieb nach 49 Tagen voll. Das ist keine Phantasie, sondern im Solarzellenbereich Realität. Da lob ich mir doch eine DB, der es wurscht ist, wie viele Zeile in die Tabelle passen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:03 Uhr.
Seite 1 von 5  1 23     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz