Database Virtualization
Encyclopedia
Database virtualization is the decoupling of the database layer, which lies between the storage and application layers within the application stack. Virtualization at the database layer allows hardware resources to be extended to allow for better sharing resources between applications and users, masking of the physical location and configuration of a database from querying programs, as well as enable more scalable computing.
solutions:
I. Shared All Databases–an architecture that assumes all database cluster nodes share a single partition. Inter-node communications is used to synchronize update activities performed by different nodes on the cluster. Shared-all data management systems are limited to single-digit node clusters.
II. Shared-Nothing Databases–an architecture in which all data is segregated to internally managed partitions with clear, well-defined data location boundaries. Shared-nothing databases require manual partition management.
In virtual partitioning, logical data is abstracted from physical data by autonomously creating and managing large number of data partitions (100s to 1000s). Because they are autonomously maintained, resources required to manage the partitions are minimal. This kind of massive partitioning results in:
“Shared-all” and “shared nothing” architectures allowing scalability through multiple data partitions and cross-partition querying and transaction processing
without full partition scanning.
layer between the sources and consumers helps address this complexity. Rick van der Lans, author of multiple books on SQL and relational databases, has defined data virtualization as "Data virtualization is the process of offering data consumers a data access interface that hides the technical aspects of stored data, such as location, storage structure, API, access language, and storage technology."
Virtual Data Partitioning
The act of partitioning data stores as a database grows has been in use for several decades. There are two primary ways that data has been partitioned inside legacy data managementData management
Data management comprises all the disciplines related to managing data as a valuable resource.- Overview :The official definition provided by DAMA International, the professional organization for those in the data management profession, is: "Data Resource Management is the development and execution...
solutions:
I. Shared All Databases–an architecture that assumes all database cluster nodes share a single partition. Inter-node communications is used to synchronize update activities performed by different nodes on the cluster. Shared-all data management systems are limited to single-digit node clusters.
II. Shared-Nothing Databases–an architecture in which all data is segregated to internally managed partitions with clear, well-defined data location boundaries. Shared-nothing databases require manual partition management.
In virtual partitioning, logical data is abstracted from physical data by autonomously creating and managing large number of data partitions (100s to 1000s). Because they are autonomously maintained, resources required to manage the partitions are minimal. This kind of massive partitioning results in:
- partitions that are small, efficiently managed and load balanced; and
- systems that do not required re-partitioning events to define additional partitions , even when hardware is changed
“Shared-all” and “shared nothing” architectures allowing scalability through multiple data partitions and cross-partition querying and transaction processing
Transaction processing
In computer science, transaction processing is information processing that is divided into individual, indivisible operations, called transactions. Each transaction must succeed or fail as a complete unit; it cannot remain in an intermediate state...
without full partition scanning.
Horizontal Data Partitioning
Partitioning database sources from consumers is a fundamental concept. With greater number of database sources, inserting a horizontal data virtualizationData virtualization
Data virtualization describes the process of abstracting disparate data sources through a single data access layer ....
layer between the sources and consumers helps address this complexity. Rick van der Lans, author of multiple books on SQL and relational databases, has defined data virtualization as "Data virtualization is the process of offering data consumers a data access interface that hides the technical aspects of stored data, such as location, storage structure, API, access language, and storage technology."
Database Virtualization Advantages
- Added flexibility and agility for existing computing infrastructure
- Enhanced database performance
- Pooling and sharing computing resources
- Simplification of administration and management
- Increased fault toleranceFault-tolerant systemFault-tolerance or graceful degradation is the property that enables a system to continue operating properly in the event of the failure of some of its components. A newer approach is progressive enhancement...
External links
- Window Security.com: http://www.windowsecurity.com/whitepapers/Virtualization.html
- What is Database Virtualization http://www.havemacwillblog.com/2008/09/what-is-database-virtualization/
- Databases: The Next Big Virtualization Thing http://www.eweek.com/c/a/Database/Databases-The-Next-Big-Virtualization-Thing-197097/