CSQL

From Wikipedia, the free encyclopedia
CSQL

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

  • 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

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

See also

same as mysql DBMS

References

  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

This article is issued from Wikipedia. The text is available under the Creative Commons Attribution/Share Alike; additional terms may apply for the media files.