SlideShare a Scribd company logo
1 of 32
Download to read offline
Migration to Open Source
Databases
Jutta Horstmann
www.osdbmigration.org
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 2
whoami
● Unix/Linux sysadmin
● DBA, developer (Informix)
● DB developer (Oracle)
● Web stuff (MySQL, PostgreSQL)
● Claim to Fame: OpenUsability.org
● Comp Sci Diploma Thesis:
Migration to Open Source Databases
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 3
Agenda
● What's this?
● Why migrate?
● Where to migrate?
● How to migrate?
● What to migrate?
➔ About
➔ Pros and Cons
➔ Open Source Databases
➔ Workflow: Activities
➔ Workflow: Assets
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 4
Migration?
"The process of changing from the use of one platform,
environment, IT system, etc., to another, esp. in such a
way as to avoid interruptions in service."
(Oxford English Dictionary)
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 5
Migration: Objectives
The target system:
● same functionality
● extendable
● incorporate all data
● modern hardware,
software, architecture
The migration workflow:
● Minimize risk
● Stay on budget
● Deliver in due time
● Minimize downtime
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 6
OSDB Migration:Pros and Cons
YesNo
● Cost? Time? Effort?
● Lack of roadmap
● Licensing
● ISV Support
● Maintenance
● Accountability
● Features
● Features?
● TCO
● Open Source
– Code
– Community
● Standards
● Security
● Independence
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 7
Where to migrate?
Firebird MaxDB Ingres
MySQLPostgreSQL
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 8
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 9
Enterprise-Level?
Requirements:
● Advanced data integrity mechanisms
● Advanced database objects
● Advanced SQL features
● Advanced features, tools, support for
– Performance and scalability
– (High) Availability
– Security
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 10
OSDB Features
Firebird
1.5
Ingres
r3
MySQL
4.1
MaxDB
7.5
PostgreSQL
8.0
Advanced
Indexing
GIS support
MVCC
Two phase
commit
UD Functions
UD data types
Updatable Views
MyISAM
MyISAM
InnoDB
v.5.0v.7.6
v.5.0
v.8.1v.5.0
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 11
Performance / Scalability
Firebird
1.5
Ingres
r3
MySQL
4.1
MaxDB
7.5
PostgreSQL
8.0
Tablespaces
Table
Partitioning
Parallelization
Built-In
Clustering
Built-In
Load Balancing
v.8.1
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 12
How to migrate?
Database Migration Workflow
● Activity-Centered?
● Asset-Centered?
● Proposal: Mixed-Model Workflow
● Walk-Through
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 13
Activity-Centered Workflow
Analysis
Data
SQL
Schema
Infra-
structure
DBMS
Data
SQL
Schema
DBMS
Data
SQL
Schema
DBMS
Data
SQL
Schema
DBMS
Design Implementation Test
Source System Source vs. Target
System
Target System Target System
Infra-
structure
Infra-
structure
Infra-
structure
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 14
Asset-Centered Workflow
Analysis
Desig
n
DBMS
Analysis
Design
Implementation
Test
Analysis
Desig
n
Analysis
Design
Implementation
Test
Analysis
Desig
n
Analysis
Design
Implementation
Test
Analysis
Desig
n
Analysis
Design
Implementation
Test
Analysis
Desig
n
Analysis
Design
Implementation
Test
Schema Data SQL
Infra-
structure
Source
System
Source
vs. Target
System
Target
System
Target
System
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 15
Mixed-Model Workflow
1. Analyze the whole source system (all assets).
2. Migrate the DBMS software (design, implement, test).
3. Migrate the schema(s) (design, implement).
4. Migrate test data (design, implement, test).
5. Test the migrated schema(s) with the test data.
6. Migrate the client SQL (design, implement, test).
7. Migrate the database system's infrastructure (d, i, t).
8. Cut-over: Full data migration.
9. Final testing and evaluation.
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 16
Analyze the whole system
Analysis
Data
SQL
Schema
Infra-
structure
DBMS ● How is the software configured?
● Complexity, quality of database design?
● How much data? Which condition?
● SQL isolated? Standard compliant?
● Tools, Policies, Tuning ...?
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 17
Where to look? Who to ask?
?
Application
Data
Processes
Documentation
Data Dictionary
History
Data Flows
Data Dictionary
Developers, Admins, Users
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 18
Migrate the DBMS software
1. Choose Open Source DBMS
2. Devise mappings for configurations
3. Install & configure new software
4. Validate the working of the DBMS by
using test databases and tools
Design
Implemen-
tation
Test
DBMS
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 19
Migrate the schema(s)
Design
Implemen-
tation
Schema
Test
1. Provide abstraction (logical, conceptual?)
2. Devise mappings to target system
3. Implement by loading converted schema
into target system
4.Validate the schema's correctness based
on loading and querying test data.
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 20
Migrate Test Data
1. Correction and “cleansing” of “dirty data”
2. Devise conversions and mappings
3. Transfer some test data:
a) Extraction
b)Transformation
c) Load
4. Test: Errors at load? Query data!
Design
Implement
Test Data
Test
Data
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 21
Migrate Client SQL
Database connectivity
● Change ODBC/JDBC driver
● Switch client
● Client source available: Migrate!
1. Provide abstraction (Standard SQL) OR
2. Convert directly to target SQL syntax
3. Test statements against schema and
test data
Design
Implemen-
tation
Test
SQL
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 22
Migrate Infrastructure
Design
Infra-
structure
Test
● Tools: Administration, Development,
Design
● Change ODBC/JDBC driver
● Switch client
● Administrative Tasks
– Gather policies and jobs
– Implement them in the target system way
Implementation
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 23
Full Data Migration (Cut-Over)
1. Strategy:
a) Cold Turkey?
b) Chicken Little?
c) Butterfly?
2. Data Transfer:
Extraction, Transformation, Load
3. Test: Errors at load? Query data!
Design
Test
Data
Implementation
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 24
“Cold Turkey”
● Take source system offline
● Extract data
● Transform data
● Load data into target system
● Take target system online
Problems:
● How long offline? How much data?
● Fallback?
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 25
“Chicken Little”
● Source and target system operate in parallel
● “Gateway” coordinates and maps queries
● Incremental data migration
Problem:
● Complex implementation
● Update consistency?
Gateway
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 26
“Butterfly”
● Only source system online
● Data gets frozen read-only
● Store manipulation results in “Temp Store 0”
● Transfer frozen data
● Freeze TS0, store manipulation results in TS1
● Transfer frozen data ... and so on
● “Data Access Allocator coordinates and maps
queries
● Problem: Complex implementation!
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 27
“Butterfly”
Data Access Allocator
Temp
Store 1 TS 2 TS n
Read-only
TS n+1
Data
Transformer
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 28
Summary: Problems
● Different SQL implementations
● User-defined data types/functions
● Stored Procedures
● Proprietary interfaces
● Flawed schema design
● Differences in Data Types
● “Dirty Data”
● Reserved Words
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 29
Help! - Migration Tools
● Automatization
● Integrity violation detection
● Re-Use
● Knowledge on source and target system
● Documentation
● Code Generation
● Script Scheduling
● Validation
● Speed!
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 30
Migration Tools, Examples
● Closed Source:
– SQLWays (Ispirer). Only Windows.
● Source: any, Target: MySQL, PostgreSQL
– ProgressionDB (Versora). Linux, Windows.
● MSSQL -> MySQL, PostgreSQL, Ingres
● Open Source:
– Ingres Mio. $ Challenge (CA): shift2ingres
– MySQL Migration Toolkit (MySQL AB)
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 31
Summary
Migration to Open Source Databases ?
● Several Open Source options
● Migration is an ambitious project
● Workflow and results depending on state
of source system
● Automatize the process, where possible!
Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 32
Questions?

