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
67-311 Data import presentation
Search
Adam Weis
November 28, 2012
Education
1
56
67-311 Data import presentation
How to import data after a database transition. Case Study: Schedule+
Adam Weis
November 28, 2012
Tweet
Share
More Decks by Adam Weis
See All by Adam Weis
dbImportPresentation.pdf
aweis
1
28
Other Decks in Education
See All in Education
2026 g0v 零時政府年會啟動提案 / g0v Summit 2026 Kickstart
rschiang
0
260
登壇未経験者のための登壇戦略~LTは設計が9割!!!~
masakiokuda
3
660
Ch1_-_Partie_1.pdf
bernhardsvt
0
200
OpenSourceSummitJapanを運営してみた話
kujiraitakahiro
0
790
2025/06/05_読み漁り学習
nag8
0
190
”育てる”から”育つ”仕組みへ!スクラムによる新入社員教育
arapon
0
140
2025年度春学期 統計学 第10回 分布の推測とは ー 標本調査,度数分布と確率分布 (2025. 6. 12)
akiraasano
PRO
0
220
2025年度春学期 統計学 第12回 分布の平均を推測する ー 区間推定 (2025. 6. 26)
akiraasano
PRO
0
160
生成AIとの上手な付き合い方【公開版】/ How to Get Along Well with Generative AI (Public Version)
handlename
0
620
【Discordアカウント作成ガイド】
ainischool
0
110
核燃料政策を問う─英国の決断と日本
hide2kano
0
180
社外コミュニティの歩き方
masakiokuda
2
180
Featured
See All Featured
Bash Introduction
62gerente
615
210k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.5k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.9k
Code Review Best Practice
trishagee
70
19k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
The Cult of Friendly URLs
andyhume
79
6.6k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Balancing Empowerment & Direction
lara
3
620
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