Leo*_*Leo 1 sql-server sql-server-2005
我们需要管理10,000个GPS设备,每个GPS设备每30秒上传一次GPS数据,这些数据需要存储在数据库中(SQL Server 2005).
每个GPS设备的每日数据量为:24*60*2 = 2,880 10 000
10,000个GPS设备每日数据量为:10000*2880 = 28,800,000
每个GPS数据大约160Byte,每天的数据量是:28,800,000*160 = 4.29GB
我们需要在数据库中保存至少3个月的GPS数据,
我的问题是:
1,SQL Server 2005是否可以支持如此大量的数据存储?
2,如何规划数据表?(所有GPS数据存储在一个表中?每日表?每个GPS设备都有一个GPS数据表?)
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
Run Code Online (Sandbox Code Playgroud)
我倾向于使用分区表.但是,如何设置界限?
是的,SQL Server 2005可以容纳这么多数据.
为了能够回答最后一个问题,我们真的需要知道你将如何使用这些数据.例如,如果您想对所有数据进行查询,那么将它放在日常表中就会出现问题.你还有一个问题,你将如何处理表的每日切换?
我最初会考虑将数据保存在一个表中,该表使用表分区并将历史分区放入快速磁盘上进行读取的文件组中.这样可以更快地查询数据.