More Related Content

What's hot

Is It Fast? : Measuring MongoDB Performance
Is It Fast? : Measuring MongoDB PerformanceIs It Fast? : Measuring MongoDB Performance
Is It Fast? : Measuring MongoDB PerformanceTim Callaghan
 
Enterprise class deployment for GeoServer and GeoWebcache Optimizing perform...
Enterprise class deployment  for GeoServer and GeoWebcache Optimizing perform...Enterprise class deployment  for GeoServer and GeoWebcache Optimizing perform...
Enterprise class deployment for GeoServer and GeoWebcache Optimizing perform...GeoSolutions
 
MySQL Workbench for DFW Unix Users Group
MySQL Workbench for DFW Unix Users GroupMySQL Workbench for DFW Unix Users Group
MySQL Workbench for DFW Unix Users GroupDave Stokes
 
OSDC 2013 | Distributed Storage with GlusterFS by Dr. Udo Seidel
OSDC 2013 | Distributed Storage with GlusterFS by Dr. Udo SeidelOSDC 2013 | Distributed Storage with GlusterFS by Dr. Udo Seidel
OSDC 2013 | Distributed Storage with GlusterFS by Dr. Udo SeidelNETWAYS
 
Level 101 for Presto: What is PrestoDB?
Level 101 for Presto: What is PrestoDB?Level 101 for Presto: What is PrestoDB?
Level 101 for Presto: What is PrestoDB?Ali LeClerc
 
Electron, databases, and RxDB
Electron, databases, and RxDBElectron, databases, and RxDB
Electron, databases, and RxDBBen Gotow
 
Introducing Infinispan
Introducing InfinispanIntroducing Infinispan
Introducing InfinispanPT.JUG
 
Ceph and RocksDB
Ceph and RocksDBCeph and RocksDB
Ceph and RocksDBSage Weil
 
The Hive Think Tank: Rocking the Database World with RocksDB
The Hive Think Tank:  Rocking the Database World with RocksDBThe Hive Think Tank:  Rocking the Database World with RocksDB
The Hive Think Tank: Rocking the Database World with RocksDBThe Hive
 
Collo -01 , en
Collo -01 , enCollo -01 , en
Collo -01 , en지현 이
 
Session 2 deploy and run Mtech 1st lab question Blob and Clob using java
Session 2 deploy and run Mtech 1st lab question Blob and Clob using java Session 2 deploy and run Mtech 1st lab question Blob and Clob using java
Session 2 deploy and run Mtech 1st lab question Blob and Clob using java Pratik Thakkar
 
The Hive Think Tank: Rocking the Database World with RocksDB
The Hive Think Tank: Rocking the Database World with RocksDBThe Hive Think Tank: Rocking the Database World with RocksDB
The Hive Think Tank: Rocking the Database World with RocksDBThe Hive
 
An introduction to Pincaster
An introduction to PincasterAn introduction to Pincaster
An introduction to PincasterFrank Denis
 
