Benchmark Extension Systems

From Schema Evolution
Revision as of 12:41, 23 October 2008 by Ham (Talk | contribs)

Jump to: navigation, search

This page shows several Schema Evolution Systems. If you are looking for real schema evolving data, then click Benchmark Extension Datasets.

Contents

Schema Evolution Systems

Open Source

Liquibase (JAVA)

Liquibase is an open source (LGPL), DBMS-independent library for tracking, managing and applying database changes. It is built on a simple premise: All database changes (structure and data) are stored in an XML-based descriptive manner and checked into source control.

Document Predictability Transformation Reversibility
Schema DBDoc Change log & Diff Yes lose-less operation
Data DBDoc Change log & Diff Yes lose-less operation
Query/Update N/A SQL Output N/A N/A
Other Objects DBDoc Change log & Diff Yes lose-less operation

MetaBase

MetaBase is a DBMS-independent PHP API to access SQL databases. It supports MySQL, PostgreSQL, Oracle, Microsoft SQL server, Microsoft Access, ODBC, Interbase, Informix, MiniSQL, and SQLite. It supports nested transactions, blobs, and prepared queries. It can install database schemas defined in a DBMS independent XML format that describe tables, indexes, primary keys, and auto-increment sequences. It is also able to upgrade a database to a new schema without affecting the data that was stored since it was installed or upgraded for the last time. There is also schema reverse engineering support.

Document Predictability Transformation Reversibility
Schema Probably Yes Probably No Yes Yes
Data Probably Yes Probably No Yes Probably No
Query/Update N/A N/A N/A N/A
Other Objects Probably Yes Probably No Some Yes Probably No

CL-Migration (MIT)

CL-Migration is a port of the database migrations feature of Ruby on Rails to Common Lisp. cl-migrations is intended to provide a simple way to version-control your database changes. As a web project grows, it's database will go through numerous structural changes. Even if the schema is available as an sql file for creating a database instance, it can quickly get out of sync with the actual database. Also, if things go wrong with a new version, there should be a proper way to disable new changes to database and bring it back to a previously known good position. cl-migrations creates a new file with a version number everytime a new database change to the database structure is to be made. It can revert, or forward to a given version number, or move the database to the latest version if no version number is given. cl-migrations does not yet have the ability to generate a migration out of an existing database schema. This feature will be added soon.

Schema Compare

Schema Compare is a PHP script that will compare two database schema's and show the differences side-by-side. It will also generate sql statements that will alter the old database to match the schema of the new database.

Toolkit For Oracle

TORa supports basic database & schema comparison.

DBIx-Migration (Perl Module)

DBIx-Migration is Seamless DB schema up- and downgrades. Only basic migration functions.

Python Migration Packages[1]

Some packages support reversibility, but most of them are not.

Document Predictability Transformation Reversibility
Schema Probably N/A Yes few of Packages
Data Probably N/A Yes few of Packages
Query/Update N/A N/A N/A N/A
Other Objects N/A N/A Probably N/A

SQL Alchemy Migrate

SQL Alchemy Migrate is one of Python packages.

Ruby on Rails Migration Packages[2]

DB2-Ruby on Rails Migration

Document Predictability Transformation Reversibility
Schema Probably N/A Yes N/A
Data Probably N/A Yes N/A
Query/Update N/A N/A N/A N/A
Other Objects Probably N/A Probably N/A

Simple Schema Migration for Django[3]

No predictability, Probably No Reversibility. But Django, and Ruby on Rails Migration are commonly used. RailsVsDjango

Cake DB Migration[4]

Similar to Ruby on Rails Migration. It is coded by PHP.


Industrial

DB2® Change Management Expert

DB2 Change Management Expert is a powerful and flexible tool that simplifies the process of identifying, analyzing, and implementing database schema changes for DB2 UDB for Linux®, UNIX, and Windows®. DB2 Change Management Expert simplifies the process of managing schema changes. You can use DB2 Change Management Expert to visualize your changes before you make them. You can use DB2 Change Management Expert to apply change commands to physical data models, which enables you to see the results of the change commands before you deploy the changes against the actual DB2 database. Applying a change command to a model is similar to issuing a command against DB2.

Document Predictability Transformation Reversibility
Schema Creates a historical base model Displays related schema changes, delta DDL Graphical Reverse
Data  ? Aggregates summary Yes  ?
Query/Update N/A N/A N/A N/A
Other Objects  ? database dependencies Probably Yes  ?

