Skip to content

wundrian/csql

Repository files navigation

Introduction 
------------
	CSQL is a fast, multi-threaded SQL main memory database engine. It works in both embedded mode (database client and server run in the same host) and client/server mode. It provides very high throughput of 100,000 selects/sec and 50,000 updates/sec from standard interface such as JDBC and ODBC. It aids in the development of high performance, fault-resilent applications requiring concurrent access to the shared data.

	CSQL shall also be used as client side caching mechanism for any database system without compromising on transactional properties and indexed access. This is achieved by using CSQL-main memory database to cache the data from the target database (any traditional disk based database system). 

	This solution has been designed with modern database requirements in mind, and particularly for use within high-volume environment that requires high performance, while still supporting the transactional properties. Applications shall use this caching solution with no or minimal application code changes. Application throughput may increase by a factor of 20 to 100 by incorporating data caching in its architecture.

        It comes in dual license, GPL for open source community edition and commercial license for enterprise edition.

Platforms Supported
-------------------
Linux    - x86, x86_64
Solaris  - x86, sparc32, sparc64
FreeBSD	 - x86, x86_64

Compilers Supported
-------------------
g++ in Linux
g++ in FreeBSD
CC in Solaris

Available Documentation
-----------------------
1.User Manual
2.Programmer's Guide 
3.Cache Guide
4.Replication Guide

All the manuals are available under the docs directory

Starting the Server
-------------------
setupenv.ksh script is available at the root directory which shall be used to
set the necessary environment variables for CSQL.

$. ./setupenv.ksh

Start the server using csqlserver executable
$csqlserver

This starts the server and creates the database file.

Interacting with Server using csql client
-----------------------------------------
Open another terminal and run setupenv.ksh script to set the necessary 
environment variables for CSQL.

$. ./setupenv.ksh

Run csql tool to get the CSQL prompt

$csql
CSQL>

You can execute DDL and DML statements on CSQL prompt.

Note:
Refer UserManual.pdf available in docs folder for details on working with CSQL

Shutting down the Server
------------------------
Pressing Ctrl-C on the terminal where csqlserver is running, 
is safe and will stop the server gracefully.