我们正在研究一种应用程序架构,它需要记录发生在不同建筑入口上的卡片活动。每个区域都有多个建筑。有一个定制的C++应用程序,它有一个内置的PostgreSQL DB,它记录来自建筑物中不同读卡器的数据。自定义应用程序调用服务器上的一个服务,在5000次读取的批处理中传递卡片读取数据。然后,服务会将批处理写入中央存储库。我们还计划在服务中构建一个排队层,其中将使用批量上传将3-4项( 5000条记录中的每个项)写入存储库。下面是一个月内从7个区域(70个区域预期到最后阶段)到中央存储库的写入量:
#Bytes/Card || Read ||Card Reads ||GB/Region#
100 ||300000000 ||3.991382463
50 ||300000000 ||1.995691231
20 ||300000000 ||0.798276493预计大多数阅读将发生在每天上午9:00至下午5:00,每周7天。
我们计划使用SQLServer2008R2作为中央存储库。想知道Server是否能够支持这些数据量的写入。还希望听取关于拟议总体架构的任何建议/警告。
也想听听关于设计的注意事项。
不要在暂存DB上建立任何索引是个好主意吗?还有什么这样的窍门能派上用场吗?
发布于 2012-08-14 17:27:22
根据所给出的信息,SQL在处理该工作负载时应该不会遇到问题。您将需要将数据大容量插入到暂存表中,然后使用传统的插入到.选择。从..。方法,因为您不希望批量加载到生产表中。
只要磁盘的IO子系统足够快,就不会有问题。
https://dba.stackexchange.com/questions/22433
复制相似问题