I n g .                m a r i a n o               m a rt i n e z                 p e c k
                                      m a r i a n o p e c k @ g m a i l . c o m
                          h t t p : / / m a r i a n o p e c k . w o r d p r e s s . c o m /




                                                           1

Friday, August 26, 2011
THANKS a lot!!!



                           SummerTalk 2011
  Students: Guillermo Polito, Santiago Bragagnolo and Gisela
  Decuzzi.
  Mentors: Mariano Martínez Peck, Esteban Lorenzano and
  Diogenes Moreira.
                                  2
Friday, August 26, 2011
DBXTalk is...


    The complete and open-source
 solution to relational database access.



                                3
Friday, August 26, 2011
DBXTalk suite

                          Glorp port                   GlorpDBX



                                       OpenDBXDriver



                          DBXBrowser                   DBXTools

                                             4
Friday, August 26, 2011
OpenDBXDriver


                          Formerly known as SqueakDBX.

                          It is the database driver.

                          It wraps the C library OpenDBX.




                                                5
Friday, August 26, 2011
...

                              ...
                          6
Friday, August 26, 2011
Oracle
            client
                          MySQL
                           client
                          library
                                    PostgreSQL
                                      client
                                     library
                                                 ...   MSSQL
                                                        client
           library                                     library


                                                 ...

                                                 ...
                                        6
Friday, August 26, 2011
Oracle uses oci.h and libclntsh
                                        It has N functions.
                          Examples: OCIHandleAlloc(), OCIServerAttach(),
                                      OCISessionEnd(), etc.


           Oracle
            client
                                MySQL
                                 client
                                library
                                            PostgreSQL
                                              client
                                             library
                                                           ...        MSSQL
                                                                       client
           library                                                    library


                                                           ...

                                                           ...
                                                6
Friday, August 26, 2011
MySQL uses mysql.h and libmysqlclient_r
                                          It has M functions.
                          Examples: mysql_real_connect(), mysql_server_end(),
                                       mysql_real_query(), etc.


           Oracle
            client
                                 MySQL
                                  client
                                 library
                                              PostgreSQL
                                                 client
                                                library
                                                              ...         MSSQL
                                                                           client
           library                                                        library


                                                              ...

                                                              ...
                                                   6
Friday, August 26, 2011
Oracle
            client        ≠
                              MySQL
                               client
                              library
                                        ≠
                                            PostgreSQL
                                              client
                                             library
                                                         ≠ ... ≠   MSSQL
                                                                    client
           library                                                 library


                                                           ...

                                                           ...
                                                6
Friday, August 26, 2011
Common API for all backends!


           Oracle
            client        ≠
                              MySQL
                               client
                              library
                                        ≠
                                            PostgreSQL
                                              client
                                             library
                                                         ≠ ... ≠   MSSQL
                                                                    client
           library                                                 library


                                                           ...

                                                           ...
                                                6
Friday, August 26, 2011
Layers


                                               odbx
                                                     _init
                                           odbx_b
                                                     ind
                                     F
                             OpenDBX      odbx_query
                              Driver
                                     F     ... esult
                                                   r
                                     I      o dbx_         etch
                                                         f
                                                  r aw_
                                           od  bx_




                          Smalltalk                    C
                                      7
Friday, August 26, 2011
Layers


                                               odbx
                                                     _init
                                           odbx_b
                                                     ind
                                     F
                             OpenDBX      odbx_query
                              Driver
                                     F     ... esult
                                                   r
                                     I      o dbx_         etch
                                                         f
                                                  r aw_
                                           od  bx_




                          Smalltalk                    C
                                      7
Friday, August 26, 2011
Layers


                                               odbx
                                                     _init
                                           odbx_b
                                                     ind
                                     F
                             OpenDBX      odbx_query
                              Driver
                                     F     ... esult
                                                   r
                                     I      o dbx_         etch
                                                         f
                                                  r aw_
                                           od  bx_




                          Smalltalk                    C
                                      7
Friday, August 26, 2011
Layers


                                               odbx
                                                     _init
                                           odbx_b
                                                     ind
                                     F
                             OpenDBX      odbx_query
                              Driver
                                     F     ... esult
                                                   r
                                     I      o dbx_         etch
                                                         f
                                                  r aw_
                                           od  bx_




                          Smalltalk                    C
                                      7
Friday, August 26, 2011
Glorp port

                          Port latest Glorp from VisualWorks to
                          Pharo.

                          Try to automatize that task as much as
                          possible.

                          Document the process.


                                              8