Postgres-XC as a Key Value Store Compared To MongoDB
Postgres-XC as a Key Value Store Compared To MongoDBPostgres-XC as a Key Value Store Compared To MongoDB
Postgres-XC as a Key Value Store Compared To MongoDBMason Sharp
 

What's hot (16)

RocksDB meetup
RocksDB meetupRocksDB meetup
RocksDB meetup
 
Is It Fast? : Measuring MongoDB Performance
Is It Fast? : Measuring MongoDB PerformanceIs It Fast? : Measuring MongoDB Performance
Is It Fast? : Measuring MongoDB Performance
 
Enterprise class deployment for GeoServer and GeoWebcache Optimizing perform...
Enterprise class deployment  for GeoServer and GeoWebcache Optimizing perform...Enterprise class deployment  for GeoServer and GeoWebcache Optimizing perform...
Enterprise class deployment for GeoServer and GeoWebcache Optimizing perform...
 
MySQL Workbench for DFW Unix Users Group
MySQL Workbench for DFW Unix Users GroupMySQL Workbench for DFW Unix Users Group
MySQL Workbench for DFW Unix Users Group
 
OSDC 2013 | Distributed Storage with GlusterFS by Dr. Udo Seidel
OSDC 2013 | Distributed Storage with GlusterFS by Dr. Udo SeidelOSDC 2013 | Distributed Storage with GlusterFS by Dr. Udo Seidel
OSDC 2013 | Distributed Storage with GlusterFS by Dr. Udo Seidel
 
Level 101 for Presto: What is PrestoDB?
Level 101 for Presto: What is PrestoDB?Level 101 for Presto: What is PrestoDB?
Level 101 for Presto: What is PrestoDB?
 
Electron, databases, and RxDB
Electron, databases, and RxDBElectron, databases, and RxDB
Electron, databases, and RxDB
 
Introducing Infinispan
Introducing InfinispanIntroducing Infinispan
Introducing Infinispan
 
Ceph and RocksDB
Ceph and RocksDBCeph and RocksDB
Ceph and RocksDB
 
Dedupe nmamit
Dedupe nmamitDedupe nmamit
Dedupe nmamit
 
The Hive Think Tank: Rocking the Database World with RocksDB
The Hive Think Tank:  Rocking the Database World with RocksDBThe Hive Think Tank:  Rocking the Database World with RocksDB
The Hive Think Tank: Rocking the Database World with RocksDB
 
Collo -01 , en
Collo -01 , enCollo -01 , en
Collo -01 , en
 
Session 2 deploy and run Mtech 1st lab question Blob and Clob using java
Session 2 deploy and run Mtech 1st lab question Blob and Clob using java Session 2 deploy and run Mtech 1st lab question Blob and Clob using java
Session 2 deploy and run Mtech 1st lab question Blob and Clob using java
 
The Hive Think Tank: Rocking the Database World with RocksDB
The Hive Think Tank: Rocking the Database World with RocksDBThe Hive Think Tank: Rocking the Database World with RocksDB
The Hive Think Tank: Rocking the Database World with RocksDB
 
An introduction to Pincaster
An introduction to PincasterAn introduction to Pincaster
An introduction to Pincaster
 
Postgres-XC as a Key Value Store Compared To MongoDB
Postgres-XC as a Key Value Store Compared To MongoDBPostgres-XC as a Key Value Store Compared To MongoDB
Postgres-XC as a Key Value Store Compared To MongoDB
 

Similar to Guide to Migrating Databases to Open Source

Presentation sql server to oracle a database migration roadmap
Presentation    sql server to oracle a database migration roadmapPresentation    sql server to oracle a database migration roadmap
Presentation sql server to oracle a database migration roadmapxKinAnx
 
WhereHows: Taming Metadata for 150K Datasets Over 9 Data Platforms
WhereHows: Taming Metadata for 150K Datasets Over 9 Data PlatformsWhereHows: Taming Metadata for 150K Datasets Over 9 Data Platforms
WhereHows: Taming Metadata for 150K Datasets Over 9 Data PlatformsMars Lan
 
ApacheCon 2022_ Large scale unification of file format.pptx
ApacheCon 2022_ Large scale unification of file format.pptxApacheCon 2022_ Large scale unification of file format.pptx
ApacheCon 2022_ Large scale unification of file format.pptxXinliShang1
 
Ledingkart Meetup #2: Scaling Search @Lendingkart
Ledingkart Meetup #2: Scaling Search @LendingkartLedingkart Meetup #2: Scaling Search @Lendingkart
Ledingkart Meetup #2: Scaling Search @LendingkartMukesh Singh
 
A Day in the Life of a Druid Implementor and Druid's Roadmap
A Day in the Life of a Druid Implementor and Druid's RoadmapA Day in the Life of a Druid Implementor and Druid's Roadmap
A Day in the Life of a Druid Implementor and Druid's RoadmapItai Yaffe
 
2022-06-23 Apache Arrow and DataFusion_ Changing the Game for implementing Da...
2022-06-23 Apache Arrow and DataFusion_ Changing the Game for implementing Da...2022-06-23 Apache Arrow and DataFusion_ Changing the Game for implementing Da...
2022-06-23 Apache Arrow and DataFusion_ Changing the Game for implementing Da...Andrew Lamb
 
Realtime Indexing for Fast Queries on Massive Semi-Structured Data
Realtime Indexing for Fast Queries on Massive Semi-Structured DataRealtime Indexing for Fast Queries on Massive Semi-Structured Data
Realtime Indexing for Fast Queries on Massive Semi-Structured DataScyllaDB
 
