CSQL
|
|
This article appears to be written like an advertisement. Please help improve it by rewriting promotional content from a neutral point of view and removing any inappropriate external links. (August 2010) |
![]() 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 @ 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 microsecs for point lookup and ~20 microsecs 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.
Contents |
[edit] 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 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
[edit] 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
[edit] Index
- Faster access for point lookup using hash indexing
- Faster access for range queries using tree indexing
- Highly concurrent faster operations using trie
[edit] SQL
- Support for aggregate functions, grouping, inner join, outer join, self join, distinct, order by
[edit] Caching
- CSQL Cache - Table level database caching for MySQL. Postgres
[edit] Interfaces
[edit] See also
same as mysql DBMS
[edit] References
- ^ "CSQL sourceforge". sourceforge.net. http://sourceforge.net/projects/csql.
- ^ THE DATABLITZ MAIN-MEMORY STORAGE MANAGER: ARCHITECTURE, PERFORMANCE, AND EXPERIENCE. sigmod proceedings. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.33.4556&rep=rep1&type=pdf.
- ^ "DB Cache". stanford. http://www.almaden.ibm.com/u/mohan/DBCache_Project_Stanford_Talk_1-2004.pdf.
