Mongodb 最好的数据库,SQL或NOSQL,用于高速插入?
我想要一个数据库来插入简单的数据(一个10列的表)。问题是我需要每秒插入200000条记录。我的电脑是一台带有96GB ram和300T NAS驱动器的HP服务器。我对这个插入率一无所知Mongodb 最好的数据库,SQL或NOSQL,用于高速插入?,mongodb,database,Mongodb,Database,我想要一个数据库来插入简单的数据(一个10列的表)。问题是我需要每秒插入200000条记录。我的电脑是一台带有96GB ram和300T NAS驱动器的HP服务器。我对这个插入率一无所知 我听说了Mongodb。请您给我带路好吗?Mongo在这里可能是个不错的选择,但每秒200k是一个很大的数字,所以我认为无论您使用什么,都需要仔细设计 200kps*300字节/文档=60MBps->~600Mbps->接近千兆以太网适配器饱和。所以有什么需要注意的 在这种情况下,保持字段名简短,因为它们在每
我听说了Mongodb。请您给我带路好吗?Mongo在这里可能是个不错的选择,但每秒200k是一个很大的数字,所以我认为无论您使用什么,都需要仔细设计
- 200kps*300字节/文档=60MBps->~600Mbps->接近千兆以太网适配器饱和。所以有什么需要注意的
- 在这种情况下,保持字段名简短,因为它们在每个文档的BSON中都存在
- _id字段应该是单调递增(近似)的,这样整个_id索引就不需要在ram中。这在默认情况下是正确的,因为BSON对象会这样做。如果你添加更多的索引,你很可能无法用一台服务器达到200K;或许可以用固态硬盘来完成
- 我不确定使用mongo在一台服务器上每秒能达到200K。10万应该很容易。取决于箱子的速度。如果你切分,你当然可以在多台机器上每秒做200K
- 是否有任何方法可以将这些小行绑定到对您的应用程序有意义的较大文档中?如果您这样做,您将获得更高的吞吐量:例如,一个文档包含相当于其中十行的内容,它将成为一个插入,并且在_id索引中有一个键
- 200kps*300字节/文档=60MBps->~600Mbps->接近千兆以太网适配器饱和。所以有什么需要注意的
- 在这种情况下,保持字段名简短,因为它们在每个文档的BSON中都存在
- _id字段应该是单调递增(近似)的,这样整个_id索引就不需要在ram中。这在默认情况下是正确的,因为BSON对象会这样做。如果你添加更多的索引,你很可能无法用一台服务器达到200K;或许可以用固态硬盘来完成
- 我不确定使用mongo在一台服务器上每秒能达到200K。10万应该很容易。取决于箱子的速度。如果你切分,你当然可以在多台机器上每秒做200K
- 是否有任何方法可以将这些小行绑定到对您的应用程序有意义的较大文档中?如果您这样做,您将获得更高的吞吐量:例如,一个文档包含相当于其中十行的内容,它将成为一个插入,并且在_id索引中有一个键
- Mongo在这里可能是一个不错的选择,但每秒200k是一个很大的数字,所以我认为无论您使用什么,都需要仔细设计
200000*10*5*60*60*24*365字节=315.4TB
/dev/nul
如果插入率是唯一的要求,那么效果非常好。看看这个关于Mongo对插入限制的问题:你的意思是说一个表有10列吗?是的,一秒钟只有一个或两个简单的表200000条记录?你确定你说的对吗?假设一个表和每列5个字节,您的300TB NAS将在一年内满,200000*10*5*60*60*24*365字节=315.4TB
/dev/nul
如果插入率是唯一的要求,那么效果相当好。请看一下有关Mongo插入限制的问题: