ac6-tools, Your embedded Data Base provider

ac6-tools distributes the ITTIA-DB embedded database in France

For your embedded applications you need advanced data management functions,
but you also need a database system that complies with the constraints of
your embedded environment.
ITTIA-DB offers you:

A low level API, in C or C++, allowing a secure access and manipulation of the content of the database.

An fully ACID-compliant database, conforming to the following constraints:

Atomicity

refers to the ability of the DBMS to guarantee that either all of the tasks of a transaction
are performed or none of them is.
It's the basis of the transaction concept; a transaction can be completed or it can fail for a multitude of reasons,
but atomicity guarantees that no part of the transaction will be recorded in the database
if the transaction does not completes successfully.

Consistency

refers to the database, if being in a legal state when the transaction begins,
then it will be when it ends.
This means that a transaction can't break the rules, or integrity constraints, of the database.
If an integrity constraint is violated by a transaction this transaction will be aborted.

Isolation

refers to the ability of the application to make operations in a transaction appear isolated
from all other operations. This means that no operation outside the transaction can ever see
the data in an intermediate state; for example is a transaction modifies several records
another transaction cannot see any modification if it cannot see then all.
Furthermore if a transaction is occurring in parrallel with another, if the first one has seen
a data modified by the second before it was modified, then it must see all data modified by it
as they were before modification, even if the second transaction was successfully commited.
More formally, isolation means the transaction history (or schedule) is serializable.
For performance reasons, this ability is the most often relaxed constraint.

Durability

refers to the guarantee that once the user has been notified of success,
the transaction will persist, and not be undone.
This means it will survive system failure, and that the database system
has checked the integrity constraints and won't need to abort the transaction.
Typically, all transactions are written into a log that can be played
back to recreate the system to its state right before the failure.
A transaction can only be deemed committed after it is safely in the log..

A database usable in a multi-tasking environment.

A database you can freely configure depending on your execution environment,
using a disk or flash memory, with or without a filesystem;
if necessary you may access the source code for even more configuration flexibility.

A reduced memory footprint, ranging from 150Kbytes to 800Kbytes, depending on the exact configuration.

A platform-independant database, portable in all environments and
using a file format platform independant.

A database available for the main embedde OSes.

To be sure that your projects are successful, ac6-tools we complement
our tools with high quality
technical support, training and consulting.