Softshake 2013: Introduction to NoSQL with Couchbase
Softshake 2013: Introduction to NoSQL with CouchbaseSoftshake 2013: Introduction to NoSQL with Couchbase
Softshake 2013: Introduction to NoSQL with CouchbaseTugdual Grall
 
Doctrine Project
Doctrine ProjectDoctrine Project
Doctrine ProjectDaniel Lima
 
Agile Oracle to PostgreSQL migrations (PGConf.EU 2013)
Agile Oracle to PostgreSQL migrations (PGConf.EU 2013)Agile Oracle to PostgreSQL migrations (PGConf.EU 2013)
Agile Oracle to PostgreSQL migrations (PGConf.EU 2013)Gabriele Bartolini
 
20160922 Materials Data Facility TMS Webinar
20160922 Materials Data Facility TMS Webinar20160922 Materials Data Facility TMS Webinar
20160922 Materials Data Facility TMS WebinarBen Blaiszik
 
Distributed real time stream processing- why and how
Distributed real time stream processing- why and howDistributed real time stream processing- why and how
Distributed real time stream processing- why and howPetr Zapletal
 
[214]유연하고 확장성 있는 빅데이터 처리
[214]유연하고 확장성 있는 빅데이터 처리[214]유연하고 확장성 있는 빅데이터 처리
[214]유연하고 확장성 있는 빅데이터 처리NAVER D2
 
Build an Open Source Data Lake For Data Scientists
Build an Open Source Data Lake For Data ScientistsBuild an Open Source Data Lake For Data Scientists
Build an Open Source Data Lake For Data ScientistsShawn Zhu
 
5 Steps for Migrating Relational Databases to Next-Gen Architectures
5 Steps for Migrating Relational Databases to Next-Gen Architectures5 Steps for Migrating Relational Databases to Next-Gen Architectures
5 Steps for Migrating Relational Databases to Next-Gen ArchitecturesNuoDB
 
CDC patterns in Apache Kafka®
CDC patterns in Apache Kafka®CDC patterns in Apache Kafka®
CDC patterns in Apache Kafka®confluent
 

Similar to Guide to Migrating Databases to Open Source (20)

Presentation sql server to oracle a database migration roadmap
Presentation    sql server to oracle a database migration roadmapPresentation    sql server to oracle a database migration roadmap
Presentation sql server to oracle a database migration roadmap
 
WhereHows: Taming Metadata for 150K Datasets Over 9 Data Platforms
WhereHows: Taming Metadata for 150K Datasets Over 9 Data PlatformsWhereHows: Taming Metadata for 150K Datasets Over 9 Data Platforms
WhereHows: Taming Metadata for 150K Datasets Over 9 Data Platforms
 
ApacheCon 2022_ Large scale unification of file format.pptx
ApacheCon 2022_ Large scale unification of file format.pptxApacheCon 2022_ Large scale unification of file format.pptx
ApacheCon 2022_ Large scale unification of file format.pptx
 
Apache airflow
Apache airflowApache airflow
Apache airflow
 
Ledingkart Meetup #2: Scaling Search @Lendingkart
Ledingkart Meetup #2: Scaling Search @LendingkartLedingkart Meetup #2: Scaling Search @Lendingkart
Ledingkart Meetup #2: Scaling Search @Lendingkart
 
A Day in the Life of a Druid Implementor and Druid's Roadmap
A Day in the Life of a Druid Implementor and Druid's RoadmapA Day in the Life of a Druid Implementor and Druid's Roadmap
A Day in the Life of a Druid Implementor and Druid's Roadmap
 
2022-06-23 Apache Arrow and DataFusion_ Changing the Game for implementing Da...
2022-06-23 Apache Arrow and DataFusion_ Changing the Game for implementing Da...2022-06-23 Apache Arrow and DataFusion_ Changing the Game for implementing Da...
2022-06-23 Apache Arrow and DataFusion_ Changing the Game for implementing Da...
 
Hadoop-2.6.0 Slides
Hadoop-2.6.0 SlidesHadoop-2.6.0 Slides
Hadoop-2.6.0 Slides
 
Realtime Indexing for Fast Queries on Massive Semi-Structured Data
Realtime Indexing for Fast Queries on Massive Semi-Structured DataRealtime Indexing for Fast Queries on Massive Semi-Structured Data
Realtime Indexing for Fast Queries on Massive Semi-Structured Data
 
Softshake 2013: Introduction to NoSQL with Couchbase
Softshake 2013: Introduction to NoSQL with CouchbaseSoftshake 2013: Introduction to NoSQL with Couchbase
Softshake 2013: Introduction to NoSQL with Couchbase
 
Relational vs. Non-Relational
Relational vs. Non-RelationalRelational vs. Non-Relational
Relational vs. Non-Relational
 
Doctrine Project
Doctrine ProjectDoctrine Project
Doctrine Project
 
Agile Oracle to PostgreSQL migrations (PGConf.EU 2013)
Agile Oracle to PostgreSQL migrations (PGConf.EU 2013)Agile Oracle to PostgreSQL migrations (PGConf.EU 2013)
Agile Oracle to PostgreSQL migrations (PGConf.EU 2013)
 
20160922 Materials Data Facility TMS Webinar
20160922 Materials Data Facility TMS Webinar20160922 Materials Data Facility TMS Webinar
20160922 Materials Data Facility TMS Webinar
 
