CSQL

From Wikipedia, the free encyclopedia
Jump to: navigation, search
CSQL
CSQL Logo.jpg
CSQL Logo
Developer(s) Lakshya & Community
Stable release CSQL 3.3 / May 8, 2011 (2011-05-08)
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[edit]

  • 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[edit]

  • 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[edit]

  • Faster access for point lookup using hash indexing
  • Faster access for range queries using tree indexing
  • Highly concurrent faster operations using trie

SQL[edit]

Caching[edit]

  • CSQL Cache - Table level database caching for MySQL. Postgres

Interfaces[edit]

  • Support for SQL, ODBC, JDBC, PHP
  • JDBC and ODBC drivers are supported for windows

See also[edit]

same as mysql DBMS

References[edit]

  1. ^ "CSQL sourceforge". sourceforge.net. 
  2. ^ THE DATABLITZ MAIN-MEMORY STORAGE MANAGER: ARCHITECTURE, PERFORMANCE, AND EXPERIENCE. sigmod proceedings. CiteSeerX: 10.1.1.33.4556. 
  3. ^ "DB Cache". stanford. 

http://www.csqldb.com/download/CSQLMMDBDatasheet.pdf