Mailinglisten-Archive |
Hallo, > bigint geht ohne vorzeichen von 0 - 18.446.744.073.709.551.617 > und mit von -9.223.372.036.854.775.808 bis +9.223.372.036.854.775.807 > > int kann ohne von 0 bist 4.294.967.295 und mit von -2.147.483.648 bis > +2.147.483.647 vielen Dank für die Aufklärung, aber mit Integerbereichen bin ich durchaus vertraut. Die Frage bezog sich auf folgendes Rechenbeispiel: Nehmen wir eine Tabelle mit einer ID-Spalte an, in welche rund um die Uhr jede Minute 100 Datensätze geschrieben werden. Das sind dann: 100 DS pro Minute, 6000 DS pro Stunde, 144000 DS pro Tag, 52560000 DS pro Jahr. Daraus folgt: 2.147.483.647 / 52.560.000 = 40.86 Jahre bis zum Überlauf oder 4.294.967.295 / 52.560.000 = 81.71 Jahre bis zum Überlauf. Man beachte, bei 50 Mio. DS macht ein Sprung von 4 Byte auf 8 Byte ein Volumen von 4 x 50 Mio. = 200 Mio. Byte oder knapp 200 MB aus. Ich bin mir natürlich bewußt, daß man in ca. 40 Jahren noch viel mehr über 200MB lachen wird, als heute (bei den Plattengrößen). Allerdings darf man (heute noch) nicht den Netztraffic außer Acht lassen und die Tatsache, daß die ID-Spalten in anderen Tabellen heftig als Fremdschlüssel die gleiche Größe haben müssen. Hat eine Tabelle somit fünf Fremdschlüssel (ich find' das nicht zu hoch gegriffen), dann verschenkt man 1GB (in Worten: ein Gigabyte) für den Vorteil, daß das heute programmierte System in 80 Jahren noch laufen wird. *grübel* Ciao Alex
php::bar PHP Wiki - Listenarchive