Distributed real time stream processing- why and how
Distributed real time stream processing- why and howDistributed real time stream processing- why and how
Distributed real time stream processing- why and how
 
[214]유연하고 확장성 있는 빅데이터 처리
[214]유연하고 확장성 있는 빅데이터 처리[214]유연하고 확장성 있는 빅데이터 처리
[214]유연하고 확장성 있는 빅데이터 처리
 
Build an Open Source Data Lake For Data Scientists
Build an Open Source Data Lake For Data ScientistsBuild an Open Source Data Lake For Data Scientists
Build an Open Source Data Lake For Data Scientists
 
5 Steps for Migrating Relational Databases to Next-Gen Architectures
5 Steps for Migrating Relational Databases to Next-Gen Architectures5 Steps for Migrating Relational Databases to Next-Gen Architectures
5 Steps for Migrating Relational Databases to Next-Gen Architectures
 
CDC patterns in Apache Kafka®
CDC patterns in Apache Kafka®CDC patterns in Apache Kafka®
CDC patterns in Apache Kafka®
 
CDC to the Max!
CDC to the Max!CDC to the Max!
CDC to the Max!
 

More from Jutta Horstmann

WeAreDevelopers, Berlin, Germany (2019): Same, same but different - Upscaling...
WeAreDevelopers, Berlin, Germany (2019): Same, same but different - Upscaling...WeAreDevelopers, Berlin, Germany (2019): Same, same but different - Upscaling...
WeAreDevelopers, Berlin, Germany (2019): Same, same but different - Upscaling...Jutta Horstmann
 
2017 | To the moon and back Customer Identity and Access Management in a glob...
2017 | To the moon and back Customer Identity and Access Management in a glob...2017 | To the moon and back Customer Identity and Access Management in a glob...
2017 | To the moon and back Customer Identity and Access Management in a glob...Jutta Horstmann
 
2015 | Neues für Redakteure - Usability-Verbesserungen in Drupal 8
2015 | Neues für Redakteure - Usability-Verbesserungen in Drupal 82015 | Neues für Redakteure - Usability-Verbesserungen in Drupal 8
2015 | Neues für Redakteure - Usability-Verbesserungen in Drupal 8Jutta Horstmann
 
2015 | Nutzerzentrierte Architektur großer Websites - Anti-Patterns und Best ...
2015 | Nutzerzentrierte Architektur großer Websites - Anti-Patterns und Best ...2015 | Nutzerzentrierte Architektur großer Websites - Anti-Patterns und Best ...
2015 | Nutzerzentrierte Architektur großer Websites - Anti-Patterns und Best ...Jutta Horstmann
 
2015 | Moderne Informationsarchitektur mit Drupal
2015 | Moderne Informationsarchitektur mit Drupal2015 | Moderne Informationsarchitektur mit Drupal
2015 | Moderne Informationsarchitektur mit DrupalJutta Horstmann
 
2013 | 10 Jahre Open Usability - “Where Open Source meets Usability”
2013 | 10 Jahre Open Usability - “Where Open Source meets Usability”2013 | 10 Jahre Open Usability - “Where Open Source meets Usability”
2013 | 10 Jahre Open Usability - “Where Open Source meets Usability”Jutta Horstmann
 
2011 | Drupal Business: $title, $thesen, $temperamente - Eine Fishbowl-Debatte
2011 | Drupal Business: $title, $thesen, $temperamente - Eine Fishbowl-Debatte2011 | Drupal Business: $title, $thesen, $temperamente - Eine Fishbowl-Debatte
2011 | Drupal Business: $title, $thesen, $temperamente - Eine Fishbowl-DebatteJutta Horstmann
 
2010 | Khairn - Requirement-Driven Project Management
2010 | Khairn - Requirement-Driven Project Management2010 | Khairn - Requirement-Driven Project Management
2010 | Khairn - Requirement-Driven Project ManagementJutta Horstmann
 
2010 | mein!KI.KA – Die Kinderkanal-Community | Drupal Dev Days München
2010 | mein!KI.KA – Die Kinderkanal-Community | Drupal Dev Days München2010 | mein!KI.KA – Die Kinderkanal-Community | Drupal Dev Days München
2010 | mein!KI.KA – Die Kinderkanal-Community | Drupal Dev Days MünchenJutta Horstmann
 
2010 | Khairn - Projekte managen mit Drupal | Drupal Dev Days München
2010 | Khairn - Projekte managen mit Drupal | Drupal Dev Days München2010 | Khairn - Projekte managen mit Drupal | Drupal Dev Days München
2010 | Khairn - Projekte managen mit Drupal | Drupal Dev Days MünchenJutta Horstmann
 
2010 | Khairn - Projekte managen mit Drupal
2010 | Khairn - Projekte managen mit Drupal 2010 | Khairn - Projekte managen mit Drupal
2010 | Khairn - Projekte managen mit Drupal Jutta Horstmann
 
2010 | Projekte managen mit Drupal | DrupalCamp Essen
2010 | Projekte managen mit Drupal | DrupalCamp Essen2010 | Projekte managen mit Drupal | DrupalCamp Essen
2010 | Projekte managen mit Drupal | DrupalCamp EssenJutta Horstmann
 
2010 | mein!KI.KA – Die Kinderkanal-Community | DrupalCamp Essen
2010 | mein!KI.KA – Die Kinderkanal-Community | DrupalCamp Essen2010 | mein!KI.KA – Die Kinderkanal-Community | DrupalCamp Essen
2010 | mein!KI.KA – Die Kinderkanal-Community | DrupalCamp EssenJutta Horstmann
 
