我使用Spring作为框架,使用mongoDB作为DB。我注意到Mongo在查找文档时工作得很好,但是当它处理大量记录时,它会变得非常慢(大约需要6分钟才能保存一百万个文档)。 在我的数据库的其他表中,有很多数据(大约2000万条记录)。有问题吗?
如何加快这一过程?
我向您展示了如何在Spring中写入数据:
IdSMTP1.Host := 'email-smtp.us-west-2.amazonaws.com';
IdSMTP1.Username := 'myusername';
IdSMTP1.Password := 'mypassword';
IdSMTP1.Port := 587;
IdSMTP1.IOHandler := IdServerIOHandlerSSLOpenSSL1;
IdSMTP1.UseTLS := utUseExplicitTLS;
IdSMTP1.UseEhlo := True;
IdMessage1.Body.Text := 'This is a test é á ó ç';
IdMessage1.ContentType := 'text/plain';
IdMessage1.CharSet := 'utf-8';
//alternatively
// IdMessage1.ContentType := 'text/plain; charset=utf-8';
IdMessage1.ContentTransferEncoding := 'base64';
with IdServerIOHandlerSSLOpenSSL1 do
begin
SSLOptions.Method := sslvTLSv1;
SSLOptions.VerifyMode := [];
SSLOptions.VerifyDepth := 0;
end;
IdSMTP1.Connect;
IdSMTP1.Send(IdMessage1);
为了保存数据,我尝试过:
第一次尝试:
<IonSlides
onIonSlideDidChange={() => console.log("a")}
pager={false}
class="full-width"
>
第二次尝试:
@Document
public class Message {
@Id
private String id;
...other 20 fields with getter and setter...
}
第三次尝试:
mongotemplate.insertAll(messages)
实际上,最后一个略胜于其他,但没有一个能让我真正满意。 如何减少写作时间? 使用其他类型的数据库(例如Cassandra或SQL数据库)是否方便?如果答案是肯定的,那么哪一个是最快的记录,它几乎可以在几乎空的表中写入多达4百万条Milion记录?
谢谢。