SlideShare a Scribd company logo
OODB
Object-Oriented Databases
First Things First
First Things First




              Free your Mind!
First Things First




              Free your Mind!
What is a Database System?
What is a Database System?



 Efficient Data Storage
What is a Database System?



 Efficient Data Storage
 One or more files
What is a Database System?



 Efficient Data Storage
 One or more files
 Ruleset / Structure
What is a Database System?



 Efficient Data Storage
 One or more files               DBMS
                         DBS
 Ruleset / Structure
                               Database
What is a Database System?


                               Application
 Efficient Data Storage
 One or more files                DBMS
                         DBS
 Ruleset / Structure
                               Database
Basic Types of Databases
Basic Types of Databases



         Relational     Hierarchical


         Network      Object-Oriented
Basic Types of Databases



                Relational


              Object-Oriented
What is a Relational DB?
What is a Relational DB?


 De-facto Standard
What is a Relational DB?


 De-facto Standard
 Table-based
What is a Relational DB?


 De-facto Standard
 Table-based
 Relation between Tables
What is a Relational DB?


 De-facto Standard
 Table-based
 Relation between Tables
 Stores primitive Types
What is a Relational DB?


 De-facto Standard
 Table-based
 Relation between Tables
 Stores primitive Types
 Access through SQL (Structured Query Language)
An RDB Example
An RDB Example
 ISBN    BOOK

  1     Kamasutra

  2     The Bible

  3      Hamlet
An RDB Example
 ISBN    BOOK       ISBN    AUTHOR

  1     Kamasutra    1     R. F. Burton

  2     The Bible    2        God

  3      Hamlet      3     Shakespeare
An RDB Example
 ISBN    BOOK                          ISBN     AUTHOR

  1     Kamasutra                        1     R. F. Burton

  2     The Bible                        2        God

  3      Hamlet                          3     Shakespeare




             ISBN    BOOK        AUTHOR

              1     Kamasutra   R. F. Burton

              2     The Bible      God

              3      Hamlet     Shakespeare
What is an Object-Oriented DB?
What is an Object-Oriented DB?
What is an Object-Oriented DB?



 Object-based
What is an Object-Oriented DB?



 Object-based
 Relations through Objects
What is an Object-Oriented DB?



 Object-based
 Relations through Objects
 Database stores complex Objects
What is an Object-Oriented DB?



 Object-based
 Relations through Objects
 Database stores complex Objects
 Access through high-level Language
An OODB Example
An OODB Example
                 ra
     Kamasut
                          The Bible


                    o n
         R. F. Burt
     1                        God
                          2               Hamlet




                                                    re
                                          Shakespea
                                      3
From DB to the App
       RDB           OODB
From DB to the App
        RDB                OODB


     SELECT * FROM table

         Primitive Types


             Object
From DB to the App
        RDB                  OODB


     SELECT * FROM table

         Primitive Types   Object

             Object
OODB Sourcecode
ObjectContainer oodb = Db4o.openFile("test.oodb");
	    	
User chris = new User("Chris");
oodb.store(chris);

oodb.store(new User("Christian"));

List<User> users = oodb.query(User.class);
for (User u : users) {
   System.out.println(u);
}

System.out.println(users.get(0).equals(chris));
	     	
users = oodb.query(new Predicate<User>() {
    public boolean match(User user) {
       return user.getName().contains("Christi");
    }
});
for (User u : users) {
    System.out.println(u);
}

oodb.close();
RDB Sourcecode
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
Connection con = DriverManager.getConnection("jdbc:mysql://192.168.1.135:3306/foo", "root", "user");

