Nous avons besoin de gérer 10 000 GPS, chaque appareil GPS télécharge des données GPS toutes les 30 secondes, ces données doivent être stockées dans la base de données (SQL Server 2005).Mémoire de données de masse avec SQL Server
Chaque dispositif GPS quantité de données quotidienne est: 24 * 60 * 2 = 2880 10 000
10000 appareils GPS quantité de données quotidienne est: 10000 * 2880 = 28800000
Chaque données GPS environ 160Byte, la quantité de données par jour est la suivante: 28.800.000 * 160 = 4.29GB
Nous avons besoin de détenir au moins 3 mois de données GPS dans la base de données,
Ma question est:
1, si SQL Server 2005 peut prendre en charge une telle quantité de magasin de données?
2, Comment planifier le tableau de données? (Tout le stockage de données GPS dans une table de table quotidienne Chaque dispositif GPS avec une table de données GPS??)
Les données GPS:
GPSID varchar(21),
RecvTime datetime,
GPSTime datetime,
IsValid bit,
IsNavi bit,
Lng float,
Lat float,
Alt float,
Spd smallint,
Head smallint,
PulseValue bigint,
Oil float,
TSW1 bigint,
TSW1Mask bigint,
TSW2 bigint,
TSW2Mask,
BSW bigint,
StateText varchar(200),
PosText varchar(200),
UploadType tinyint
J'ai tendance à utiliser la table de partition. Cependant, comment définir les limites?
Toutes les données stockées dans un tableau (nom de table: GPSTracks), pour le stockage de données, la requête, la gestion est très pratique. Mais le problème est que la quantité de données dans cette table est trop grande!La partition de table semble être une bonne idée, mais si la démarcation de la frontière est un problème difficile. – Leo
Chaque jour une table (nom de table: GPSTrack_20100617), peut réduire la quantité de données GPS, mais toujours très grand (4.29GB), la requête de données sera encore lente, plus important encore, face à la requête cross-day sera très douloureuse. – Leo
Chaque appareil GPS avec une table de données GPS (nom de table: GPSTrack_1531332567, "1531332567" est un identifiant GPS), peut résoudre le problème de quantité de données et des requêtes très rapide, mais il y a une question cruciale: besoin d'insérer des données dans une autre table, mais aussi de vérifier que la table de destination existe). – Leo