我想要插入大量的数据,我应该使用什么:单个insert into语句,还是必须使用批量插入?还有别的事吗?我问这个问题的原因是,我的CrateDB节点的磁盘平均只以11kb/s的速度繁忙,而使用单次插入的磁盘负载是100%!
此外,是否支持像INSERT INTO IGNORE这样的东西?我是否可以在CrateDB中批量抛出我的数据,而它将忽略重复的条目?
谢谢!
发布于 2017-01-15 23:56:39
因此,正如您正确猜测的那样,批量插入可以为您提供最佳性能。然而,体验可能会有所不同-这主要取决于选择的“批量大小”,即一次发送多少条记录。通常情况下,一批1000条记录的性能非常好,但建议稍微尝试一下,因为这可能特定于运行CrateDB的硬件。
批量插入还将自动跳过重复插入-如果您在该表上定义了主键(否则DB如何知道什么是重复插入?)。但这会影响性能(不需要的查找/失败的插入)...
根据您想要实现的目标,您应该考虑使用insert or update
https://stackoverflow.com/questions/41663090
复制相似问题