Friday, August 26, 2011
GlorpDBX



                          The “glue” (Glorp database driver) between
                                 Glorp and OpenDBXDriver.




                                             9
Friday, August 26, 2011
DBXTools



          Scaffolding - Glorp -

         From tables -> automagic generation of
        classes, Glorp mappings and Magritte
        descriptions.

                                  10
Friday, August 26, 2011
DBXBrowser


                          UI for scaffolding.

                          Query database.

                          Visualize database metadata.




                                                11
Friday, August 26, 2011
DBXBrowser




                              12
Friday, August 26, 2011
New DBXTalk chapter!!!

                                    13
Friday, August 26, 2011
Current state
                    OpenDBXDriver version 1.0 released.

                    OpenDBXDriver is working with most databases
                   and in most OS.

                   Glorp '7.7.1 - 19’ (distributed with VW 7.7.1)
                   ported to Pharo.

                   GlorpDBX is working with MySQL, Oracle,
                   PostgreSQL and SQLite3. Release: SOON.

                    DBXTools and DBXBrowser still in development.

                                          14
Friday, August 26, 2011
Future work
                          Continue developing DBXBrowser (port to
                          Glamour) and DBXTools.

                          Add more backends to GlorpDBX.

                           New website, documentation, continue PBE
                          chapter, etc.

                          Port OpenDBXDriver to GLASS?

                          Glorp ActiveRecord port?
                                             15
Friday, August 26, 2011
Showtime!
                              16
Friday, August 26, 2011
Thanks!


                                Mariano Martinez Peck
                                marianopeck@gmail.com
                          http://marianopeck.wordpress.com/




Friday, August 26, 2011

More Related Content

KEY
PhD Thesis Defense Presentation
PDF
DBXTalk: Smalltalk Relational Database Suite
PDF
MySQL Spatial
PDF
MySQL Compatible Open Source Connectors
PDF
External Language Stored Procedures for MySQL
PPTX
Sql lite presentation
PDF
OpenExpo: MySQL, Where are you going?
PDF
UKOUG 2011: MySQL Architectures for Oracle DBA's
PhD Thesis Defense Presentation
DBXTalk: Smalltalk Relational Database Suite
MySQL Spatial
MySQL Compatible Open Source Connectors
External Language Stored Procedures for MySQL
Sql lite presentation
OpenExpo: MySQL, Where are you going?
UKOUG 2011: MySQL Architectures for Oracle DBA's

Similar to DBXTalk (20)

PDF
wee
PPT
Dbms & prog lang
PDF
The View - Leveraging Lotuscript for Database Connectivity
PDF
Small Overview of Skype Database Tools
PDF
Database Tools by Skype
PDF
A beginners guide to MariaDB
PDF
Open11 maria db the new m in lamp
PDF
Why MariaDB?
PDF
Oracle my sql cluster cge
PDF
Squeak DBX
PDF
Writing Efficient Java Applications For My Sql Cluster Using Ndbj
PDF
Using Ruby on Rails with legacy Oracle databases
PDF
NoSQL with MySQL
PDF
Oracle History #6
PDF
MariaDB: The New M In LAMP - SCALE10x
PDF
MariaDB: in-depth (hands on training in Seoul)
PDF
Postgres Plus Advanced Server 9.2新機能ご紹介
PDF
Postgres database Ibrahem Batta
PDF
Gse 2009 Cmolaro Final02 1
PDF
MySQL Proxy tutorial
wee
Dbms & prog lang
The View - Leveraging Lotuscript for Database Connectivity
Small Overview of Skype Database Tools
Database Tools by Skype
A beginners guide to MariaDB
Open11 maria db the new m in lamp
Why MariaDB?
Oracle my sql cluster cge
Squeak DBX
Writing Efficient Java Applications For My Sql Cluster Using Ndbj
Using Ruby on Rails with legacy Oracle databases
NoSQL with MySQL
Oracle History #6
MariaDB: The New M In LAMP - SCALE10x
MariaDB: in-depth (hands on training in Seoul)
Postgres Plus Advanced Server 9.2新機能ご紹介
Postgres database Ibrahem Batta
Gse 2009 Cmolaro Final02 1
MySQL Proxy tutorial
Ad

More from ESUG (20)

