SlideShare a Scribd company logo
1 of 99
1
Image copyright Yukihiro Matsumoto
MongoDB
to
MySQL




                  2
  Image copyright Yukihiro Matsumoto
MongoDB
to
MySQL
                                       • Data




                  2
  Image copyright Yukihiro Matsumoto
MongoDB
to
MySQL
                                       • Data
                                       • Ways
to
store
it




                  2
  Image copyright Yukihiro Matsumoto
MongoDB
to
MySQL
                                       • Data
                                       • Ways
to
store
it
                                       • Youthful

                                         indiscretion



                  2
  Image copyright Yukihiro Matsumoto
MongoDB
to
MySQL
                                       • Data
                                       • Ways
to
store
it
                                       • Youthful

                                         indiscretion
                                       • Data


                  2
  Image copyright Yukihiro Matsumoto
Sarah
Mei
@sarahmei


    3
Sarah
Allen
 (not
me)




                           4
              Photo copyright Lee Lundrigan
5
Images copyright Pivotal Labs, Inc.
5
Images copyright Pivotal Labs, Inc.
6
7
Photo by Henrik Moltke
Eben

                                                                                         Moglen



                                               8
Photo from The Internet Society, original: http://www.flickr.com/photos/internetsociety/5876916246
9
Images copyright (clockwise from top) Diaspora Inc., 10gen Inc., David Heinemeier Hansson.
9
Images copyright (clockwise from top) Diaspora Inc., 10gen Inc., David Heinemeier Hansson.
9
Images copyright (clockwise from top) Diaspora Inc., 10gen Inc., David Heinemeier Hansson.
“Social
data
isn’t

   relational”


        10
“Social
data
isn’t

   relational”
              ‐Twitter



        10
OOH
SHINY


                                          11
Photo from flickr user helen61, original: http://www.flickr.com/photos/helen61/2873090945/
“Social
data
isn’t

   relational”
              ‐Twitter



        12
OOH
SHINY


                                          13
Photo from flickr user helen61, original: http://www.flickr.com/photos/helen61/2873090945/
Mismatches:




              14
Mismatches:
 • At
the
data
layer




                  14
Mismatches:
 • At
the
data
layer
 • At
the
mapping
layer




                  14
Mismatches:
 • At
the
data
layer
 • At
the
mapping
layer
Test‐driving
a
data
migration




                  14
Mismatches:
 • At
the
data
layer        We
are
here

 • At
the
mapping
layer
Test‐driving
a
data
migration




                  14
“document‐oriented

    database”

                  15
       Image copyright 10gen Inc.
tv_shows

many      seasons       many
                               reviews
  many       episodes

                        many cast_members




                        16
{title: 'Babylon 5',
  seasons: [
    {season_number: '1',
      episodes: [
        {ordinal_within_season: '1',
          title: 'Midnight on the Firing
          reviews: [{...}],
          cast_members: [{...}]
        }
      ]
    }
  ]
}
                   17
{title: 'Babylon 5',
  seasons: [
    {season_number: '1',
      episodes: [
        {ordinal_within_season: '1',
          title: 'Midnight on the Firing
          reviews: [{...}],
          cast_members: [{...}]
        }
      ]
    }
  ]
}
                   17
{title: 'Babylon 5',
  seasons: [
    {season_number: '1',
      episodes: [
        {ordinal_within_season: '1',
          title: 'Midnight on the Firing
          reviews: [{...}],
          cast_members: [{...}]
        }
      ]
    }
  ]
}
                   17
{title: 'Babylon 5',
  seasons: [
    {season_number: '1',
      episodes: [
        {ordinal_within_season: '1',
          title: 'Midnight on the Firing
          reviews: [{...}],
          cast_members: [{...}]
        }
      ]
    }
  ]
}
                   17
18
18
users

