SQLite Now Faster With Memory Mapped I/O
SQLite 3.7.17 was released yesterday. What makes this new release of the popular lightweight SQL database software noteworthy is that it introduces support for memory-mapped I/O.
Rather than using read/write system calls for dealing with database disk files, SQLite 3.7.17 adds support for accessing the disk now by directly using memory-mapped I/O. By using the SQLite memory mapped I/O calls, disk operations should be much faster as the disk contents no longer needs to be copied between kernel and user-space. SQLite developers have said by using this MMIO support the performance could be nearly doubled for some intensive tasks.
By using memory-mapped I/O, the SQLite library will also use less RAM since it shares pages with the operating system page cache rather than creating copies of those pages as with the old system calls. More details on this new mmap support in SQLite can be found on SQLite.org.
Other changes with SQLite 3.7.17 include new sqlite3 interfaces, enhancements to the extension loading mechanism, enhancing FTS3, virtual table improvements, and many bug-fixes. More details on the new SQLite library release can be found from its release page.