Oracle Change Management Pack

Oracle Change Management Pack introduces integrated, Web-based tools for capturing and comparing metadata definitions. These tools provide a powerful system for tracking both metadata dictionary changes within a single database and differences between databases. Existing Oracle Change Management Pack components let users carry out schema upgrades and other complex database changes effortlessly, safely, and without loss of data.

Document Predictability Transformation Reversibility
Schema Backing out Yes Graphical Reverse
Data Probably Yes Yes Yes Reverse
Query/Update N/A Probably--Impact Report N/A N/A
Other Objects  ? Probably Yes Yes Reverse

MySQL Workbench - Change Management

MySQL Workbench enables a DBA, developer, or data architect to visually design, generate, and manage all types of databases including Web, OLTP, and data warehouse databases. It includes everything a data modeler needs for creating complex ER models, and also delivers key features for performing difficult change management and documentation tasks that normally require much time and effort. Database change management is a difficult and complex process, which involves maintaining different versions of database schemas and manually modifying existing databases. To help DBAs and developers with change management, MySQL Workbench includes Schema Synchronization and Comparison utilities. A DBA can compare two live databases or a model and a live database and visually see the differences, and also perform a synchronization between a model and a live database or vice versa.

Document Predictability Transformation Reversibility
Schema DBDoc* Yes Graphical Reverse
Data DBDoc* Yes Yes Reverse
Query/Update N/A N/A N/A N/A
Other Objects Probably DBDoc* Yes Yes Reverse

[*] DBDoc is available only on commercial version.

IDERA SQL Change Manager

IDERA SQL Change Manager is a powerful solution for simplifying and automating change management for Microsoft SQL Server databases. SQL change manager streamlines database change management procedures by capturing periodic database schema snapshots, highlighting changes from a baseline, and enabling easy roll-back, roll-out and recovery of lost or damaged database objects. Designed to meet the needs of enterprise-scale SQL Server implementations, SQL change manager easily scales to monitor and automate schema changes in environments of any size.

Document Predictability Transformation Reversibility
Schema Version Control Yes Graphical Rollback
Data Version Control Yes Yes Rollback
Query/Update N/A N/A N/A N/A
Other Objects Version Control Yes Yes Rollback

Embarcardero Change Manager

Embarcardero Change Manager offers database administrators and developers a powerful set of tools to simplify and automate the database change management lifecycle. Change Manager's schema compare and alter, data compare and synchronization, and configuration auditing capabilities report on database changes, roll out new releases, and pinpoint database performance problems that result from both planned and unplanned changes.

Document Predictability Transformation Reversibility
Schema record of database schema Yes Yes  ?
Data  ? Probably Yes Probably Yes  ?
Query/Update N/A N/A N/A N/A
Other Objects  ? Probably Yes Probably Yes  ?

RedGate SQL Solutions (multiple solutions)

RedGate SQL Compare is the industry-standard tool for comparing and synchronizing SQL Server database schemas. It's used by over 150,000 developers, DBAs and test engineers worldwide because it's easy to use, it's fast, and it saves time. RedGate SQL Data Compare is used for automating data migrations, analyzing corrupted data, restoring row-level data from backups and compiling audit trails of missing or changed data. It's the industry standard tool for comparing and synchronizing the contents of two databases because it's very reliable and also very fast. RedGate SQL Dependency Tracker allows you to dynamically explore all your database object dependencies, using a range of graphical layouts. You can analyze large Microsoft SQL 2000, 2005 and 2008 databases and produce an easy-to-read dependency diagram for thorough pre-impact analysis of all database changes. SQL Refactor allows you to automatically format your SQL code and database objects in the style of your choice. SQL Refactor improves the quality of your code, making it easier to read, understand and share amongst a team. A companion tool to SQL Prompt, SQL Refactor dramatically speeds up database development and administration, without impacting on the behavior of your database and applications.

Document Predictability Transformation Reversibility
Schema database versioning* Yes* Yes*  ?
Data database versioning** Yes** Yes**  ?
Query/Update N/A N/A N/A N/A
Other Objects Yes*** Yes*** Yes****  ?

[*] SQL Compare [**] SQL Data Compare [***] SQL Dependency Tracker [****] SQL Refactor

Best SoftTool SQL DB Compare

