【发布时间】:2011-07-09 08:09:03
【问题描述】:
我们正在使用核心 Berkeley(dbbaseapi) 并且已经处理了 9 个 lack 记录的 Write/ReadCDRFile,现在我们在使用事务和不使用事务时得到了性能差异,如下所示:-
- 我们写入/读取 S-Max CDRFile 实现辅助数据库的概念:-
使用辅助数据库概念(带事务):-
Operation No.of Rows Time
Write CDRFile 9,66,320 5.8 minutes
Read CDRFile 9,66,320 1.36 minutes
使用辅助数据库概念(无事务):-
Operation No.of Rows Time
Write CDRFile 966320 3.27 minutes
Read CDRFile 966320 1.28 minutes
我们已经设置了 environConfig.setTransaction(true) 中使用的参数,并且在数据库中使用了相同的参数。
Transaction txn = databaseEnv.getDbEnv().beginTransaction(null, null);
并传递到这里:-
databaseEnv.getCdrDb().put(txn, thekey, theData);
所以回复一下事务内部如何在数据库和环境中使用
【问题讨论】:
标签: berkeley-db