[][src]Module extremedb::device

Logical database devices.

eXtremeDB uses logical devices to describe the database storage.

In-memory databases only need one memory device. Both conventional and shared memory devices are supported.

Persistent databases require multiple devices for operation: in-memory devices for the in-memory part of the database and the disk page pool, as well as file devices for the database data and log.

For more information on the supported devices and their configuration, refer to the eXtremeDB reference pages.

Examples

Creating a new in-memory device (the memory region is allocated internally, and released when the device is dropped):

    let dev = device::Device::new_mem_conv(device::Assignment::Database, 1024 * 1024)?;

Creating a new file device:

    let db_file = "db.dbs";
    let dev = device::Device::new_file(
        device::Assignment::Persistent,
        device::FileOpenFlags::new(),
        db_file,
    )?;

Structs

Device

A logical device.

FileOpenFlags

Flags for persistent devices.

NamedMemFlags

Shared memory device flags.

Enums

Assignment

Device assignment.