2009 | Formulare mit Drupal
2009 | Formulare mit Drupal2009 | Formulare mit Drupal
2009 | Formulare mit DrupalJutta Horstmann
 
2008 | Grundlagen der Linux­-Systemadministration
2008 | Grundlagen der Linux­-Systemadministration2008 | Grundlagen der Linux­-Systemadministration
2008 | Grundlagen der Linux­-SystemadministrationJutta Horstmann
 
2007 | Open Source CMS - Ein Wegweiser durch die große Unübersichtlichkeit
2007 | Open Source CMS - Ein Wegweiser durch die große Unübersichtlichkeit2007 | Open Source CMS - Ein Wegweiser durch die große Unübersichtlichkeit
2007 | Open Source CMS - Ein Wegweiser durch die große UnübersichtlichkeitJutta Horstmann
 
2007 | Drupal in der Praxis - Erfahrungsberichte
2007 | Drupal in der Praxis - Erfahrungsberichte2007 | Drupal in der Praxis - Erfahrungsberichte
2007 | Drupal in der Praxis - ErfahrungsberichteJutta Horstmann
 
2007 | Open Source CMS - Ein Wegweiser durch die große Unübersichtlichkeit | ...
2007 | Open Source CMS - Ein Wegweiser durch die große Unübersichtlichkeit | ...2007 | Open Source CMS - Ein Wegweiser durch die große Unübersichtlichkeit | ...
2007 | Open Source CMS - Ein Wegweiser durch die große Unübersichtlichkeit | ...Jutta Horstmann
 
2006 | Kollaboratives Wissensmanagement mit Plone
2006 | Kollaboratives Wissensmanagement mit Plone2006 | Kollaboratives Wissensmanagement mit Plone
2006 | Kollaboratives Wissensmanagement mit PloneJutta Horstmann
 
2004 | Kryptographie in Theorie und Praxis: Only the Paranoids Survive
2004 | Kryptographie in Theorie und Praxis: Only the Paranoids Survive2004 | Kryptographie in Theorie und Praxis: Only the Paranoids Survive
2004 | Kryptographie in Theorie und Praxis: Only the Paranoids SurviveJutta Horstmann
 

More from Jutta Horstmann (20)

WeAreDevelopers, Berlin, Germany (2019): Same, same but different - Upscaling...
WeAreDevelopers, Berlin, Germany (2019): Same, same but different - Upscaling...WeAreDevelopers, Berlin, Germany (2019): Same, same but different - Upscaling...
WeAreDevelopers, Berlin, Germany (2019): Same, same but different - Upscaling...
 
2017 | To the moon and back Customer Identity and Access Management in a glob...
2017 | To the moon and back Customer Identity and Access Management in a glob...2017 | To the moon and back Customer Identity and Access Management in a glob...
2017 | To the moon and back Customer Identity and Access Management in a glob...
 
2015 | Neues für Redakteure - Usability-Verbesserungen in Drupal 8
2015 | Neues für Redakteure - Usability-Verbesserungen in Drupal 82015 | Neues für Redakteure - Usability-Verbesserungen in Drupal 8
2015 | Neues für Redakteure - Usability-Verbesserungen in Drupal 8
 
2015 | Nutzerzentrierte Architektur großer Websites - Anti-Patterns und Best ...
2015 | Nutzerzentrierte Architektur großer Websites - Anti-Patterns und Best ...2015 | Nutzerzentrierte Architektur großer Websites - Anti-Patterns und Best ...
2015 | Nutzerzentrierte Architektur großer Websites - Anti-Patterns und Best ...
 
2015 | Moderne Informationsarchitektur mit Drupal
2015 | Moderne Informationsarchitektur mit Drupal2015 | Moderne Informationsarchitektur mit Drupal
2015 | Moderne Informationsarchitektur mit Drupal
 
2013 | 10 Jahre Open Usability - “Where Open Source meets Usability”
2013 | 10 Jahre Open Usability - “Where Open Source meets Usability”2013 | 10 Jahre Open Usability - “Where Open Source meets Usability”
2013 | 10 Jahre Open Usability - “Where Open Source meets Usability”
 
2011 | Drupal Business: $title, $thesen, $temperamente - Eine Fishbowl-Debatte
2011 | Drupal Business: $title, $thesen, $temperamente - Eine Fishbowl-Debatte2011 | Drupal Business: $title, $thesen, $temperamente - Eine Fishbowl-Debatte
2011 | Drupal Business: $title, $thesen, $temperamente - Eine Fishbowl-Debatte
 
2010 | Khairn - Requirement-Driven Project Management
2010 | Khairn - Requirement-Driven Project Management2010 | Khairn - Requirement-Driven Project Management
2010 | Khairn - Requirement-Driven Project Management
 
2010 | mein!KI.KA – Die Kinderkanal-Community | Drupal Dev Days München
2010 | mein!KI.KA – Die Kinderkanal-Community | Drupal Dev Days München2010 | mein!KI.KA – Die Kinderkanal-Community | Drupal Dev Days München
2010 | mein!KI.KA – Die Kinderkanal-Community | Drupal Dev Days München
 
2010 | Khairn - Projekte managen mit Drupal | Drupal Dev Days München
2010 | Khairn - Projekte managen mit Drupal | Drupal Dev Days München2010 | Khairn - Projekte managen mit Drupal | Drupal Dev Days München
2010 | Khairn - Projekte managen mit Drupal | Drupal Dev Days München
 
