Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
dbImportPresentation.pdf
Search
Adam Weis
November 28, 2012
1
26
dbImportPresentation.pdf
Adam Weis
November 28, 2012
Tweet
Share
More Decks by Adam Weis
See All by Adam Weis
67-311 Data import presentation
aweis
1
55
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
323
20k
Thoughts on Productivity
jonyablonski
60
3.9k
Docker and Python
trallard
35
2.7k
What’s in a name? Adding method to the madness
productmarketing
PRO
17
2.7k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
155
14k
A designer walks into a library…
pauljervisheath
201
23k
Ruby is Unlike a Banana
tanoku
96
10k
VelocityConf: Rendering Performance Case Studies
addyosmani
321
23k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
9
1.3k
For a Future-Friendly Web
brad_frost
172
9k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
22
1.4k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
8
3.4k
Transcript
67-311 Database Design and Implementation Adam Weis 11/11/12 Wednesday, November
28, 12
Database Redesign Case study: Wednesday, November 28, 12
Database Redesign Case study: Wednesday, November 28, 12
Fall 2011 Wednesday, November 28, 12
Fall 2011 Wednesday, November 28, 12
Wednesday, November 28, 12
Spring 2013 Wednesday, November 28, 12
Spring 2013 Wednesday, November 28, 12
Wednesday, November 28, 12
Wednesday, November 28, 12
Wednesday, November 28, 12
Wednesday, November 28, 12
ERD - Fall 2011 Wednesday, November 28, 12
ERD - Spring 2013 Wednesday, November 28, 12
Overview Wednesday, November 28, 12
Overview How to upgrade database design? Wednesday, November 28, 12
Overview How to upgrade database design? How to import old
data? Wednesday, November 28, 12
What changed? Wednesday, November 28, 12
What changed? A lot. Wednesday, November 28, 12
What changed? A lot. Instructors are now a table, not
a row in Courses Wednesday, November 28, 12
What changed? A lot. Instructors are now a table, not
a row in Courses Completely new relationships with “Group” join table Wednesday, November 28, 12
What changed? A lot. Instructors are now a table, not
a row in Courses Completely new relationships with “Group” join table etc. Wednesday, November 28, 12
Migrations Wednesday, November 28, 12
Migrations Awesome for database manipulation Wednesday, November 28, 12
Migrations Awesome for database manipulation Bad with legacy data Wednesday,
November 28, 12
Solution Wednesday, November 28, 12
Solution Write a database importer script! Wednesday, November 28, 12
Solution Write a database importer script! Query both databases simultaneously
to import legacy data into new schema! Wednesday, November 28, 12
Database importer Wednesday, November 28, 12
Database importer ingredients Wednesday, November 28, 12
Database importer ingredients Establish a new ActiveRecord connection with old
database Wednesday, November 28, 12
Database importer ingredients Establish a new ActiveRecord connection with old
database Recreate all legacy model relationships Wednesday, November 28, 12
Database importer ingredients Establish a new ActiveRecord connection with old
database Recreate all legacy model relationships Create the to_model methods Wednesday, November 28, 12
Database importer ingredients Establish a new ActiveRecord connection with old
database Recreate all legacy model relationships Create the to_model methods Write the driver Wednesday, November 28, 12
Example Wednesday, November 28, 12
Citations Wednesday, November 28, 12
Citations Vincent Siao (SCS & HCI 2014) Wednesday, November 28,
12
Citations Vincent Siao (SCS & HCI 2014) Jason MacDonald (SCS
2013) Wednesday, November 28, 12
Citations Vincent Siao (SCS & HCI 2014) Jason MacDonald (SCS
2013) Steven Fackler (SCS 2013) Wednesday, November 28, 12
Citations Vincent Siao (SCS & HCI 2014) Jason MacDonald (SCS
2013) Steven Fackler (SCS 2013) Tim Riley: http://openmonkey.com/blog/2009/05/02/ importing-legacy-data-in-rails/ Wednesday, November 28, 12
Citations Vincent Siao (SCS & HCI 2014) Jason MacDonald (SCS
2013) Steven Fackler (SCS 2013) Tim Riley: http://openmonkey.com/blog/2009/05/02/ importing-legacy-data-in-rails/ https://github.com/aweis/rails_importer/blob/master/ S13importer.rb Wednesday, November 28, 12