PDF
ShowUs: Pharo Stream Deck (ESUG 2025, Gdansk)
PDF
Micromaid: A simple Mermaid-like chart generator for Pharo
PDF
Directing Generative AI for Pharo Documentation
PDF
Even Lighter Than Lightweiht: Augmenting Type Inference with Primitive Heuris...
PDF
Composing and Performing Electronic Music on-the-Fly with Pharo and Coypu
PDF
Gamifying Agent-Based Models in Cormas: Towards the Playable Architecture for...
PDF
Analysing Python Machine Learning Notebooks with Moose
PDF
FASTTypeScript metamodel generation using FAST traits and TreeSitter project
PDF
Migrating Katalon Studio Tests to Playwright with Model Driven Engineering
PDF
Package-Aware Approach for Repository-Level Code Completion in Pharo
PDF
Evaluating Benchmark Quality: a Mutation-Testing- Based Methodology
PDF
An Analysis of Inline Method Refactoring
PDF
Identification of unnecessary object allocations using static escape analysis
PDF
Control flow-sensitive optimizations In the Druid Meta-Compiler
PDF
Clean Blocks (IWST 2025, Gdansk, Poland)
PDF
Encoding for Objects Matters (IWST 2025)
PDF
Challenges of Transpiling Smalltalk to JavaScript
PDF
Immersive experiences: what Pharo users do!
PDF
ChatPharo: an Open Architecture for Understanding How to Talk Live to LLMs
PDF
Cavrois - an Organic Window Management (ESUG 2025)
ShowUs: Pharo Stream Deck (ESUG 2025, Gdansk)
Micromaid: A simple Mermaid-like chart generator for Pharo
Directing Generative AI for Pharo Documentation
Even Lighter Than Lightweiht: Augmenting Type Inference with Primitive Heuris...
Composing and Performing Electronic Music on-the-Fly with Pharo and Coypu
Gamifying Agent-Based Models in Cormas: Towards the Playable Architecture for...
Analysing Python Machine Learning Notebooks with Moose
FASTTypeScript metamodel generation using FAST traits and TreeSitter project
Migrating Katalon Studio Tests to Playwright with Model Driven Engineering
Package-Aware Approach for Repository-Level Code Completion in Pharo
Evaluating Benchmark Quality: a Mutation-Testing- Based Methodology
An Analysis of Inline Method Refactoring
Identification of unnecessary object allocations using static escape analysis
Control flow-sensitive optimizations In the Druid Meta-Compiler
Clean Blocks (IWST 2025, Gdansk, Poland)
Encoding for Objects Matters (IWST 2025)
Challenges of Transpiling Smalltalk to JavaScript
Immersive experiences: what Pharo users do!
ChatPharo: an Open Architecture for Understanding How to Talk Live to LLMs
Cavrois - an Organic Window Management (ESUG 2025)
Ad

Recently uploaded (20)

PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
Developing a website for English-speaking practice to English as a foreign la...
PDF
WOOl fibre morphology and structure.pdf for textiles
PDF
Getting Started with Data Integration: FME Form 101
PDF
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
PDF
Architecture types and enterprise applications.pdf
PDF
Zenith AI: Advanced Artificial Intelligence
PDF
Hindi spoken digit analysis for native and non-native speakers
PDF
Five Habits of High-Impact Board Members
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PPTX
observCloud-Native Containerability and monitoring.pptx
PDF
Unlock new opportunities with location data.pdf
PDF
A contest of sentiment analysis: k-nearest neighbor versus neural network
PDF
August Patch Tuesday
PPTX
Web Crawler for Trend Tracking Gen Z Insights.pptx
PDF
Enhancing emotion recognition model for a student engagement use case through...
PPTX
O2C Customer Invoices to Receipt V15A.pptx
PDF
Taming the Chaos: How to Turn Unstructured Data into Decisions
PPTX
Tartificialntelligence_presentation.pptx
PDF
STKI Israel Market Study 2025 version august
Assigned Numbers - 2025 - Bluetooth® Document
Developing a website for English-speaking practice to English as a foreign la...
WOOl fibre morphology and structure.pdf for textiles
Getting Started with Data Integration: FME Form 101
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
Architecture types and enterprise applications.pdf
Zenith AI: Advanced Artificial Intelligence
Hindi spoken digit analysis for native and non-native speakers
Five Habits of High-Impact Board Members
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
observCloud-Native Containerability and monitoring.pptx
Unlock new opportunities with location data.pdf
A contest of sentiment analysis: k-nearest neighbor versus neural network
August Patch Tuesday
Web Crawler for Trend Tracking Gen Z Insights.pptx
Enhancing emotion recognition model for a student engagement use case through...
O2C Customer Invoices to Receipt V15A.pptx
Taming the Chaos: How to Turn Unstructured Data into Decisions
Tartificialntelligence_presentation.pptx
STKI Israel Market Study 2025 version august