2010 | Khairn - Projekte managen mit Drupal
2010 | Khairn - Projekte managen mit Drupal 2010 | Khairn - Projekte managen mit Drupal
2010 | Khairn - Projekte managen mit Drupal
 
2010 | Projekte managen mit Drupal | DrupalCamp Essen
2010 | Projekte managen mit Drupal | DrupalCamp Essen2010 | Projekte managen mit Drupal | DrupalCamp Essen
2010 | Projekte managen mit Drupal | DrupalCamp Essen
 
2010 | mein!KI.KA – Die Kinderkanal-Community | DrupalCamp Essen
2010 | mein!KI.KA – Die Kinderkanal-Community | DrupalCamp Essen2010 | mein!KI.KA – Die Kinderkanal-Community | DrupalCamp Essen
2010 | mein!KI.KA – Die Kinderkanal-Community | DrupalCamp Essen
 
2009 | Formulare mit Drupal
2009 | Formulare mit Drupal2009 | Formulare mit Drupal
2009 | Formulare mit Drupal
 
2008 | Grundlagen der Linux­-Systemadministration
2008 | Grundlagen der Linux­-Systemadministration2008 | Grundlagen der Linux­-Systemadministration
2008 | Grundlagen der Linux­-Systemadministration
 
2007 | Open Source CMS - Ein Wegweiser durch die große Unübersichtlichkeit
2007 | Open Source CMS - Ein Wegweiser durch die große Unübersichtlichkeit2007 | Open Source CMS - Ein Wegweiser durch die große Unübersichtlichkeit
2007 | Open Source CMS - Ein Wegweiser durch die große Unübersichtlichkeit
 
2007 | Drupal in der Praxis - Erfahrungsberichte
2007 | Drupal in der Praxis - Erfahrungsberichte2007 | Drupal in der Praxis - Erfahrungsberichte
2007 | Drupal in der Praxis - Erfahrungsberichte
 
2007 | Open Source CMS - Ein Wegweiser durch die große Unübersichtlichkeit | ...
2007 | Open Source CMS - Ein Wegweiser durch die große Unübersichtlichkeit | ...2007 | Open Source CMS - Ein Wegweiser durch die große Unübersichtlichkeit | ...
2007 | Open Source CMS - Ein Wegweiser durch die große Unübersichtlichkeit | ...
 
2006 | Kollaboratives Wissensmanagement mit Plone
2006 | Kollaboratives Wissensmanagement mit Plone2006 | Kollaboratives Wissensmanagement mit Plone
2006 | Kollaboratives Wissensmanagement mit Plone
 
2004 | Kryptographie in Theorie und Praxis: Only the Paranoids Survive
2004 | Kryptographie in Theorie und Praxis: Only the Paranoids Survive2004 | Kryptographie in Theorie und Praxis: Only the Paranoids Survive
2004 | Kryptographie in Theorie und Praxis: Only the Paranoids Survive
 

Recently uploaded

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 

Recently uploaded (20)

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 

