ESENT Managed Interop
ESENT is an embeddable database storage engine (ISAM) which is part of Windows. It provides reliable, transacted, concurrent, high-performance data storage with row-level locking, write-ahead logging and snapshot isolation. This is a managed wrapper for the ESENT Win32 API.


Version 1.2 of the ESENT Managed Interop has been released
Now with JetEscrowUpdate and JetIntersectIndexes!

ESENT is an embedded database storage engine (ISAM) which is part of Windows (http://msdn.microsoft.com/en-us/library/ms684493(VS.85).aspx) It provides reliable, transacted, concurrent and high-performance data storage. It can be used for small databases (a few MB) or huge datasets (hundreds of GB). The engine provides logging, recovery, transactions and concurrent access with row-level locking and snapshot isolation.

There is an short overview/introduction to ESENT on the Windows SDK blog (http://blogs.msdn.com/windowssdk/archive/2008/10/23/esent-extensible-storage-engine-api-in-the-windows-sdk.aspx).

The Microsoft.Isam.Esent.Interop namespace provides managed access to ESENT and will be developed with these principles:
  • Any program written with this Api should work on Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008 or Windows 7.
  • A comprehensive test suite for all the interop code.
  • The Esent.Interop DLL should only require version 2.0 of the .NET Framework.
  • Full and complete documentation. Intellisense should be able to provide useful and extensive help.
  • Minimal editorialization. Whenever possible the Microsoft.Isam.Esent.Interop Api will exactly match the ESENT Api. In particular the names of structs, types and functions will not be changed. Except for:
  • Cleaning up Api constants. Instead of providing the constants from esent.h they will be grouped into useful enumerations. This will eliminate a lot of common Api errors and confusion.
  • Helper functions and objects will be provided to simplify extremely common API tasks.
Changes include:
  • Converting JET_coltyp etc. into real enumerations
  • Removing cbStruct from structures
  • Removing unused/reserved entries from structures
  • Throwing exceptions instead of returning errors


Last edited Apr 7 at 3:06 AM by laurionb, version 13

 

Want to leave feedback?
Please use Reviews instead.

Archived page comments (1)

Updating...
© 2006-2009 Microsoft | About CodePlex | Privacy Statement | Terms of Use | Code of Conduct | Version 2009.6.1.15196