many     friends       many
                               comments
  many         posts            many      commenters

                       many      likes

                                 many     likers




                          19
{name: 'Sarah Mei',
  friends: [
    {name: 'Thing 1',
      posts: [
        {message: 'go fly a kite',
          comments: [{...}],
          likes: [{...}],
          reshares: [{...}]
        }
      ]
    }
  ]
}
                   20
{name: 'Sarah Mei',
  friends: [
    {name: 'Thing 1',
      posts: [
        {message: 'go fly a kite',
          comments: [{...}],
          likes: [{...}],
          reshares: [{...}]
        }
      ]
    }
  ]
}
                   20
{name: 'Sarah Mei',
  friends: [
    {name: 'Thing 1',
      posts: [
        {message: 'go fly a kite',
          comments: [{...}],
          likes: [{...}],
          reshares: [{...}]
        }
      ]
    }
  ]
}
                   20
{name: 'Sarah Mei',
  friends: [
    {name: 'Thing 1',
      posts: [
        {message: 'go fly a kite',
          comments: [{...}],
          likes: [{...}],
          reshares: [{...}]
        }
      ]
    }
  ]
}
                   20
tv_shows

many      seasons       many
                                reviews
  many       episodes

                        many cast_members




                           21
users

many     friends       many
                               comments
  many         posts            many      commenters

                       many      likes

                                 many     likers




                          22
users

many     friends       many
                               comments
  many         posts            many      commenters

                       many      likes

                                 many     likers




                          23
tv_shows

many      seasons       many
                                reviews
  many       episodes

                        many cast_members




                           24
25
25
{name: 'Sarah Mei',
  friends: [
    {name: 'Thing 1',
      posts: [
        {message: 'go fly a kite',
          comments: [{...}],
          likes: [{...}],
          reshares: [{...}]
        }
      ]
    }
  ]
}
                   26
{name: 'Sarah Mei',
  friends: [
    {user_id: '4b866f08234ae01d21d8960
      posts: [
        {message: 'go fly a kite',
          comments: [{...}],
          likes: [{...}],
          reshares: [{...}]
        }
      ]
    }
  ]
}
                  27
28
Photo from flickr user befuddledsenses, original: http://www.flickr.com/photos/befuddledsenses/2903185831
1 “Social
data
isn’t

      relational”




           29
1 “Social
data
isn’t

      relational”

   “Eight‐table
joins

        ZOMG”
           29
2   
When
they
say
documents,
they
really
mean
                                                                         documents.




                                                    30
          Photo from flickr user horrgakx, original: http://www.flickr.com/photos/horrgakx/2963449465
Mismatches:
 • At
the
data
layer
 • At
the
mapping
layer      We
are
here

Test‐driving
a
data
migration




                   31
Faking
It




    32
Faking
It
• Faux
relational
interface
bad




              32
Faking
It
• Faux
relational
interface
bad
• JS
map/reduce
good




              32
Faking
It
• Faux
relational
interface
bad
• JS
map/reduce
good
  • But
lower‐level


              32
Faking
It
• Faux
relational
interface
bad
• JS
map/reduce
good
  • But
lower‐level
  • And
harder
to
test

              32
Y
U
SO
HARD?




     33
Y
U
SO
HARD?
• Less
documentation




                33
Y
U
SO
HARD?
• Less
documentation
• Harder
to
google
for
stuff




                 33
Y
U
SO
HARD?
• Less
documentation
• Harder
to
google
for
stuff
• Smaller
community




                 33
Y
U
SO
HARD?
• Less
documentation
• Harder
to
google
for
stuff
• Smaller
community
• Less
gem
support




                 33
Y
U
SO
HARD?
• Less
documentation
• Harder
to
google
for
stuff
• Smaller
community
• Less
gem
support
• Developers
had
no
Mongo
experience


                 33
34
Illustration from flickr user katy_tresedder, original: http://www.flickr.com/photos/katy_tresedder/4902794900
Y
U
SO
HARD?
              In
General:
• Less
documentation
• Lower
googlability
• Smaller
community
• Less
gem
support
• Team
of
developers
with
no
Mongo
experience



                     35
36
Photo from flickr user nswmaritime, original: http://www.flickr.com/photos/nswmaritime/2963649924
36
Photo from flickr user nswmaritime, original: http://www.flickr.com/photos/nswmaritime/2963649924
Every
non‐standard

  technology
choice

reduces
our
ability
to

    iterate
quickly.

          37
38
Photo from flickr user nzgabriel, original: http://www.flickr.com/photos/nzgabriel/2607065194
39
Mismatches:
 • At
the
data
layer
 • At
the
mapping
layer
Test‐driving
a
data
migration
                        We
are
finally
here




                  40