Guide to Migrating Databases to Open Source

  • 1. Migration to Open Source Databases Jutta Horstmann www.osdbmigration.org
  • 2. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 2 whoami ● Unix/Linux sysadmin ● DBA, developer (Informix) ● DB developer (Oracle) ● Web stuff (MySQL, PostgreSQL) ● Claim to Fame: OpenUsability.org ● Comp Sci Diploma Thesis: Migration to Open Source Databases
  • 3. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 3 Agenda ● What's this? ● Why migrate? ● Where to migrate? ● How to migrate? ● What to migrate? ➔ About ➔ Pros and Cons ➔ Open Source Databases ➔ Workflow: Activities ➔ Workflow: Assets
  • 4. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 4 Migration? "The process of changing from the use of one platform, environment, IT system, etc., to another, esp. in such a way as to avoid interruptions in service." (Oxford English Dictionary)
  • 5. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 5 Migration: Objectives The target system: ● same functionality ● extendable ● incorporate all data ● modern hardware, software, architecture The migration workflow: ● Minimize risk ● Stay on budget ● Deliver in due time ● Minimize downtime
  • 6. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 6 OSDB Migration:Pros and Cons YesNo ● Cost? Time? Effort? ● Lack of roadmap ● Licensing ● ISV Support ● Maintenance ● Accountability ● Features ● Features? ● TCO ● Open Source – Code – Community ● Standards ● Security ● Independence
  • 7. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 7 Where to migrate? Firebird MaxDB Ingres MySQLPostgreSQL
  • 8. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 8
  • 9. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 9 Enterprise-Level? Requirements: ● Advanced data integrity mechanisms ● Advanced database objects ● Advanced SQL features ● Advanced features, tools, support for – Performance and scalability – (High) Availability – Security
  • 10. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 10 OSDB Features Firebird 1.5 Ingres r3 MySQL 4.1 MaxDB 7.5 PostgreSQL 8.0 Advanced Indexing GIS support MVCC Two phase commit UD Functions UD data types Updatable Views MyISAM MyISAM InnoDB v.5.0v.7.6 v.5.0 v.8.1v.5.0
  • 11. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 11 Performance / Scalability Firebird 1.5 Ingres r3 MySQL 4.1 MaxDB 7.5 PostgreSQL 8.0 Tablespaces Table Partitioning Parallelization Built-In Clustering Built-In Load Balancing v.8.1
  • 12. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 12 How to migrate? Database Migration Workflow ● Activity-Centered? ● Asset-Centered? ● Proposal: Mixed-Model Workflow ● Walk-Through
  • 13. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 13 Activity-Centered Workflow Analysis Data SQL Schema Infra- structure DBMS Data SQL Schema DBMS Data SQL Schema DBMS Data SQL Schema DBMS Design Implementation Test Source System Source vs. Target System Target System Target System Infra- structure Infra- structure Infra- structure
  • 14. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 14 Asset-Centered Workflow Analysis Desig n DBMS Analysis Design Implementation Test Analysis Desig n Analysis Design Implementation Test Analysis Desig n Analysis Design Implementation Test Analysis Desig n Analysis Design Implementation Test Analysis Desig n Analysis Design Implementation Test Schema Data SQL Infra- structure Source System Source vs. Target System Target System Target System
  • 15. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 15 Mixed-Model Workflow 1. Analyze the whole source system (all assets). 2. Migrate the DBMS software (design, implement, test). 3. Migrate the schema(s) (design, implement). 4. Migrate test data (design, implement, test). 5. Test the migrated schema(s) with the test data. 6. Migrate the client SQL (design, implement, test). 7. Migrate the database system's infrastructure (d, i, t). 8. Cut-over: Full data migration. 9. Final testing and evaluation.
  • 16. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 16 Analyze the whole system Analysis Data SQL Schema Infra- structure DBMS ● How is the software configured? ● Complexity, quality of database design? ● How much data? Which condition? ● SQL isolated? Standard compliant? ● Tools, Policies, Tuning ...?
  • 17. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 17 Where to look? Who to ask? ? Application Data Processes Documentation Data Dictionary History Data Flows Data Dictionary Developers, Admins, Users
  • 18. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 18 Migrate the DBMS software 1. Choose Open Source DBMS 2. Devise mappings for configurations 3. Install & configure new software 4. Validate the working of the DBMS by using test databases and tools Design Implemen- tation Test DBMS
  • 19. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 19 Migrate the schema(s) Design Implemen- tation Schema Test 1. Provide abstraction (logical, conceptual?) 2. Devise mappings to target system 3. Implement by loading converted schema into target system 4.Validate the schema's correctness based on loading and querying test data.
  • 20. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 20 Migrate Test Data 1. Correction and “cleansing” of “dirty data” 2. Devise conversions and mappings 3. Transfer some test data: a) Extraction b)Transformation c) Load 4. Test: Errors at load? Query data! Design Implement Test Data Test Data
  • 21. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 21 Migrate Client SQL Database connectivity ● Change ODBC/JDBC driver ● Switch client ● Client source available: Migrate! 1. Provide abstraction (Standard SQL) OR 2. Convert directly to target SQL syntax 3. Test statements against schema and test data Design Implemen- tation Test SQL
  • 22. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 22 Migrate Infrastructure Design Infra- structure Test ● Tools: Administration, Development, Design ● Change ODBC/JDBC driver ● Switch client ● Administrative Tasks – Gather policies and jobs – Implement them in the target system way Implementation
  • 23. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 23 Full Data Migration (Cut-Over) 1. Strategy: a) Cold Turkey? b) Chicken Little? c) Butterfly? 2. Data Transfer: Extraction, Transformation, Load 3. Test: Errors at load? Query data! Design Test Data Implementation
  • 24. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 24 “Cold Turkey” ● Take source system offline ● Extract data ● Transform data ● Load data into target system ● Take target system online Problems: ● How long offline? How much data? ● Fallback?
  • 25. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 25 “Chicken Little” ● Source and target system operate in parallel ● “Gateway” coordinates and maps queries ● Incremental data migration Problem: ● Complex implementation ● Update consistency? Gateway
  • 26. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 26 “Butterfly” ● Only source system online ● Data gets frozen read-only ● Store manipulation results in “Temp Store 0” ● Transfer frozen data ● Freeze TS0, store manipulation results in TS1 ● Transfer frozen data ... and so on ● “Data Access Allocator coordinates and maps queries ● Problem: Complex implementation!
  • 27. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 27 “Butterfly” Data Access Allocator Temp Store 1 TS 2 TS n Read-only TS n+1 Data Transformer
  • 28. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 28 Summary: Problems ● Different SQL implementations ● User-defined data types/functions ● Stored Procedures ● Proprietary interfaces ● Flawed schema design ● Differences in Data Types ● “Dirty Data” ● Reserved Words
  • 29. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 29 Help! - Migration Tools ● Automatization ● Integrity violation detection ● Re-Use ● Knowledge on source and target system ● Documentation ● Code Generation ● Script Scheduling ● Validation ● Speed!
  • 30. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 30 Migration Tools, Examples ● Closed Source: – SQLWays (Ispirer). Only Windows. ● Source: any, Target: MySQL, PostgreSQL – ProgressionDB (Versora). Linux, Windows. ● MSSQL -> MySQL, PostgreSQL, Ingres ● Open Source: – Ingres Mio. $ Challenge (CA): shift2ingres – MySQL Migration Toolkit (MySQL AB)
  • 31. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 31 Summary Migration to Open Source Databases ? ● Several Open Source options ● Migration is an ambitious project ● Workflow and results depending on state of source system ● Automatize the process, where possible!
  • 32. Jutta Horstmann, OpenDB Con, Nov 8 2005. http://www.osdbmigration.org 32 Questions?