DBXTalk

  • 1. I n g . m a r i a n o m a rt i n e z p e c k m a r i a n o p e c k @ g m a i l . c o m h t t p : / / m a r i a n o p e c k . w o r d p r e s s . c o m / 1 Friday, August 26, 2011
  • 2. THANKS a lot!!! SummerTalk 2011 Students: Guillermo Polito, Santiago Bragagnolo and Gisela Decuzzi. Mentors: Mariano Martínez Peck, Esteban Lorenzano and Diogenes Moreira. 2 Friday, August 26, 2011
  • 3. DBXTalk is... The complete and open-source solution to relational database access. 3 Friday, August 26, 2011
  • 4. DBXTalk suite Glorp port GlorpDBX OpenDBXDriver DBXBrowser DBXTools 4 Friday, August 26, 2011
  • 5. OpenDBXDriver Formerly known as SqueakDBX. It is the database driver. It wraps the C library OpenDBX. 5 Friday, August 26, 2011
  • 6. ... ... 6 Friday, August 26, 2011
  • 7. Oracle client MySQL client library PostgreSQL client library ... MSSQL client library library ... ... 6 Friday, August 26, 2011
  • 8. Oracle uses oci.h and libclntsh It has N functions. Examples: OCIHandleAlloc(), OCIServerAttach(), OCISessionEnd(), etc. Oracle client MySQL client library PostgreSQL client library ... MSSQL client library library ... ... 6 Friday, August 26, 2011
  • 9. MySQL uses mysql.h and libmysqlclient_r It has M functions. Examples: mysql_real_connect(), mysql_server_end(), mysql_real_query(), etc. Oracle client MySQL client library PostgreSQL client library ... MSSQL client library library ... ... 6 Friday, August 26, 2011
  • 10. Oracle client ≠ MySQL client library ≠ PostgreSQL client library ≠ ... ≠ MSSQL client library library ... ... 6 Friday, August 26, 2011
  • 11. Common API for all backends! Oracle client ≠ MySQL client library ≠ PostgreSQL client library ≠ ... ≠ MSSQL client library library ... ... 6 Friday, August 26, 2011
  • 12. Layers odbx _init odbx_b ind F OpenDBX odbx_query Driver F ... esult r I o dbx_ etch f r aw_ od bx_ Smalltalk C 7 Friday, August 26, 2011
  • 13. Layers odbx _init odbx_b ind F OpenDBX odbx_query Driver F ... esult r I o dbx_ etch f r aw_ od bx_ Smalltalk C 7 Friday, August 26, 2011
  • 14. Layers odbx _init odbx_b ind F OpenDBX odbx_query Driver F ... esult r I o dbx_ etch f r aw_ od bx_ Smalltalk C 7 Friday, August 26, 2011
  • 15. Layers odbx _init odbx_b ind F OpenDBX odbx_query Driver F ... esult r I o dbx_ etch f r aw_ od bx_ Smalltalk C 7 Friday, August 26, 2011
  • 16. Glorp port Port latest Glorp from VisualWorks to Pharo. Try to automatize that task as much as possible. Document the process. 8 Friday, August 26, 2011
  • 17. GlorpDBX The “glue” (Glorp database driver) between Glorp and OpenDBXDriver. 9 Friday, August 26, 2011
  • 18. DBXTools Scaffolding - Glorp - From tables -> automagic generation of classes, Glorp mappings and Magritte descriptions. 10 Friday, August 26, 2011
  • 19. DBXBrowser UI for scaffolding. Query database. Visualize database metadata. 11 Friday, August 26, 2011
  • 20. DBXBrowser 12 Friday, August 26, 2011
  • 21. New DBXTalk chapter!!! 13 Friday, August 26, 2011
  • 22. Current state OpenDBXDriver version 1.0 released. OpenDBXDriver is working with most databases and in most OS. Glorp '7.7.1 - 19’ (distributed with VW 7.7.1) ported to Pharo. GlorpDBX is working with MySQL, Oracle, PostgreSQL and SQLite3. Release: SOON. DBXTools and DBXBrowser still in development. 14 Friday, August 26, 2011
  • 23. Future work Continue developing DBXBrowser (port to Glamour) and DBXTools. Add more backends to GlorpDBX. New website, documentation, continue PBE chapter, etc. Port OpenDBXDriver to GLASS? Glorp ActiveRecord port? 15 Friday, August 26, 2011
  • 24. Showtime! 16 Friday, August 26, 2011
  • 25. Thanks! Mariano Martinez Peck marianopeck@gmail.com http://marianopeck.wordpress.com/ Friday, August 26, 2011