Friday, October 2, 2009

What is Postgressql ?

CCH : From : http://www.postgresql.org

PostgreSQL is a powerful, open source object-relational database system. It has more than 15 years of active development and a proven architecture that has earned it a strong reputation for reliability, data integrity, and correctness.

It runs on all major operating systems, including Linux, UNIX (AIX, BSD, HP-UX, SGI IRIX, Mac OS X, Solaris, Tru64), and Windows. It is fully ACID compliant, has full support for foreign keys, joins, views, triggers, and stored procedures (in multiple languages). It includes most SQL92 and SQL99 data types, including INTEGER, NUMERIC, BOOLEAN, CHAR, VARCHAR, DATE, INTERVAL, and TIMESTAMP. It also supports storage of binary large objects, including pictures, sounds, or video. It has native programming interfaces for C/C++, Java, .Net, Perl, Python, Ruby, Tcl, ODBC, among others, and exceptional documentation.

An enterprise class database, PostgreSQL boasts sophisticated features such as Multi-Version Concurrency Control (MVCC), point in time recovery, tablespaces, asynchronous replication, nested transactions (savepoints), online/hot backups, a sophisticated query planner/optimizer, and write ahead logging for fault tolerance. It supports international character sets, multibyte character encodings, Unicode, and it is locale-aware for sorting, case-sensitivity, and formatting. It is highly scalable both in the sheer quantity of data it can manage and in the number of concurrent users it can accommodate. There are active PostgreSQL systems in production environments that manage in excess of 4 terabytes of data.

Some general PostgreSQL limits are included in the table below.

Limit
Value
Maximum Database Size
Unlimited
Maximum Table Size
32 TB
Maximum Row Size
1.6 TB
Maximum Field Size
1 GB
Maximum Rows per Table
Unlimited
Maximum Columns per Table
250 - 1600 depending on column types
Maximum Indexes per Table
Unlimited

PostgreSQL has won praise from its users and industry recognition, including the Linux New Media Award for Best Database System and five time winner of the The Linux Journal Editors' Choice Award for best DBMS.

Featureful and Standards Compliant

PostgreSQL prides itself in standards compliance. Its SQL implementation strongly conforms to the ANSI-SQL 92/99 standards. It has full support for subqueries (including subselects in the FROM clause), read-committed and serializable transaction isolation levels. And while PostgreSQL has a fully relational system catalog which itself supports multiple schemas per database, its catalog is also accessible through the Information Schema as defined in the SQL standard.

Data integrity features include (compound) primary keys, foreign keys with restricting and cascading updates/deletes, check constraints, unique constraints, and not null constraints.
It also has a host of extensions and advanced features. Among the conveniences are auto-increment columns through sequences, and LIMIT/OFFSET allowing the return of partial result sets. PostgreSQL supports compound, unique, partial, and functional indexes which can use any of its B-tree, R-tree, hash, or GiST storage methods.

GiST (Generalized Search Tree) indexing is an advanced system which brings together a wide array of different sorting and searching algorithms including B-tree, B+-tree, R-tree, partial sum trees, ranked B+-trees and many others. It also provides an interface which allows both the creation of custom data types as well as extensible query methods with which to search them. Thus, GiST offers the flexibility to specify what you store, how you store it, and the ability to define new ways to search through it --- ways that far exceed those offered by standard B-tree, R-tree and other generalized search algorithms.
GiST serves as a foundation for many public projects that use PostgreSQL such as OpenFTS and PostGIS.

OpenFTS (Open Source Full Text Search engine) provides online indexing of data and relevance ranking for database searching. PostGIS is a project which adds support for geographic objects in PostgreSQL, allowing it to be used as a spatial database for geographic information systems (GIS), much like ESRI's SDE or Oracle's Spatial extension.

Other advanced features include table inheritance, a rules systems, and database events. Table inheritance puts an object oriented slant on table creation, allowing database designers to derive new tables from other tables, treating them as base classes. Even better, PostgreSQL supports both single and multiple inheritance in this manner.

The rules system, also called the query rewrite system, allows the database designer to create rules which identify specific operations for a given table or view, and dynamically transform them into alternate operations when they are processed.

The events system is an interprocess communication system in which messages and events can be transmitted between clients using the LISTEN and NOTIFY commands, allowing both simple peer to peer communication and advanced coordination on database events. Since notifications can be issued from triggers and stored procedures, PostgreSQL clients can monitor database events such as table updates, inserts, or deletes as they happen.

Highly Customizable

