java – OrientDB慢写
OrientDB官方网站说:
但是,执行以下代码可以显示:插入150000个简单文档需要17000ms. import com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx; import com.orientechnologies.orient.core.record.impl.ODocument; public final class OrientDBTrial { public static void main(String[] args) { ODatabaseDocumentTx db = new ODatabaseDocumentTx("remote:localhost/foo"); try { db.open("admin","admin"); long a = System.currentTimeMillis(); for (int i = 1; i < 150000; ++i) { final ODocument foo = new ODocument("Foo"); foo.field("code",i); foo.save(); } long b = System.currentTimeMillis(); System.out.println(b - a + "ms"); for (ODocument doc : db.browseClass("Foo")) { doc.delete(); } } finally { db.close(); } } } 我的硬件: > Dell Optiplex 780 我究竟做错了什么? 在10个并发线程中分割保存以最大限度地减少Java的开销,使其运行在大约13000ms.仍然远远低于OrientDB首页所说的. 解决方法
您可以使用“Flat Database”和orientdb作为java中的嵌入式库来实现
看到更多在这里解释 http://code.google.com/p/orient/wiki/JavaAPI 您使用的是服务器模式,并向orientdb服务器发送许多请求,根据您的基准判断,您每秒可以获得?10 000个插入,这不错,例如,我认为10 000个请求对于任何网络服务器都是非常好的性能(和orientdb服务器实际上是一个webserver,你可以通过http来查询它,但我认为java正在使用二进制模式) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |