Thursday 29 November 2012

Definition of Rollback and Roll forward?

Rollback: The Rollback transaction is a transaction which rolls back the transaction to the beginning of the transaction. The transaction can be rolled back completely by specifying the transaction name in the Rollback statement or to cancel any changes to a database during current transaction. It is permissible to use before Commit transaction.

Roll forward: Recovering a database by applying different transactions that recorded in the database log files. It is nothing but re-doing the changes made by a transaction i.e. after the committed transaction and to over write the changed value again to ensure consistency.

Tuesday 20 November 2012

Comparison of relational database management systems


General information:
       DB
Maintainer
First public release date
Latest Stable version
Latest release date
Software license
IBM
1983
10.1
2012-04-30
1989
2012 (v11)

1995-11
5.5.17
2011-10-21
Oracle
1979-11
11g Release 2
2009-09
 
Operating system support:
DB
Windows
Mac OS X
BSD
UNIX
Amiga OS
Symbian
z/OS1
iOS
Android
Yes
Yes (Express C)
Yes
No
Yes
No
No
Yes
Yes
No
Yes
No
No
No
No
No
No
No
No
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
?
No
Oracle
Yes
Yes
Yes
No
Yes
No
No
Yes
No
No
 Fundamental features:
DB
Interface
Yes
Yes
Yes
Yes
GUI & SQL
Yes
Yes
Yes
Yes
GUI & SQL
Yes
Partial
Yes except for DDL
Yes
Oracle
Yes
Yes
Yes except for DDL
Yes
API & GUI & SQL
Limits:
DB
Max DB  size
Max table size
Max row size
Max columns per row
Max Blob/Clob size
Max CHAR size
Max NUMBER size
Min DATE value
Max DATE value
Max column name size
512 TiB
512 TB
32 677 B
1012
2 GB
32 KiB
64 bits
0001
9999
128
524,272 TB (32 767 files * 16 TB max file size)
524,272 TB
8060 bytes (Unlimited)
30000
2 GB
2 GB
126 bits
0001
9999
128
Unlimited
MyISAM storage limits: 256 TB; Innodb storage limits: 64 TB
64 kB
4096
4 GB (longtext, longblob)
64 kB (text)
64 bits
1000
9999
64
Oracle
Unlimited (4 GB * block size per tablespace)
4 GB * block size (with BIGFILE tablespace)
8 kB
1000
Unlimited
4000 B
126 bits
-4712
9999
30
 Tables and views:
Information about what tables and views (other than basic ones) are supported natively.  
DB
Temporary table
Yes
Yes
Yes
Yes
Yes
No
Oracle
Yes
Yes

Indexes:
Information about what indexes (other than basic B-/B+ tree indexes) are supported natively.
DB
No
?
Yes
No
Yes
Yes
No
No
Yes
?

?
Non/Cluster & fill factor
Yes
Yes
No
No
No
No
Yes
Yes

MyISAM tables only
MEMORY, Cluster (NDB), InnoDB, tables only
No
No
No
No
No
No
MyISAM tables only
MyISAM tables only
?
Oracle
Yes 
Cluster Tables
Yes
Yes 
Yes
Yes
No
No
Yes
Yes


  Database capabilities:
DB
Inner selects
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes (2005 and beyond)
Yes (2005 and beyond)
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
No
Yes
Yes
Yes
No
Yes
No
No
No
Oracle
Yes
Yes
Yes, via MINUS
Yes
Yes
Yes
Yes
Yes
Yes 1
Yes
Yes
Data types:
DB
Decimal
Date/Time
Other









Static
TINYINT, SMALLINT, INT, BIGINT
FLOAT, REAL
NUMERIC, DECIMAL, SMALLMONEY, MONEY
CHAR, VARCHAR, TEXT, NCHAR, NVARCHAR, NTEXT
BINARY, VARBINARY, IMAGE, FILESTREAM
DATE, DATETIMEOFFSET, DATETIME2, SMALLDATETIME, DATETIME, TIME
BIT
CURSOR, TIMESTAMP, HIERARCHYID, UNIQUEIDENTIFIER, SQL_VARIANT, XML, TABLE
Static
TINYINT (8-bit), SMALLINT (16-bit), MEDIUMINT (24-bit), INT (32-bit), BIGINT (64-bit)
FLOAT (32-bit), DOUBLE (aka REAL) (64-bit)
DECIMAL
CHAR, BINARY, VARCHAR, VARBINARY, TEXT, TINYTEXT, MEDIUMTEXT, LONGTEXT
TINYBLOB, BLOB, MEDIUMBLOB, LONGBLOB
DATETIME, DATE, TIMESTAMP, YEAR
BOOLEAN (aka BOOL) = synonym for TINYINT
ENUM, SET, GIS data types (Geometry, Point, Curve, LineString, Surface, Polygon, GeometryCollection, MultiPoint, MultiCurve, MultiLineString, MultiSurface, MultiPolygon)
Oracle
Static + Dynamic (through ANYDATA)
NUMBER
BINARY_FLOAT, BINARY_DOUBLE
NUMBER
CHAR, VARCHAR2, CLOB, NCLOB, NVARCHAR2, NCHAR
BLOB, RAW, LONGRAW, BFILE
DATE, TIMESTAMP (with/without TIMEZONE), INTERVAL
N/A
SPATIAL, IMAGE, AUDIO, VIDEO, DICOM, XMLType
 Other objects:
Information about what other objects are supported natively.
        DB
External routine 
Yes via CHECK CONSTRAINT
Yes
Yes
Yes
Yes
Yes
Yes (2000 and beyond)
Yes
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
Oracle
Yes
Yes
Yes
Yes
Yes
Yes
Partitioning:
Information about what partitioning methods are supported natively.
         DB
Range
Hash
Composite (Range+Hash)
List
Expression
Yes
Yes
Yes
Yes

Yes
No
No
No

Yes
Yes
Yes
Yes

Oracle
Yes
Yes
Yes
Yes

Access control:
Information about access control functionalities (work in progress).
DB
Native network encryption
Brute-force protection
Enterprise directory compatibility
Password complexity rules
Patch access
Run unprivileged
Audit
Resource limit
Separation of duties (RBAC)
Security Certification
Yes
?
Yes (LDAP, Kerberos…)
Yes
?
Yes
Yes
Yes
Yes
Yes (EAL4+)
Yes
?
Yes (Microsoft Active Directory)
Yes
Yes
Yes
Yes (From 2008)
Yes
Yes
Yes (EAL1+)
Yes (SSL with 4.0)
No
Yes (with 5.5, but only in commercial edition)
No
Partial (no security page)
Yes
?
?
?
No
Oracle
Yes
Yes
Yes
Yes
?
Yes
Yes
Yes
Yes
Yes (EAL4+)