Suneido Database
Part of the SuneidoPlatform.
-
not SQL, uses a relational algebra query language
-
query language includes select, project, join, left outer join, union, difference, intersect,
-
integrated with SuneidoLanguage to lower impedance mismatch, same data types, same language for rules and triggers
-
allows multiple candidate keys, a single primary key is not required
-
explicit foreign keys, with cascade or block
-
business rules e.g. for derived fields, may be stored or calculated on demand
-
rules automatically determine dependencies and recalculate when dependencies change
-
standalone or client-server (tcp/ip)
-
add, update, and delete triggers
-
small footprint (executable is roughly 1mb)
-
concurrency
-
fully isolated transactions with commit and rollback
-
optimistic, timestamp based, multi-version
-
read-only transactions see data as-of their start time
-
read-only transactions (e.g. long running reports) never conflict with other transactions
-
recovery - database can be rolled back to last consistent state after hardware or software crash
-
on-line backups - use a single read-only transaction to take a snapshot of the database
-
database is a single file accessed via virtual memory mapping for fast speed
-
fields and records are variable length
-
fields are dynamically typed (like SuneidoLanguage)
-
fields and indexes can be added and removed at any time without rebuilding data
-
multiple btree indexes
-
sophisticated cost based query optimizer that rearranges queries, chooses strategies, and selects the best index usage
-
open source under GPL license
-
sample applications, including a complete accounting system (GL, AR, AP) available
Homepage of Suneido is http://www.suneido.com/
There is an on-line forum for the discussion of Suneido at
-
- http://www.suneido.com/forum/
See also SuneidoPlatform SuneidoLanguage SuneidoDevelopmentEnvironment
CategoryDatabase CategorySoftwareTool