SQL DB Compare is a robust database schema/data comparison and synchronization tool for SQL Server databases. It provides you great ease and productivity to manage SQL Server database development and production maintenance.

Document Predictability Transformation Reversibility
Schema  ? Yes Yes  ?
Data  ? Yes Yes  ?
Query/Update  ? N/A N/A N/A
Other Objects  ? Yes Yes  ?

Toad® DBA Suite

Toad® DBA Suite is a bundle comprised of four tools that simplify common database administration tasks and help you become more proactive in solving database-related performance issues before they impact the production environment. As a database administrator (DBA), you have to be more versatile than ever before. That's because you are under constant pressure to implement application and database changes and quickly resolve problems, while preventing data loss or corruption. Plus, you must manage a variety of toolsets, while meeting service levels for performance and availability.

Document Predictability Transformation Reversibility
Schema  ?  ? Yes  ?
Data  ?  ?  ?  ?
Query/Update N/A N/A N/A N/A
Other Objects  ?  ? Probably--Yes  ?

Aldon Change Management Software

Aldon Lifecycle Management Solution brings process management, quality and predictability to database application development. Aldon's database change solution manages database and application code in a unified environment, greatly simplifying code development across multiple databases on multiple platforms. Database development can be easily integrated with application development using the Aldon database change and source management solution.

Altova Schema Agent

Altova SchemaAgent® 2008 is the visionary tool for analyzing and managing relationships among XML Schemas, XML instance documents, XSLT files,and WSDL files, as well as viewing files used in Altova MapForce data mapping projects – across a project, an intranet, or even an enterprise. It allows you to visualize and manage XML file relationships easily via its graphical design view, and create new relationships using drag-and-drop functionality to automatically configure imports, includes, and/or redefines (IIRs).

DTM Database Suite (multiple solutions)

DTM Database Suite

Document Predictability Transformation Reversibility
Schema  ? DTM Schema Comparer DTM Migration Kit  ?
Data  ? DTM Migration Kit DTM Migration Kit  ?
Query/Update N/A N/A N/A N/A
Other Objects  ?  ?  ?  ?

SwisSQL DB Change Manager

SwisSQL DB Change Manager is an affordable and easy-to-use tool for Comparison and Synchronization of Microsoft SQL Server database schema. It also offers powerful Reporting, Auditing and a Web based client interface which makes it the best fit for collaborative database development and database change management. SwisSQL Data Migration Tool helps the migration and transfer of database schemas and data across leading databases such as Oracle, IBM DB2, MS-SQL Server, Sybase, SAP DB, MySQL, PostgreSQL and MS Access. It offers an open, user-friendly, and extensible migration process ensuring reliability and data integrity.

Document Predictability Transformation Reversibility
Schema Version Control Yes Yes Yes
Data  ?*  ?*  ?* N/A
Query/Update N/A  ?**  ?** N/A
Other Objects Probably Yes*** Yes*** N/A

[*] Yes, if Data Migration Tool supports schema evolution [**] Yes, if SwisSQL SQL Query Migration Tools support schema evolution. But probably not. [***] SwisSQL Stored Procedure Migration Tools

Academic

CLIO(UToronto&IBM)[5]

Papers


ReXSA (UCR, IBM)

Paper Abstract: In response to the widespread use of the XML format for document representation and message exchange, major database vendors support XML in terms of persistence, querying and indexing. Specifically, the recently released IBM DB2 9 (for Linux, Unix and Windows) is a hybrid data server with optimized management of both XML and relational data. With the new option of storing and querying XML in a relational DBMS, data architects face the the decision of what portion of their data to persist as XML and what portion as relational data. This problem has not been addressed yet and represents a serious need in the industry. Hence, this paper describes ReXSA, a schema advisor tool that is being prototyped for IBM DB2 9. ReXSA proposes candidate database schemas given an information model of the enterprise data. It has the advantage of considering qualitative properties of the information model such as reuse, evolution and performance profiles for deciding how to persist the data. Finally, we show the viability and practicality of ReXSA by applying it to custom and real usecases.

SCIA (UCSD)

IMIS

ACRoSS

PRISM

MISC

Microsoft Visual Studio 2005 Team Edition for Database Professionals[6]

Document Predictability Transformation Reversibility
Schema
Data
Query/Update
Other Objects

Experiment

1. Liquibase, 2. django or rubyonrails, 3. MySQL Workbench, 4. One more Commercial, 5. one or two more academic, 6. PRISM

Personal tools