Hallo Thomas...
ich bin ein wenig von der Größe überfahren worden. Im Leben hätte ich (Bauchgefühl) nicht mit der Größe gerechnet.
Zum Thema Statistik:
Delphi-Quellcode:
T_RECORD_DATA (153)
Primary pointer page: 150, Index root page: 172
Data pages: 82929, data page slots: 82929, average fill: 63%
Fill distribution:
0 - 19% = 0
20 - 39% = 1
40 - 59% = 0
60 - 79% = 82928
80 - 99% = 0
Index FK_T_RECORD_DATA_1 (0)
Depth: 3, leaf buckets: 8073, nodes: 21680580
Average data length: 0.00, total dup: 21679353, max dup: 19155
Fill distribution:
0 - 19% = 1
20 - 39% = 0
40 - 59% = 2451
60 - 79% = 0
80 - 99% = 5621
Index T_RECORD_DATA_IDX1 (2)
Depth: 3, leaf buckets: 7010, nodes: 21680580
Average data length: 0.06, total dup: 20624315, max dup: 87
Fill distribution:
0 - 19% = 0
20 - 39% = 0
40 - 59% = 1
60 - 79% = 0
80 - 99% = 7009
... bedeutet ja, daß reichlich Platz verschwendet wird. Die Inserts laufen als Block wie hier empfohlen
http://www.delphipraxis.net/1256983-post42.html
Delphi-Quellcode:
execute block as begin //25Kb je Block
insert into T_RECORD_DATA... // 200x je Block. Änderung der Menge machte keinen Unterschied.
end
Alle Blöcke laufen in einer Transaktion. Wo läßt sich da noch was rausholen.
Zitat:
Bzgl. Datenbank je Gerät. Im Prinzip musst du dann X Datenbanken bzgl. Schemastruktur auf einem entsprechenden Stand halten, jede Datenbank sichern etc., bei einem Firebird/ODS Upgrade diese sichern/wiederherstellen etc. Dann hast du vielleicht auch Stammdaten, die jedem Gerät gemein sind. Wie machst du das?
Ich würde nur diese eine Tabelle auslagern. Der Rest ist zusammengenommen, auch bei 500 Geräten, unter 30MB. Denkst du eher an eine Aufsplittung ab X GB? Geht das automatisch? Wo kann man das nachlesen?