User chris = new User("Chris")
con.createStatement().executeQuery("INSERT INTO Users VALUES ("", " + chris.getName() + ");

con.createStatement().executeQuery("INSERT INTO Users VALUES ("", " + new User("Chris").getName() + ");

ResultSet users = con.createStatement().executeQuery("SELECT * FROM User");
	    	     	
while (users.next()) {
   User user = new User(users.getInt("id"), user.getString("name"));
   if (user.getName().equals(chris.getName()) {
      System.out.println(user.equals(chris)); // false
   }
}

con.close();
What Do You Think?

More Related Content

Similar to OODB

NISO/DCMI Webinar: International Bibliographic Standards, Linked Data, and th...
NISO/DCMI Webinar: International Bibliographic Standards, Linked Data, and th...NISO/DCMI Webinar: International Bibliographic Standards, Linked Data, and th...
NISO/DCMI Webinar: International Bibliographic Standards, Linked Data, and th...
National Information Standards Organization (NISO)
 
Semantic Modelling using Semantic Web Technology
Semantic Modelling using Semantic Web TechnologySemantic Modelling using Semantic Web Technology
Semantic Modelling using Semantic Web Technology
Rinke Hoekstra
 
Introduction to RDF
Introduction to RDFIntroduction to RDF
Introduction to RDF
Dr Sukhpal Singh Gill
 
RDA (Resource Description & Access)
RDA (Resource Description & Access)RDA (Resource Description & Access)
RDA (Resource Description & Access)
Jennifer Joyner
 
RDF for Librarians
RDF for LibrariansRDF for Librarians
RDF for Librarians
Jenn Riley
 
CSHALS 2010 W3C Semanic Web Tutorial
CSHALS 2010 W3C Semanic Web TutorialCSHALS 2010 W3C Semanic Web Tutorial
CSHALS 2010 W3C Semanic Web Tutorial
LeeFeigenbaum
 
The web of interlinked data and knowledge stripped
The web of interlinked data and knowledge strippedThe web of interlinked data and knowledge stripped
The web of interlinked data and knowledge stripped
Sören Auer
 
Linked data for librarians
Linked data for librariansLinked data for librarians
Linked data for librarians
trevorthornton
 
RDF briefing
RDF briefingRDF briefing
RDF briefing
Frank van Harmelen
 
Cartographic Resources Cataloging with RDA Workshop
Cartographic Resources Cataloging with RDA WorkshopCartographic Resources Cataloging with RDA Workshop
Cartographic Resources Cataloging with RDA Workshop
ALATechSource
 
DLF 2015 Presentation, "RDF in the Real World."
DLF 2015 Presentation, "RDF in the Real World." DLF 2015 Presentation, "RDF in the Real World."
DLF 2015 Presentation, "RDF in the Real World."
Avalon Media System
 
Linked Data in Libraries
Linked Data in LibrariesLinked Data in Libraries
Linked Data in Libraries
Carl Hess
 
Jpl presentation
Jpl presentationJpl presentation
Jpl presentation
Rama Bastola
 
Jpl presentation
Jpl presentationJpl presentation
Jpl presentation
Rama Bastola
 
Jpl presentation
Jpl presentationJpl presentation
Jpl presentation
Rama Bastola
 
20080917 Rev
20080917 Rev20080917 Rev
20080917 Rev
charper
 
Lifting the Lid on Linked Data
Lifting the Lid on Linked DataLifting the Lid on Linked Data
Lifting the Lid on Linked Data
Jane Stevenson
 
Resource description framework
Resource description frameworkResource description framework
Resource description framework
Stanley Wang
 
RDA Presentation
RDA PresentationRDA Presentation
RDA Presentation
jendibbern
 
Efficient Query Answering against Dynamic RDF Databases
Efficient Query Answering against Dynamic RDF DatabasesEfficient Query Answering against Dynamic RDF Databases
Efficient Query Answering against Dynamic RDF Databases
Alexandra Roatiș
 

Similar to OODB (20)

NISO/DCMI Webinar: International Bibliographic Standards, Linked Data, and th...
NISO/DCMI Webinar: International Bibliographic Standards, Linked Data, and th...NISO/DCMI Webinar: International Bibliographic Standards, Linked Data, and th...
NISO/DCMI Webinar: International Bibliographic Standards, Linked Data, and th...
 
Semantic Modelling using Semantic Web Technology
Semantic Modelling using Semantic Web TechnologySemantic Modelling using Semantic Web Technology
Semantic Modelling using Semantic Web Technology
 
Introduction to RDF
Introduction to RDFIntroduction to RDF
Introduction to RDF
 
RDA (Resource Description & Access)
RDA (Resource Description & Access)RDA (Resource Description & Access)
RDA (Resource Description & Access)
 
RDF for Librarians
RDF for LibrariansRDF for Librarians
RDF for Librarians
 
CSHALS 2010 W3C Semanic Web Tutorial
CSHALS 2010 W3C Semanic Web TutorialCSHALS 2010 W3C Semanic Web Tutorial
CSHALS 2010 W3C Semanic Web Tutorial
 
The web of interlinked data and knowledge stripped
The web of interlinked data and knowledge strippedThe web of interlinked data and knowledge stripped
The web of interlinked data and knowledge stripped
 
Linked data for librarians
Linked data for librariansLinked data for librarians
Linked data for librarians
 
RDF briefing
RDF briefingRDF briefing
RDF briefing
 
Cartographic Resources Cataloging with RDA Workshop
Cartographic Resources Cataloging with RDA WorkshopCartographic Resources Cataloging with RDA Workshop
Cartographic Resources Cataloging with RDA Workshop
 
DLF 2015 Presentation, "RDF in the Real World."
DLF 2015 Presentation, "RDF in the Real World." DLF 2015 Presentation, "RDF in the Real World."
DLF 2015 Presentation, "RDF in the Real World."
 
Linked Data in Libraries
Linked Data in LibrariesLinked Data in Libraries
Linked Data in Libraries
 
Jpl presentation
Jpl presentationJpl presentation
Jpl presentation
 
Jpl presentation
Jpl presentationJpl presentation
Jpl presentation
 
Jpl presentation
Jpl presentationJpl presentation
Jpl presentation
 
20080917 Rev
20080917 Rev20080917 Rev
20080917 Rev
 
Lifting the Lid on Linked Data
Lifting the Lid on Linked DataLifting the Lid on Linked Data
Lifting the Lid on Linked Data
 
Resource description framework
Resource description frameworkResource description framework
Resource description framework
 
RDA Presentation
RDA PresentationRDA Presentation
RDA Presentation
 
Efficient Query Answering against Dynamic RDF Databases
Efficient Query Answering against Dynamic RDF DatabasesEfficient Query Answering against Dynamic RDF Databases
Efficient Query Answering against Dynamic RDF Databases
 

Recently uploaded

NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptxNEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
iammrhaywood
 
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
National Information Standards Organization (NISO)
 
PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.
Dr. Shivangi Singh Parihar
 
Wound healing PPT
Wound healing PPTWound healing PPT
Wound healing PPT
Jyoti Chand
 
Hindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdfHindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdf
Dr. Mulla Adam Ali
 
UGC NET Exam Paper 1- Unit 1:Teaching Aptitude
UGC NET Exam Paper 1- Unit 1:Teaching AptitudeUGC NET Exam Paper 1- Unit 1:Teaching Aptitude
UGC NET Exam Paper 1- Unit 1:Teaching Aptitude
S. Raj Kumar
 
MARY JANE WILSON, A “BOA MÃE” .
MARY JANE WILSON, A “BOA MÃE”           .MARY JANE WILSON, A “BOA MÃE”           .
MARY JANE WILSON, A “BOA MÃE” .
Colégio Santa Teresinha
 
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdfANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
Priyankaranawat4
 
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptxC1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
mulvey2
 
How to Create a More Engaging and Human Online Learning Experience
How to Create a More Engaging and Human Online Learning Experience How to Create a More Engaging and Human Online Learning Experience
How to Create a More Engaging and Human Online Learning Experience
Wahiba Chair Training & Consulting
 
Leveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit InnovationLeveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit Innovation
TechSoup
 
How to deliver Powerpoint Presentations.pptx
How to deliver Powerpoint  Presentations.pptxHow to deliver Powerpoint  Presentations.pptx
How to deliver Powerpoint Presentations.pptx
HajraNaeem15
 
writing about opinions about Australia the movie
writing about opinions about Australia the moviewriting about opinions about Australia the movie
writing about opinions about Australia the movie
Nicholas Montgomery
 
Cognitive Development Adolescence Psychology
Cognitive Development Adolescence PsychologyCognitive Development Adolescence Psychology
Cognitive Development Adolescence Psychology
paigestewart1632
 
Advanced Java[Extra Concepts, Not Difficult].docx
Advanced Java[Extra Concepts, Not Difficult].docxAdvanced Java[Extra Concepts, Not Difficult].docx
Advanced Java[Extra Concepts, Not Difficult].docx
adhitya5119
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
amberjdewit93
 
Film vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movieFilm vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movie
Nicholas Montgomery
 
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
eBook.com.bd (প্রয়োজনীয় বাংলা বই)
 
Liberal Approach to the Study of Indian Politics.pdf
Liberal Approach to the Study of Indian Politics.pdfLiberal Approach to the Study of Indian Politics.pdf
Liberal Approach to the Study of Indian Politics.pdf
WaniBasim
 
How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17
Celine George
 

Recently uploaded (20)

NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptxNEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
 
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
 
PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.
 
Wound healing PPT
Wound healing PPTWound healing PPT
Wound healing PPT
 
Hindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdfHindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdf
 
UGC NET Exam Paper 1- Unit 1:Teaching Aptitude
UGC NET Exam Paper 1- Unit 1:Teaching AptitudeUGC NET Exam Paper 1- Unit 1:Teaching Aptitude
UGC NET Exam Paper 1- Unit 1:Teaching Aptitude
 
MARY JANE WILSON, A “BOA MÃE” .
MARY JANE WILSON, A “BOA MÃE”           .MARY JANE WILSON, A “BOA MÃE”           .
MARY JANE WILSON, A “BOA MÃE” .
 
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdfANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
 
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptxC1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
 
How to Create a More Engaging and Human Online Learning Experience
How to Create a More Engaging and Human Online Learning Experience How to Create a More Engaging and Human Online Learning Experience
How to Create a More Engaging and Human Online Learning Experience
 
Leveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit InnovationLeveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit Innovation
 
How to deliver Powerpoint Presentations.pptx
How to deliver Powerpoint  Presentations.pptxHow to deliver Powerpoint  Presentations.pptx
How to deliver Powerpoint Presentations.pptx
 
writing about opinions about Australia the movie
writing about opinions about Australia the moviewriting about opinions about Australia the movie
writing about opinions about Australia the movie
 
Cognitive Development Adolescence Psychology
Cognitive Development Adolescence PsychologyCognitive Development Adolescence Psychology
Cognitive Development Adolescence Psychology
 
Advanced Java[Extra Concepts, Not Difficult].docx
Advanced Java[Extra Concepts, Not Difficult].docxAdvanced Java[Extra Concepts, Not Difficult].docx
Advanced Java[Extra Concepts, Not Difficult].docx
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
 
Film vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movieFilm vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movie
 
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
 
Liberal Approach to the Study of Indian Politics.pdf
Liberal Approach to the Study of Indian Politics.pdfLiberal Approach to the Study of Indian Politics.pdf
Liberal Approach to the Study of Indian Politics.pdf
 
How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17
 

OODB

  • 3. First Things First Free your Mind!
  • 4. First Things First Free your Mind!
  • 5. What is a Database System?
  • 6. What is a Database System? Efficient Data Storage
  • 7. What is a Database System? Efficient Data Storage One or more files
  • 8. What is a Database System? Efficient Data Storage One or more files Ruleset / Structure
  • 9. What is a Database System? Efficient Data Storage One or more files DBMS DBS Ruleset / Structure Database
  • 10. What is a Database System? Application Efficient Data Storage One or more files DBMS DBS Ruleset / Structure Database
  • 11. Basic Types of Databases
  • 12. Basic Types of Databases Relational Hierarchical Network Object-Oriented
  • 13. Basic Types of Databases Relational Object-Oriented
  • 14. What is a Relational DB?
  • 15. What is a Relational DB? De-facto Standard
  • 16. What is a Relational DB? De-facto Standard Table-based
  • 17. What is a Relational DB? De-facto Standard Table-based Relation between Tables
  • 18. What is a Relational DB? De-facto Standard Table-based Relation between Tables Stores primitive Types
  • 19. What is a Relational DB? De-facto Standard Table-based Relation between Tables Stores primitive Types Access through SQL (Structured Query Language)
  • 21. An RDB Example ISBN BOOK 1 Kamasutra 2 The Bible 3 Hamlet
  • 22. An RDB Example ISBN BOOK ISBN AUTHOR 1 Kamasutra 1 R. F. Burton 2 The Bible 2 God 3 Hamlet 3 Shakespeare
  • 23. An RDB Example ISBN BOOK ISBN AUTHOR 1 Kamasutra 1 R. F. Burton 2 The Bible 2 God 3 Hamlet 3 Shakespeare ISBN BOOK AUTHOR 1 Kamasutra R. F. Burton 2 The Bible God 3 Hamlet Shakespeare
  • 24. What is an Object-Oriented DB?
  • 25. What is an Object-Oriented DB?
  • 26. What is an Object-Oriented DB? Object-based
  • 27. What is an Object-Oriented DB? Object-based Relations through Objects
  • 28. What is an Object-Oriented DB? Object-based Relations through Objects Database stores complex Objects
  • 29. What is an Object-Oriented DB? Object-based Relations through Objects Database stores complex Objects Access through high-level Language
  • 31. An OODB Example ra Kamasut The Bible o n R. F. Burt 1 God 2 Hamlet re Shakespea 3
  • 32. From DB to the App RDB OODB
  • 33. From DB to the App RDB OODB SELECT * FROM table Primitive Types Object
  • 34. From DB to the App RDB OODB SELECT * FROM table Primitive Types Object Object
  • 35. OODB Sourcecode ObjectContainer oodb = Db4o.openFile("test.oodb"); User chris = new User("Chris"); oodb.store(chris); oodb.store(new User("Christian")); List<User> users = oodb.query(User.class); for (User u : users) { System.out.println(u); } System.out.println(users.get(0).equals(chris)); users = oodb.query(new Predicate<User>() { public boolean match(User user) { return user.getName().contains("Christi"); } }); for (User u : users) { System.out.println(u); } oodb.close();
  • 36. RDB Sourcecode Class.forName("org.gjt.mm.mysql.Driver").newInstance(); Connection con = DriverManager.getConnection("jdbc:mysql://192.168.1.135:3306/foo", "root", "user"); User chris = new User("Chris") con.createStatement().executeQuery("INSERT INTO Users VALUES ("", " + chris.getName() + "); con.createStatement().executeQuery("INSERT INTO Users VALUES ("", " + new User("Chris").getName() + "); ResultSet users = con.createStatement().executeQuery("SELECT * FROM User"); while (users.next()) { User user = new User(users.getInt("id"), user.getString("name")); if (user.getName().equals(chris.getName()) { System.out.println(user.equals(chris)); // false } } con.close();
  • 37. What Do You Think?