PostgreSQL runs stored procedures in more than a dozen programming languages, including Java, Perl, Python, Ruby, Tcl, C/C++, and its own PL/pgSQL, which is similar to Oracle's PL/SQL. Included with its standard function library are hundreds of built-in functions that range from basic math and string operations to cryptography and Oracle compatibility. Triggers and stored procedures can be written in C and loaded into the database as a library, allowing great flexibility in extending its capabilities. Similarly, PostgreSQL includes a framework that allows developers to define and create their own custom data types along with supporting functions and operators that define their behavior. As a result, a host of advanced data types have been created that range from geometric and spatial primitives to network addresses to even ISBN/ISSN (International Standard Book Number/International Standard Serial Number) data types, all of which can be optionally added to the system.

Just as there are many procedure languages supported by PostgreSQL, there are also many library interfaces as well, allowing various languages both compiled and interpreted to interface with PostgreSQL. There are interfaces for Java (JDBC), ODBC, Perl, Python, Ruby, C, C++, PHP, Lisp, Scheme, and Qt just to name a few.

Best of all, PostgreSQL's source code is available under the most liberal open source license: the BSD license. This license gives you the freedom to use, modify and distribute PostgreSQL in any form you like, open or closed source. Any modifications, enhancements, or changes you make are yours to do with as you please. As such, PostgreSQL is not only a powerful database system capable of running the enterprise, it is a development platform upon which to develop in-house, web, or commercial software products that require a capable RDBMS.

What are the limitations of the FREE SQL Express 2008 ? [Updated 26th October 2009]

SQL Server Express is a free, easy to use, redistributable version of SQL Server 2005 designed for building simple data-driven applications. SQL Server Express has most of the features offered by SQL Server full version, but with certain limitations. This makes SQL Server Express a good choice for small and medium scale applications.

Most of the limitations of SQL Server Express edition will not affect the small/medium scale applications.

Limitations of SQL Server Express Edition

1. Number of CPUs supported

SQL Server Express uses only one CPU at a time. It can be installed on a server with multiple CPUs, but it will use only one CPU at a time.

2. Maximum memory used

SQL Server Express uses a maximum of 1 GB memory for it's data buffer. So, if your server has severaql GB memeory, SQL Server Express cannot take advantage of it.

4. Database size limit

Maximum database size is limited to 4 GB (log file size is not counted)

5. Profiler in SQL Server Express

Profiler tool is not included with SQL Server Express editions.

6. Job Scheduler

Job Scheduling service is not available with SQL Server Express.

7. Import/Export

Data import and export feature is not available with SQL Server Express.

A complete feature comparison of various editions of SQL Server can be found at the Microsoft web site - http://www.microsoft.com/sql/prodinfo/features/compare-features.mspx


SQL Express 2008

Physical Limitations

SQL Express 2008 has the same physical limitations that existed in SQL Express 2005:

    * 1 CPU.
    * 1 GB Memory
    * 4 GB of user data per database

Since people always ask - you can run SQL Express on machines that exceed these limits, SQL Express just ignores any addition CPUs or memory. SQL Express will take advantage of multiple cores on the single CPU by starting a scheduler for each core.

Feature Support

The same features available in SQL Express 2005 are still available in SQL Express 2008, if you need a refresher on those you can find them in the Feature Comparison chart in Books Online. This post only calls out the features in SQL Express that are new in 2008.

More at http://blogs.msdn.com/sqlexpress/archive/2008/06/10/sql-server-2008-express-rc0.aspx

Update on 26Th October 2009

CCH: Based on the latest download of SQL Express 2008 with Advanced Services, Import & Export of Data is now available. In addition, you must use Mixed Mode ratther than Windows authentication for smooth connectivity from your Client software.

Wednesday, August 26, 2009

What is Leto db Server ?

CCH : Information about Leto Db Server is pretty sketchy but it has been discussed extensively in the Harbour and HMG Extended Forums.

From http://sourceforge.net/projects/letodb/

Leto is a multi-platform database server or a database management system, chiefly intended for client programs, written on Harbour, be able to work with dbf/cdx files, located on a remote server.

Friday, June 5, 2009

What is Cache ?

Overview of Caché Features & Benefits

pdf
Available in .pdf

Introduction

Caché, the post-relational database from InterSystems, has the features professional developers need to quickly create Web and client/server applications. Caché benefits developers by giving them their choice of development tools, programming languages, and methods of data access. Caché benefits transaction processing applications by providing outstanding performance, massive scalability, real-time data analytics, and robust reliability.
Caché Features and Benefits
All these capabilities are tied together in an easy-to-use rapid development environment. With Caché, you can make applications faster.

Thursday, April 30, 2009

What is SQLite ?

SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine. SQLite is the most widely deployed SQL database engine in the world. The source code for SQLite is in the public domain.

