Configuration options can also affect the insert performance. Some of them we've already came across in the previous topics:
MemoryIoAdapter - improves the insert performance, by replacing disk access with memory access:
.NET:
configuration.Io(new MemoryIoAdapter());
lockDatabaseFile - reduces the resources consumption by removing database lock thread. Should only be used for JVM versions < 1.4
.NET:
configuration.LockDatabaseFile(false);
weakReferences - switching weak references off during insert operation releases extra resources and removed the cleanup thread.
.NET:
configuration.WeakReferences(false);
FlushFileBuffers - switching off flushFileBuffers can improve commit performance as the commit information will be cached by the operating system. However this setting is potentially dangerous and can lead to database corruption.
.NET:
configuration.FlushFileBuffers(false);