CSQL
CSQL Logo | |
Developer(s) | Lakshya & Community |
---|---|
Stable release | CSQL 3.3 / May 8, 2011 |
Operating system | Linux, Solaris |
Type | RDBMS |
License | GNU General Public Licence or proprietary |
Website | http://www.csqlcache.com/ |
CSQL is an open source main memory high-performance relational database management system developed at sourceforge.net.[1] It is designed to provide high performance for SQL queries and DML statements.
Main Memory databases performs 10-20 times faster than the disk based database systems, as it completely keeps the database in main memory. As there is no disk I/O, main memory databases provide predictive response time (~10 microseconds for point lookup and ~20 microseconds for insert/update/delete operations) which makes main memory databases ideal for real time as well as near real time applications. Refer:[2] for more information.
It can be configured to work in Embedded as well as client/server mode. Apart from acting as relational storage engine, it can also transparently cache data from existing databases.[3]
It can be configured to work as transparent, updateable, real time cache ( CSQL Cache ) for existing database management systems such as MySQL, Postgres, etc.
Storage
- Direct access to database, data is available in application's address space through embedded mode.
- Client/server mode access for applications residing in remote hosts.
- Atomicity - All the operations of a transaction performed take effect on the database or none of them will take effect
- Consistency - Database should be in legal state when the transaction begins and when it ends
- Isolation - Application should be able to make operations in a transaction that appear isolated from all other transactions
- Durability - Ability to recover all the committed transactions in case of application crash
- Protection from process failures by freeing resources held by dead application process
- Data Item (row) level locking and lock free internal structures for high concurrency
- Support for multiple users and authentication mechanism to access database
Data Type and Constraints
- Data Types: byte, small, int, bigint, float, double, char, binary, date, time, timestamp
- Constraints: NOT NULL, Unique key, Primary Key, Foreign Key
- Default values and auto increment key
Index
- Faster access for point lookup using hash indexing
- Faster access for range queries using tree indexing
- Highly concurrent faster operations using trie
SQL
- Support for aggregate functions, grouping, inner join, outer join, self join, distinct, order by
Caching
- CSQL Cache - Table level database caching for MySQL. Postgres
Interfaces
See also
- List of relational database management systems
- In memory database
same as mysql DBMS
References
- ↑ "CSQL sourceforge". sourceforge.net.
- ↑ THE DATABLITZ MAIN-MEMORY STORAGE MANAGER: ARCHITECTURE, PERFORMANCE, AND EXPERIENCE. sigmod proceedings. CiteSeerX: 10.1.1.33.4556.
- ↑ "DB Cache". stanford.
http://www.csqldb.com/download/CSQLMMDBDatasheet.pdf