SQLite Features:

  • Transactions are atomic, consistent, isolated, and durable (ACID) even after system crashes and power failures.
  • Zero-configuration - no setup or administration needed.
  • Implements most of SQL92. (Features not supported)
  • A complete database is stored in a single cross-platform disk file.
  • Supports terabyte-sized databases and gigabyte-sized strings and blobs. (See limits.html.)
  • Small code footprint: less than 300KiB fully configured or less than 180KiB with optional features omitted.
  • Faster than popular client/server database engines for most common operations.
  • Simple, easy to use API.
  • Written in ANSI-C. TCL bindings included. Bindings for dozens of other languages available separately.
  • Well-commented source code with over 99% statement test coverage.
  • Available as a single ANSI-C source-code file that you can easily drop into another project.
  • Self-contained: no external dependencies.
  • Cross-platform: Unix (Linux and Mac OS X), OS/2, and Windows (Win32 and WinCE) are supported out of the box. Easy to port to other systems.
  • Sources are in the public domain. Use for any purpose.
  • Comes with a standalone command-line interface (CLI) client that can be used to administer SQLite databases.

Suggested Uses For SQLite:


  • Application File Format. Rather than using fopen() to write XML or some proprietary format into disk files used by your application, use an SQLite database instead. You'll avoid having to write and troubleshoot a parser, your data will be more easily accessible and cross-platform, and your updates will be transactional.


  • Database For Gadgets. SQLite is popular choice for the database engine in cellphones, PDAs, MP3 players, set-top boxes, and other electronic gadgets. SQLite has a small code footprint, makes efficient use of memory, disk space, and disk bandwidth, is highly reliable, and requires no maintenance from a Database Adminstrator.


  • Website Database. Because it requires no configuration and stores information in ordinary disk files, SQLite is a popular choice as the database to back small to medium-sized websites.


  • Stand-in For An Enterprise RDBMS. SQLite is often used as a surrogate for an enterprise RDBMS for demonstration purposes or for testing. SQLite is fast and requires no setup, which takes a lot of the hassle out of testing and which makes demos perky and easy to launch.

What is Blackfish SQL ?

Blackfish SQL Fully managed, SQL-compliant, highly portable, embedded database

Blackfish™ SQL is a high-performance, small-footprint, SQL-92 compliant transactional database. Blackfish SQL runs on both the .NET framework and on the Java platform. Database files are compatible between the two platforms.
Blackfish SQL for .NET is fully integrated with CodeGear RAD Studio, Delphi, C++Builder and Delphi Prism
Blackfish SQL for .NET supports stored procedures written in the Delphi, C#, VB or Delphi Prism languages. Developers can use RAD Studio's Data Explorer to easily manage their Blackfish databases.

Blackfish SQL

The design and implementation of Blackfish SQL emphasize database performance, scalability, ease of use, and a strong adherence to industry standards.
Blackfish SQL capabilities include the following:
  • Industry standards compliance
    • Entry level SQL-92 compliance
    • Unicode storage of character data
    • Unicode-based collation key support for sorting and indexing
    • dbExpress 4 drivers for Win32 Delphi and C++
    • ADO.NET 2.0 providers for .NET
    • JDBC for Java
    • JavaBeans data access components for Java
    • XA/JTA Distributed transactions for Java

  • Blackfish™ SQL can be run as a Windows Service, as a standalone server or as an inprocess, embedded database
  • High performance and scalability for demanding online transaction processing (OLTP) and decision support system (DSS) applications
  • For Windows, stored procedures and triggers can be written in any CLR compliant language, including Delphi
  • For Java, stored procedures and triggers can be written in Java
  • Zero-administration, single assembly or single-jar deployment
  • Database incremental backup and failover

Product Editions

Desktop Deployment License
This license permits deployment of Blackfish SQL for .NET or for Java on a single desktop machine for a single user with no limits on database size, memory cache size or number of CPUs. License only - software not included.
Server Deployment License
This license permits deployment of Blackfish SQL for .NET or for Java on a single server for access by local or remote users with no limits on database size, memory cache size or number of CPUs. License only - software not included. Available with 1, 5, 10, 25 or Unlimited user counts.
RAD Studio Professional Edition
Included in the Professional editions of CodeGear RAD Studio, Delphi, C++Builder, and Delphi Prism. Development license plus unlimited no charge desktop database deployment on systems with for 1 user / 4 connections, and support for databases up to 512 MB.
RAD Studio Enterprise Edition
Included in the Enterprise and Architect Editions of CodeGear RAD Studio, Delphi, C++Builder and Delphi Prism. Development license plus unlimited no charge deployment on systems with up to 5 users / 20 connections, and support for databases up to 2GB.
JBuilder Professional Edition
Included with JBuilder 2008 Professional. Development license plus unlimited no charge desktop database deployment on systems for 1 user / 4 connections, and support for databases up to 512 MB.
JBuilder Enterprise Edition
Included in JBuilder 2008 Enterprise. Development license plus unlimited no charge deployment on systems with up to 5 users / 20 connections, and support for databases up to 2GB.
VAR/OEM Licensing
Blackfish SQL is well suited to embedding into other software products. Value Added Reseller (VAR) agreements can be entered into, so that the developer can include Blackfish SQL as part of their own software product installation. Contact your Embarcadero sales representative for more details on VAR agreements.