41
Photo from flickr user werkunz, original: http://www.flickr.com/photos/werkunz/5160818883
42
Photo from the Seattle Municipal Archives, accessed at: http://www.flickr.com/photos/seattlemunicipalarchives/4328053793
Test‐driving
the
migration




            43
“Test‐driving”
the
migration




             44
“Test‐driving”
the
migration
The
Easy
Way




               44
“Test‐driving”
the
migration
The
Easy
Way
  1. Test‐drive
conversion
of
a
single
sub‐
     document
from
JSON
to
CSV




                        44
“Test‐driving”
the
migration
The
Easy
Way
  1. Test‐drive
conversion
of
a
single
sub‐
     document
from
JSON
to
CSV
  2. Test‐drive
import
of
that
CSV
into
AR




                        44
“Test‐driving”
the
migration
The
Easy
Way
  1. Test‐drive
conversion
of
a
single
sub‐
     document
from
JSON
to
CSV
  2. Test‐drive
import
of
that
CSV
into
AR
  3. Run
it
on
a
copy
of
the
production
database*



                        44
“Test‐driving”
the
migration
The
Easy
Way
  1. Test‐drive
conversion
of
a
single
sub‐
     document
from
JSON
to
CSV
  2. Test‐drive
import
of
that
CSV
into
AR
  3. Run
it
on
a
copy
of
the
production
database*
  4. Add
more
test
cases


                        44
“Test‐driving”
the
migration
The
Easy
Way
  1. Test‐drive
conversion
of
a
single
sub‐
     document
from
JSON
to
CSV
  2. Test‐drive
import
of
that
CSV
into
AR
  3. Run
it
on
a
copy
of
the
production
database*
  4. Add
more
test
cases


                        44
“Test‐driving”
the
migration
The
Hard(er)
Way




              45
“Test‐driving”
the
migration
The
Hard(er)
Way
   • Batching




                45
“Test‐driving”
the
migration
The
Hard(er)
Way
   • Batching
   • activerecord‐import




                      45
“Test‐driving”
the
migration
The
Hard(er)
Way
   • Batching
   • activerecord‐import
   • LOAD
DATA
INFILE




                      45
“Test‐driving”
the
migration
 Gotchas




             46
“Test‐driving”
the
migration
 Gotchas
  • character
encoding




                         46
“Test‐driving”
the
migration
 Gotchas
  • character
encoding
  • converting
IDs




                         46
“Test‐driving”
the
migration
 Gotchas
  • character
encoding
  • converting
IDs
  • character
encoding




                         46
Code

github.com/diaspora/diaspora
  tag
last‐data‐conversion


             47
Diaspora
@joindiaspora


   Sarah
Mei
    @sarahmei
                                      48
Images not otherwise credited are copyright Sarah Mei and licensed cc-attribution
tv_shows

many      seasons       many
                                reviews
  many       episodes

                        many cast_members




                           49
surprise!




                                                                50
            Photo from flickr user industry_is_virtue, original: http://www.flickr.com/photos/industry_is_virtue/3209194592
tv_shows

many      seasons       many
                                reviews
  many       episodes

                        many cast_members




                           51
cast_members


{
character_name: “Cmdr Jeffrey Sinclair”,
actor_name: “Michael O’Hare”
}




                    52
So
far:




          53
So
far:
 • Why
MongoDB
wasn’t
a
good
fit
for

   Diaspora’s
data




                     53
So
far:
 • Why
MongoDB
wasn’t
a
good
fit
for

   Diaspora’s
data
 • The
mechanics
of
the
migration




                      53
So
far:
 • Why
MongoDB
wasn’t
a
good
fit
for

   Diaspora’s
data
 • The
mechanics
of
the
migration
 • Why
we
switched




                      53

More Related Content

Recently uploaded

"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 

Recently uploaded (20)

"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 

Featured

Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 

Featured (20)

Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 

Taking Diaspora from MongoDB to MySQL (RubyConf 2011)

Editor's Notes

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n
  58. \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n
  64. \n
  65. \n
  66. \n
  67. \n
  68. \n
  69. \n
  70. \n
  71. \n
  72. \n
  73. \n
  74. \n
  75. \n
  76. \n
  77. \n
  78. \n
  79. \n
  80. \n
  81. \n
  82. \n