What is InterBase SMP 2009 ?

InterBase SMP 2009 The powerful database for embedded and enterprise applications

  • New! Security and Encryption features
  • Built-in SMP for greater scalability; supports Dual/Quad-core and additional CPUs
  • High performance durable database solution
  • Powerful, high availability database for embedded and enterprise applications

The highly scalable, powerful, embeddable database

InterBase SMP combines performance benefits of a multi-generational architecture with peace of mind of log-based journaling and disaster recovery. Easy installation, small footprint, automatic crash recovery, self-tuning, Unicode, built-in SMP support, SQL 92 compliance, and near zero maintenance makes InterBase SMP the ideal database for embedded and business-critical small-to-medium enterprise server applications.

New in InterBase SMP 2009

    Database and column level encryption

    InterBase now supports the use of either weak (DES) or strong (AES) encryption to encrypt a database and/or individual columns in a database table, providing ultimate security for data and communications between servers and clients.

    Over-the-Wire (OTW) network encryption

    Typically, data encrypted at the database- or column-level is not encrypted during the transmission process. OTW encryption, however, allows you to do just that: encrypt data as it is communicated over a network from a client to a server. If you use OTW encryption, you must encrypt network transmissions with the same strength as was used to encrypt the database or columns. You can use weak or strong encryption, though to use strong (AES) encryption, you must obtain an optional strong encryption license, available at no additional charge.

    Encryption of backup files

    If you encrypt a database and/or any of its columns, you must also encrypt the backup files for that database. You decrypt the backup files during the restore process. This adds an additional layer of protection to your data.

    InterBase SMP 2009 To-Go Edition

    The new InterBase To-Go Edition is a small, portable version of the Desktop Edition. Target applications for the To-Go Edition include small devices and public kiosks, as well as Value Added Reseller (VAR) applications that were built using InterBase. Used in the To-Go edition form, InterBase does not have to be separately installed on any server or end-user workstation.

InterBase SMP 2009 Editions

    Server Edition
    InterBase SMP 2009 Server Edition features a scalable, portable, cross-platform database, ideal for mission critical enterprise or embedded applications.

    InterBase SMP 2009 Server Edition delivers high performance for applications with complex business logic and high concurrent user levels through its symmetric multiple processing support and multi-threaded architecture. Built-in SMP allows enterprises greater scalability with support for Dual/Quad-core and additional CPUs built-in, no additional licensing required. Fast, easy installation, a small footprint, automatic crash recovery, self-tuning, and near zero maintenance make InterBase SMP the ideal solution for embedded, turn-key applications. SQL 92 compliance, advanced data reliability and recovery, Unicode, numerous connectivity options, and support for Windows®, Linux, Solaris™, and Mac OS® X make InterBase SMP perfect for high-powered, cost-effective business-critical server applications in small-to-medium enterprises.

    Desktop Edition
    InterBase SMP 2009 Desktop Edition for Windows is a powerful, cost effective deployment solution for standalone applications.

    Through its integration with RAD Studio, Delphi®, C++Builder®, 3rdRail, and JBuilder® development tools, InterBase Desktop Edition enables the rapid development of sophisticated business applications. With a small operational footprint, capabilities for automatic crash recovery and incremental backup, InterBase SMP Desktop Edition is an ideal embedded database for broad, cost-effective deployments that lack IT support and administration resources.

    To-Go Edition
    The new InterBase SMP To-Go Edition is a completely embeddable, full-featured, zero administration database that enables ISVs and OEMs to bring their applications and solutions to market faster. The To-Go Edition allows deployment of applications that utilize the InterBase engine DLLs. No separate database server process is running; the database engine is executing in the application process space. InterBase To-Go provides the benefits of InterBase in an extremely small footprint. Available October,2008

    Developer Edition
    InterBase SMP 2009 Developer Edition provides all developers the best cross-platform database to build and test database applications for embedded and SME segments. Developers are free to choose the standard connectivity they want, and make use of a mature SQL92 compliant database for their applications. Database performance monitoring allows the developer to streamline applications for optimal deployment.