SlideShare une entreprise Scribd logo
1  sur  24
Télécharger pour lire hors ligne
It Works!
Presenting DBAL use in real life.
Overview
  Introduction

  Case Studies

    Oracle 10g

    MS SQL Server

    MySQL

  Summary

  Q&A
Introduction
About me
  Karsten Dambekalns
  k.dambekalns@fishfarm.de

  Co-Founder of fishfarm netsolutions

  Active Member of the TYPO3 Association

  Core Team Member and participating of the current 5.0
  development
Introduction
  DBAL project started in 2004

  Slow – but steady – progress since then

  First official release with TYPO3 version 4.0 in 2006

  Still some issues, still lack of feedback

  Some real-life projects getting done

    fields include NGOs, banking, marketing, manufacturing,
    services
Current status
  Works pretty well

  Satisfactory speed

  Issues with BLOB fields may come up

  Non-DBAL-compliant extensions break (naturally)

  20 open issues in the bug tracker, some may be fixed already

  Further enhancements planned, specifically performance-wise
Oracle 10g
CuCoMa on Oracle
  Helps with planning, conducting and monitoring centralized and
  decentralized marketing activities like mailings and call centers

  Based on TYPO3 to make use of it‘s features for defining and
  handling content related to those activities

  Originally based on MySQL

  Oracle was and still is a customer requirement

    no in-house MySQL knowledge

    scalability needs
Having fun with Oracle
  Known Oracle problem: field name length restrictions

    Can be solved with field name mapping

  It turned out Oracle 10g changed in ways that broke DBAL:

    A „recycle bin“ was introduced, that caused ghost tables to
    appear: BIN$/EUEmP2XQr+vN09otWMexg==$0

  TYPO3 changed, too:

    In 4.0 more than one group can have access to an element. Do
    you think NULL is an empty string?
Facts & Figures
  Two servers with each 2 x 3,4 GHz Intel P4, Raid, 4GB RAM,
  Windows 2003 Server Apache 2.0

  Software: ZendCore for Oracle, Oracle 10g R2

  Currently ~500 logged in users

  DB: ~10MB for TYPO3, ~180MB for CuCoMa showing strong
  growth
Does it work well?
  There is currently one bug left in that project, causing BE user
  rights to fail in certain cases - otherwise it works fine!

  Speed is perceived as only slightly slower than direct access to
  MySQL provides

  For the future performance advantages are expected as the
  amount of data in the system grows
MS SQL Server
[wmdb]:
A Knowledge Base on SQL Server
  TYPO3-based knowledge base application for a german
  automobile manufacturer (no, not VW...)

  Based on TYPO3 because it allowed fast and easy development
  and provides the needed flexibility and features

  Based on MS SQL Server because the customer

    has no in-house knowledge for MySQL

    thinks there is no support for open source software
Facts & Figures
  Software

   Windows 2003 Server SP1 in VMware GSX running on a
   Windows 2003 host machine

   Apache 1.3.37, PHP 4.1

   SQL Server 2000 SP3

  Hardware

   Dual AMD Opteron 2.4GHz, 2GB RAM
It works!
  Problems including datatype conversion and identifier quoting
  were solved

  SQL Server needed some configuration tweaks

  Performance was a problem on the production system - as
  opposed to the development environment

    moving the VMware setup to a machine not being at 100%
    CPU load solved this

  All in all it works as it should!
MySQL Cluster
Greenpeace Germany
  Greenpeace Germany is using TYPO3 after having switched from
  a system based on OpenACS in 2005

    @artplan[21] from Berlin is the lead for the whole website
    project and the general contractor for Greenpeace

    net&works from Hannover is responsible for planning the
    hardware infrastructure

    Data migration from Oracle (OpenACS) to MySQL (TYPO3) done
    by fishfarm netsolutions from Braunschweig
A problem to solve...
  The web servers cache temporary files locally

  Shared files are stored on distributed storage space

  Shared database content is held in the MySQL cluster



  Wouldn‘t it be great to have the temporary database content on
  the individual web servers, too?
DBAL to the rescue
  First we had to backport DBAL to TYPO3 version 3.8.1 and make
  sure the used extensions where DBAL-compliant

    This affected versioning, t3lib_sql* and DBAL itself

    A handful of extensions needed to be tweaked, too

  Special problem: FE rendering joins pages and cache_pages

    see patch in DBAL doc folder

  All changes have been merged into the core, where useful
Facts & Figures
  The planned setup consists of:

    3 database servers running Continuent uni/cluster for MySQL

    4 web servers with Apache and PHP 4

    Shared files are stored on NFS

    Load balancer

  The setup is scheduled to go live the week after the T3CON
Summary
What have we learned?
  The DBAL is working „well enough“ to use it

  Some issues remain, additional work is needed to get it up and
  running

  Some problems can probably never be solved

  We need you to tell us about your problems and fixes!



  We need a new way of accessing data for the future!
Questions? Answers!


                      Maybe...
It Works! People to Share
Inspiring
Presenting DBAL use in real life.




                                                             Karsten Dambekalns
                                    karsten@typo3.org | k.dambekalns@fishfarm.de

Contenu connexe

Tendances

Simplify Consolidation with Oracle Pluggable Databases
Simplify Consolidation with Oracle Pluggable DatabasesSimplify Consolidation with Oracle Pluggable Databases
Simplify Consolidation with Oracle Pluggable Databasesomnidba
 
Flexible and Fast Storage for Deep Learning with Alluxio
Flexible and Fast Storage for Deep Learning with Alluxio Flexible and Fast Storage for Deep Learning with Alluxio
Flexible and Fast Storage for Deep Learning with Alluxio Alluxio, Inc.
 
AWS Summit Berlin 2012 Talk on Web Data Commons
AWS Summit Berlin 2012 Talk on Web Data CommonsAWS Summit Berlin 2012 Talk on Web Data Commons
AWS Summit Berlin 2012 Talk on Web Data CommonsHannes Mühleisen
 
Big data - Apache Hadoop for Beginner's
Big data - Apache Hadoop for Beginner'sBig data - Apache Hadoop for Beginner's
Big data - Apache Hadoop for Beginner'ssenthil0809
 
23 Top .Net Core Libraries List Every Developer Must Know
23 Top .Net Core Libraries List Every Developer Must Know23 Top .Net Core Libraries List Every Developer Must Know
23 Top .Net Core Libraries List Every Developer Must KnowKaty Slemon
 
Installing Postgres on Linux
Installing Postgres on LinuxInstalling Postgres on Linux
Installing Postgres on LinuxEDB
 
AskTom: How to Make and Test Your Application "Oracle RAC Ready"?
AskTom: How to Make and Test Your Application "Oracle RAC Ready"?AskTom: How to Make and Test Your Application "Oracle RAC Ready"?
AskTom: How to Make and Test Your Application "Oracle RAC Ready"?Markus Michalewicz
 
Datascience Training with Hadoop, Python Machine Learning & Scala, Spark
Datascience Training with Hadoop, Python Machine Learning & Scala, SparkDatascience Training with Hadoop, Python Machine Learning & Scala, Spark
Datascience Training with Hadoop, Python Machine Learning & Scala, SparkSequelGate
 
Implementing High Availability Caching with Memcached
Implementing High Availability Caching with MemcachedImplementing High Availability Caching with Memcached
Implementing High Availability Caching with MemcachedGear6
 
Oracle Maximum Availability Architecture
Oracle Maximum Availability ArchitectureOracle Maximum Availability Architecture
Oracle Maximum Availability ArchitectureMarketingArrowECS_CZ
 
Why Upgrade to Oracle Database 12c?
Why Upgrade to Oracle Database 12c?Why Upgrade to Oracle Database 12c?
Why Upgrade to Oracle Database 12c?DLT Solutions
 
Oracle Enteprise Manager Cloud Control 12c - Setting Up Metrics and Monitorin...
Oracle Enteprise Manager Cloud Control 12c - Setting Up Metrics and Monitorin...Oracle Enteprise Manager Cloud Control 12c - Setting Up Metrics and Monitorin...
Oracle Enteprise Manager Cloud Control 12c - Setting Up Metrics and Monitorin...Leighton Nelson
 
Best Practice in Accelerating Data Applications with Spark+Alluxio
Best Practice in Accelerating Data Applications with Spark+AlluxioBest Practice in Accelerating Data Applications with Spark+Alluxio
Best Practice in Accelerating Data Applications with Spark+AlluxioAlluxio, Inc.
 
Database Lifecycle Management and Cloud Management - Hands on Lab (OOW2014)
Database Lifecycle Management and Cloud Management - Hands on Lab (OOW2014)Database Lifecycle Management and Cloud Management - Hands on Lab (OOW2014)
Database Lifecycle Management and Cloud Management - Hands on Lab (OOW2014)Hari Srinivasan
 
EDB Postgres with Containers
EDB Postgres with ContainersEDB Postgres with Containers
EDB Postgres with ContainersEDB
 
Pass Summit Linux Scripting for the Microsoft Professional
Pass Summit Linux Scripting for the Microsoft ProfessionalPass Summit Linux Scripting for the Microsoft Professional
Pass Summit Linux Scripting for the Microsoft ProfessionalKellyn Pot'Vin-Gorman
 
Oracle Cloud is Best for Oracle Database - High Availability
Oracle Cloud is Best for Oracle Database - High AvailabilityOracle Cloud is Best for Oracle Database - High Availability
Oracle Cloud is Best for Oracle Database - High AvailabilityMarkus Michalewicz
 

Tendances (20)

Simplify Consolidation with Oracle Pluggable Databases
Simplify Consolidation with Oracle Pluggable DatabasesSimplify Consolidation with Oracle Pluggable Databases
Simplify Consolidation with Oracle Pluggable Databases
 
Vc++
Vc++Vc++
Vc++
 
Flexible and Fast Storage for Deep Learning with Alluxio
Flexible and Fast Storage for Deep Learning with Alluxio Flexible and Fast Storage for Deep Learning with Alluxio
Flexible and Fast Storage for Deep Learning with Alluxio
 
AWS Summit Berlin 2012 Talk on Web Data Commons
AWS Summit Berlin 2012 Talk on Web Data CommonsAWS Summit Berlin 2012 Talk on Web Data Commons
AWS Summit Berlin 2012 Talk on Web Data Commons
 
Big data - Apache Hadoop for Beginner's
Big data - Apache Hadoop for Beginner'sBig data - Apache Hadoop for Beginner's
Big data - Apache Hadoop for Beginner's
 
23 Top .Net Core Libraries List Every Developer Must Know
23 Top .Net Core Libraries List Every Developer Must Know23 Top .Net Core Libraries List Every Developer Must Know
23 Top .Net Core Libraries List Every Developer Must Know
 
Installing Postgres on Linux
Installing Postgres on LinuxInstalling Postgres on Linux
Installing Postgres on Linux
 
AskTom: How to Make and Test Your Application "Oracle RAC Ready"?
AskTom: How to Make and Test Your Application "Oracle RAC Ready"?AskTom: How to Make and Test Your Application "Oracle RAC Ready"?
AskTom: How to Make and Test Your Application "Oracle RAC Ready"?
 
Datascience Training with Hadoop, Python Machine Learning & Scala, Spark
Datascience Training with Hadoop, Python Machine Learning & Scala, SparkDatascience Training with Hadoop, Python Machine Learning & Scala, Spark
Datascience Training with Hadoop, Python Machine Learning & Scala, Spark
 
Implementing High Availability Caching with Memcached
Implementing High Availability Caching with MemcachedImplementing High Availability Caching with Memcached
Implementing High Availability Caching with Memcached
 
Oracle Maximum Availability Architecture
Oracle Maximum Availability ArchitectureOracle Maximum Availability Architecture
Oracle Maximum Availability Architecture
 
Why Upgrade to Oracle Database 12c?
Why Upgrade to Oracle Database 12c?Why Upgrade to Oracle Database 12c?
Why Upgrade to Oracle Database 12c?
 
Oracle Enteprise Manager Cloud Control 12c - Setting Up Metrics and Monitorin...
Oracle Enteprise Manager Cloud Control 12c - Setting Up Metrics and Monitorin...Oracle Enteprise Manager Cloud Control 12c - Setting Up Metrics and Monitorin...
Oracle Enteprise Manager Cloud Control 12c - Setting Up Metrics and Monitorin...
 
Cca 410clouderahadoopcertificationquestions
Cca 410clouderahadoopcertificationquestionsCca 410clouderahadoopcertificationquestions
Cca 410clouderahadoopcertificationquestions
 
Best Practice in Accelerating Data Applications with Spark+Alluxio
Best Practice in Accelerating Data Applications with Spark+AlluxioBest Practice in Accelerating Data Applications with Spark+Alluxio
Best Practice in Accelerating Data Applications with Spark+Alluxio
 
Database Lifecycle Management and Cloud Management - Hands on Lab (OOW2014)
Database Lifecycle Management and Cloud Management - Hands on Lab (OOW2014)Database Lifecycle Management and Cloud Management - Hands on Lab (OOW2014)
Database Lifecycle Management and Cloud Management - Hands on Lab (OOW2014)
 
Oow Ppt 2
Oow Ppt 2Oow Ppt 2
Oow Ppt 2
 
EDB Postgres with Containers
EDB Postgres with ContainersEDB Postgres with Containers
EDB Postgres with Containers
 
Pass Summit Linux Scripting for the Microsoft Professional
Pass Summit Linux Scripting for the Microsoft ProfessionalPass Summit Linux Scripting for the Microsoft Professional
Pass Summit Linux Scripting for the Microsoft Professional
 
Oracle Cloud is Best for Oracle Database - High Availability
Oracle Cloud is Best for Oracle Database - High AvailabilityOracle Cloud is Best for Oracle Database - High Availability
Oracle Cloud is Best for Oracle Database - High Availability
 

En vedette

JSP Tag Library
JSP Tag LibraryJSP Tag Library
JSP Tag Libraryjgiudici
 
Talk comenius su vesuvio 13 marzo 2014
Talk comenius su vesuvio 13 marzo 2014Talk comenius su vesuvio 13 marzo 2014
Talk comenius su vesuvio 13 marzo 2014Rositsa Dimova
 
Open Data 4 Startups
Open Data 4 StartupsOpen Data 4 Startups
Open Data 4 Startupsmzaglio
 
AUD Review issue 7_Extract
AUD Review issue 7_ExtractAUD Review issue 7_Extract
AUD Review issue 7_ExtractKevin Martin
 
Wms Student Research Conference 2008 Presentation (F Niemi)
Wms Student Research Conference 2008 Presentation (F Niemi)Wms Student Research Conference 2008 Presentation (F Niemi)
Wms Student Research Conference 2008 Presentation (F Niemi)Fa Niemi
 
Feb 18 what we learned kcic
Feb 18  what we learned kcic Feb 18  what we learned kcic
Feb 18 what we learned kcic Hack the Hood
 
Open data 4 Startups @ Digital Festival Torino
Open data 4 Startups @ Digital Festival TorinoOpen data 4 Startups @ Digital Festival Torino
Open data 4 Startups @ Digital Festival Torinomzaglio
 
7 Habits of SEO-Centric Web Design
7 Habits of SEO-Centric Web Design7 Habits of SEO-Centric Web Design
7 Habits of SEO-Centric Web DesignDino Baskovic
 
Early spring in the park
Early spring in the parkEarly spring in the park
Early spring in the parkRositsa Dimova
 
March 6 building visibility for yr project
March 6 building visibility for yr projectMarch 6 building visibility for yr project
March 6 building visibility for yr projectHack the Hood
 
Building Tech Vision
Building Tech VisionBuilding Tech Vision
Building Tech VisionJosh Allen
 
A review of Office AutoPilot
A review of Office AutoPilotA review of Office AutoPilot
A review of Office AutoPilotE-Web Marketing
 
Implementing a JSR-283 Content Repository in PHP
Implementing a JSR-283 Content Repository in PHPImplementing a JSR-283 Content Repository in PHP
Implementing a JSR-283 Content Repository in PHPKarsten Dambekalns
 
Emplois du Temps du 2ème semestre 2016-2017
Emplois du Temps du 2ème semestre 2016-2017Emplois du Temps du 2ème semestre 2016-2017
Emplois du Temps du 2ème semestre 2016-2017Mohamed Larbi BEN YOUNES
 
INERGY SLIDE SHOW
INERGY SLIDE SHOWINERGY SLIDE SHOW
INERGY SLIDE SHOWguest5ae2c9
 

En vedette (20)

JSP Tag Library
JSP Tag LibraryJSP Tag Library
JSP Tag Library
 
Talk comenius su vesuvio 13 marzo 2014
Talk comenius su vesuvio 13 marzo 2014Talk comenius su vesuvio 13 marzo 2014
Talk comenius su vesuvio 13 marzo 2014
 
Open Data 4 Startups
Open Data 4 StartupsOpen Data 4 Startups
Open Data 4 Startups
 
AUD Review issue 7_Extract
AUD Review issue 7_ExtractAUD Review issue 7_Extract
AUD Review issue 7_Extract
 
Wms Student Research Conference 2008 Presentation (F Niemi)
Wms Student Research Conference 2008 Presentation (F Niemi)Wms Student Research Conference 2008 Presentation (F Niemi)
Wms Student Research Conference 2008 Presentation (F Niemi)
 
Water sadikov daniel
Water sadikov danielWater sadikov daniel
Water sadikov daniel
 
Quen son eu? (I)
Quen son eu? (I)Quen son eu? (I)
Quen son eu? (I)
 
Feb 18 what we learned kcic
Feb 18  what we learned kcic Feb 18  what we learned kcic
Feb 18 what we learned kcic
 
Open data 4 Startups @ Digital Festival Torino
Open data 4 Startups @ Digital Festival TorinoOpen data 4 Startups @ Digital Festival Torino
Open data 4 Startups @ Digital Festival Torino
 
7 Habits of SEO-Centric Web Design
7 Habits of SEO-Centric Web Design7 Habits of SEO-Centric Web Design
7 Habits of SEO-Centric Web Design
 
Job seekers 2
Job seekers 2Job seekers 2
Job seekers 2
 
Early spring in the park
Early spring in the parkEarly spring in the park
Early spring in the park
 
March 6 building visibility for yr project
March 6 building visibility for yr projectMarch 6 building visibility for yr project
March 6 building visibility for yr project
 
Building Tech Vision
Building Tech VisionBuilding Tech Vision
Building Tech Vision
 
Learning about markets
Learning about marketsLearning about markets
Learning about markets
 
A review of Office AutoPilot
A review of Office AutoPilotA review of Office AutoPilot
A review of Office AutoPilot
 
Implementing a JSR-283 Content Repository in PHP
Implementing a JSR-283 Content Repository in PHPImplementing a JSR-283 Content Repository in PHP
Implementing a JSR-283 Content Repository in PHP
 
Emplois du Temps du 2ème semestre 2016-2017
Emplois du Temps du 2ème semestre 2016-2017Emplois du Temps du 2ème semestre 2016-2017
Emplois du Temps du 2ème semestre 2016-2017
 
INERGY SLIDE SHOW
INERGY SLIDE SHOWINERGY SLIDE SHOW
INERGY SLIDE SHOW
 
Re&agri 2014 powering agriculture - maria
Re&agri 2014   powering agriculture - mariaRe&agri 2014   powering agriculture - maria
Re&agri 2014 powering agriculture - maria
 

Similaire à It Works! Presenting DBAL use in real life

Tips_Tricks_for_Oracle_E-Business Suite_Database_Upgrade.pdf
Tips_Tricks_for_Oracle_E-Business Suite_Database_Upgrade.pdfTips_Tricks_for_Oracle_E-Business Suite_Database_Upgrade.pdf
Tips_Tricks_for_Oracle_E-Business Suite_Database_Upgrade.pdfAkhashRamnath
 
Advantages of running Oracle 11g on Microsoft Windows Server x64
Advantages of running Oracle 11g on Microsoft Windows Server x64Advantages of running Oracle 11g on Microsoft Windows Server x64
Advantages of running Oracle 11g on Microsoft Windows Server x64Performance Tuning Corporation
 
Migration to Oracle 12c Made Easy Using Replication Technology
Migration to Oracle 12c Made Easy Using Replication TechnologyMigration to Oracle 12c Made Easy Using Replication Technology
Migration to Oracle 12c Made Easy Using Replication TechnologyDonna Guazzaloca-Zehl
 
2 gb or not 2gb file limits in oracle
2 gb or not 2gb   file limits in oracle2 gb or not 2gb   file limits in oracle
2 gb or not 2gb file limits in oracleJean Gerard
 
Optimizing Your Database Performance | Embarcadero Technologies
Optimizing Your Database Performance | Embarcadero TechnologiesOptimizing Your Database Performance | Embarcadero Technologies
Optimizing Your Database Performance | Embarcadero TechnologiesEmbarcadero Technologies
 
Optimizing Your Database Performance | Embarcadero Technologies
Optimizing Your Database Performance | Embarcadero TechnologiesOptimizing Your Database Performance | Embarcadero Technologies
Optimizing Your Database Performance | Embarcadero TechnologiesMichael Findling
 
Performant Django - Ara Anjargolian
Performant Django - Ara AnjargolianPerformant Django - Ara Anjargolian
Performant Django - Ara AnjargolianHakka Labs
 
Things learned from OpenWorld 2013
Things learned from OpenWorld 2013Things learned from OpenWorld 2013
Things learned from OpenWorld 2013Connor McDonald
 
Collaborate 2009 - Migrating a Data Warehouse from Microsoft SQL Server to Or...
Collaborate 2009 - Migrating a Data Warehouse from Microsoft SQL Server to Or...Collaborate 2009 - Migrating a Data Warehouse from Microsoft SQL Server to Or...
Collaborate 2009 - Migrating a Data Warehouse from Microsoft SQL Server to Or...djkucera
 
A lab tutorial about How you can get started and automate DB12c Multitenant l...
A lab tutorial about How you can get started and automate DB12c Multitenant l...A lab tutorial about How you can get started and automate DB12c Multitenant l...
A lab tutorial about How you can get started and automate DB12c Multitenant l...Hari Srinivasan
 
Oracle E-Business Suite – Should I Stay,.pptx
Oracle E-Business Suite – Should I Stay,.pptxOracle E-Business Suite – Should I Stay,.pptx
Oracle E-Business Suite – Should I Stay,.pptxKommaneni Sreenivasulu
 
Big data & frameworks: no book for you anymore.
Big data & frameworks: no book for you anymore.Big data & frameworks: no book for you anymore.
Big data & frameworks: no book for you anymore.Roman Nikitchenko
 
Big data & frameworks: no book for you anymore
Big data & frameworks: no book for you anymoreBig data & frameworks: no book for you anymore
Big data & frameworks: no book for you anymoreStfalcon Meetups
 
Java Memory Hogs.pdf
Java Memory Hogs.pdfJava Memory Hogs.pdf
Java Memory Hogs.pdfGurbinder3
 
22059 slides
22059 slides22059 slides
22059 slidespholden1
 
Building data pipelines at Shopee with DEC
Building data pipelines at Shopee with DECBuilding data pipelines at Shopee with DEC
Building data pipelines at Shopee with DECRim Zaidullin
 
Performance tuning intro
Performance tuning introPerformance tuning intro
Performance tuning introaioughydchapter
 

Similaire à It Works! Presenting DBAL use in real life (20)

Tips_Tricks_for_Oracle_E-Business Suite_Database_Upgrade.pdf
Tips_Tricks_for_Oracle_E-Business Suite_Database_Upgrade.pdfTips_Tricks_for_Oracle_E-Business Suite_Database_Upgrade.pdf
Tips_Tricks_for_Oracle_E-Business Suite_Database_Upgrade.pdf
 
Advantages of running Oracle 11g on Microsoft Windows Server x64
Advantages of running Oracle 11g on Microsoft Windows Server x64Advantages of running Oracle 11g on Microsoft Windows Server x64
Advantages of running Oracle 11g on Microsoft Windows Server x64
 
Migration to Oracle 12c Made Easy Using Replication Technology
Migration to Oracle 12c Made Easy Using Replication TechnologyMigration to Oracle 12c Made Easy Using Replication Technology
Migration to Oracle 12c Made Easy Using Replication Technology
 
2 gb or not 2gb file limits in oracle
2 gb or not 2gb   file limits in oracle2 gb or not 2gb   file limits in oracle
2 gb or not 2gb file limits in oracle
 
Optimizing Your Database Performance | Embarcadero Technologies
Optimizing Your Database Performance | Embarcadero TechnologiesOptimizing Your Database Performance | Embarcadero Technologies
Optimizing Your Database Performance | Embarcadero Technologies
 
Optimizing Your Database Performance | Embarcadero Technologies
Optimizing Your Database Performance | Embarcadero TechnologiesOptimizing Your Database Performance | Embarcadero Technologies
Optimizing Your Database Performance | Embarcadero Technologies
 
Performant Django - Ara Anjargolian
Performant Django - Ara AnjargolianPerformant Django - Ara Anjargolian
Performant Django - Ara Anjargolian
 
Things learned from OpenWorld 2013
Things learned from OpenWorld 2013Things learned from OpenWorld 2013
Things learned from OpenWorld 2013
 
Collaborate 2009 - Migrating a Data Warehouse from Microsoft SQL Server to Or...
Collaborate 2009 - Migrating a Data Warehouse from Microsoft SQL Server to Or...Collaborate 2009 - Migrating a Data Warehouse from Microsoft SQL Server to Or...
Collaborate 2009 - Migrating a Data Warehouse from Microsoft SQL Server to Or...
 
A lab tutorial about How you can get started and automate DB12c Multitenant l...
A lab tutorial about How you can get started and automate DB12c Multitenant l...A lab tutorial about How you can get started and automate DB12c Multitenant l...
A lab tutorial about How you can get started and automate DB12c Multitenant l...
 
Performance Tuning intro
Performance Tuning introPerformance Tuning intro
Performance Tuning intro
 
Oracle E-Business Suite – Should I Stay,.pptx
Oracle E-Business Suite – Should I Stay,.pptxOracle E-Business Suite – Should I Stay,.pptx
Oracle E-Business Suite – Should I Stay,.pptx
 
Big data & frameworks: no book for you anymore.
Big data & frameworks: no book for you anymore.Big data & frameworks: no book for you anymore.
Big data & frameworks: no book for you anymore.
 
Big data & frameworks: no book for you anymore
Big data & frameworks: no book for you anymoreBig data & frameworks: no book for you anymore
Big data & frameworks: no book for you anymore
 
Java Memory Hogs.pdf
Java Memory Hogs.pdfJava Memory Hogs.pdf
Java Memory Hogs.pdf
 
PASS Summit 2020
PASS Summit 2020PASS Summit 2020
PASS Summit 2020
 
22059 slides
22059 slides22059 slides
22059 slides
 
Building data pipelines at Shopee with DEC
Building data pipelines at Shopee with DECBuilding data pipelines at Shopee with DEC
Building data pipelines at Shopee with DEC
 
Features
FeaturesFeatures
Features
 
Performance tuning intro
Performance tuning introPerformance tuning intro
Performance tuning intro
 

Plus de Karsten Dambekalns

The Perfect Neos Project Setup
The Perfect Neos Project SetupThe Perfect Neos Project Setup
The Perfect Neos Project SetupKarsten Dambekalns
 
Sawubona! Content Dimensions with Neos
Sawubona! Content Dimensions with NeosSawubona! Content Dimensions with Neos
Sawubona! Content Dimensions with NeosKarsten Dambekalns
 
Deploying TYPO3 Neos websites using Surf
Deploying TYPO3 Neos websites using SurfDeploying TYPO3 Neos websites using Surf
Deploying TYPO3 Neos websites using SurfKarsten Dambekalns
 
Profiling TYPO3 Flow Applications
Profiling TYPO3 Flow ApplicationsProfiling TYPO3 Flow Applications
Profiling TYPO3 Flow ApplicationsKarsten Dambekalns
 
Using Document Databases with TYPO3 Flow
Using Document Databases with TYPO3 FlowUsing Document Databases with TYPO3 Flow
Using Document Databases with TYPO3 FlowKarsten Dambekalns
 
How Git and Gerrit make you more productive
How Git and Gerrit make you more productiveHow Git and Gerrit make you more productive
How Git and Gerrit make you more productiveKarsten Dambekalns
 
The agile future of a ponderous project
The agile future of a ponderous projectThe agile future of a ponderous project
The agile future of a ponderous projectKarsten Dambekalns
 
How Domain-Driven Design helps you to migrate into the future
How Domain-Driven Design helps you to migrate into the futureHow Domain-Driven Design helps you to migrate into the future
How Domain-Driven Design helps you to migrate into the futureKarsten Dambekalns
 
Content Repository, Versioning and Workspaces in TYPO3 Phoenix
Content Repository, Versioning and Workspaces in TYPO3 PhoenixContent Repository, Versioning and Workspaces in TYPO3 Phoenix
Content Repository, Versioning and Workspaces in TYPO3 PhoenixKarsten Dambekalns
 
Transparent Object Persistence (within FLOW3)
Transparent Object Persistence (within FLOW3)Transparent Object Persistence (within FLOW3)
Transparent Object Persistence (within FLOW3)Karsten Dambekalns
 
Transparent Object Persistence with FLOW3
Transparent Object Persistence with FLOW3Transparent Object Persistence with FLOW3
Transparent Object Persistence with FLOW3Karsten Dambekalns
 
Knowledge Management in der TYPO3 Community
Knowledge Management in der TYPO3 CommunityKnowledge Management in der TYPO3 Community
Knowledge Management in der TYPO3 CommunityKarsten Dambekalns
 
A Content Repository for TYPO3 5.0
A Content Repository for TYPO3 5.0A Content Repository for TYPO3 5.0
A Content Repository for TYPO3 5.0Karsten Dambekalns
 
Introduction to Source Code Management
Introduction to Source Code ManagementIntroduction to Source Code Management
Introduction to Source Code ManagementKarsten Dambekalns
 

Plus de Karsten Dambekalns (20)

The Perfect Neos Project Setup
The Perfect Neos Project SetupThe Perfect Neos Project Setup
The Perfect Neos Project Setup
 
Sawubona! Content Dimensions with Neos
Sawubona! Content Dimensions with NeosSawubona! Content Dimensions with Neos
Sawubona! Content Dimensions with Neos
 
Deploying TYPO3 Neos websites using Surf
Deploying TYPO3 Neos websites using SurfDeploying TYPO3 Neos websites using Surf
Deploying TYPO3 Neos websites using Surf
 
Profiling TYPO3 Flow Applications
Profiling TYPO3 Flow ApplicationsProfiling TYPO3 Flow Applications
Profiling TYPO3 Flow Applications
 
Using Document Databases with TYPO3 Flow
Using Document Databases with TYPO3 FlowUsing Document Databases with TYPO3 Flow
Using Document Databases with TYPO3 Flow
 
i18n and L10n in TYPO3 Flow
i18n and L10n in TYPO3 Flowi18n and L10n in TYPO3 Flow
i18n and L10n in TYPO3 Flow
 
FLOW3-Workshop F3X12
FLOW3-Workshop F3X12FLOW3-Workshop F3X12
FLOW3-Workshop F3X12
 
Doctrine in FLOW3
Doctrine in FLOW3Doctrine in FLOW3
Doctrine in FLOW3
 
How Git and Gerrit make you more productive
How Git and Gerrit make you more productiveHow Git and Gerrit make you more productive
How Git and Gerrit make you more productive
 
The agile future of a ponderous project
The agile future of a ponderous projectThe agile future of a ponderous project
The agile future of a ponderous project
 
How Domain-Driven Design helps you to migrate into the future
How Domain-Driven Design helps you to migrate into the futureHow Domain-Driven Design helps you to migrate into the future
How Domain-Driven Design helps you to migrate into the future
 
Content Repository, Versioning and Workspaces in TYPO3 Phoenix
Content Repository, Versioning and Workspaces in TYPO3 PhoenixContent Repository, Versioning and Workspaces in TYPO3 Phoenix
Content Repository, Versioning and Workspaces in TYPO3 Phoenix
 
Transparent Object Persistence (within FLOW3)
Transparent Object Persistence (within FLOW3)Transparent Object Persistence (within FLOW3)
Transparent Object Persistence (within FLOW3)
 
JavaScript for PHP Developers
JavaScript for PHP DevelopersJavaScript for PHP Developers
JavaScript for PHP Developers
 
Transparent Object Persistence with FLOW3
Transparent Object Persistence with FLOW3Transparent Object Persistence with FLOW3
Transparent Object Persistence with FLOW3
 
TDD (with FLOW3)
TDD (with FLOW3)TDD (with FLOW3)
TDD (with FLOW3)
 
Knowledge Management in der TYPO3 Community
Knowledge Management in der TYPO3 CommunityKnowledge Management in der TYPO3 Community
Knowledge Management in der TYPO3 Community
 
Unicode & PHP6
Unicode & PHP6Unicode & PHP6
Unicode & PHP6
 
A Content Repository for TYPO3 5.0
A Content Repository for TYPO3 5.0A Content Repository for TYPO3 5.0
A Content Repository for TYPO3 5.0
 
Introduction to Source Code Management
Introduction to Source Code ManagementIntroduction to Source Code Management
Introduction to Source Code Management
 

Dernier

Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
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
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
"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
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
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
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 

Dernier (20)

Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
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!
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
"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
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
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
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 

It Works! Presenting DBAL use in real life

  • 1. It Works! Presenting DBAL use in real life.
  • 2. Overview Introduction Case Studies Oracle 10g MS SQL Server MySQL Summary Q&A
  • 4. About me Karsten Dambekalns k.dambekalns@fishfarm.de Co-Founder of fishfarm netsolutions Active Member of the TYPO3 Association Core Team Member and participating of the current 5.0 development
  • 5. Introduction DBAL project started in 2004 Slow – but steady – progress since then First official release with TYPO3 version 4.0 in 2006 Still some issues, still lack of feedback Some real-life projects getting done fields include NGOs, banking, marketing, manufacturing, services
  • 6. Current status Works pretty well Satisfactory speed Issues with BLOB fields may come up Non-DBAL-compliant extensions break (naturally) 20 open issues in the bug tracker, some may be fixed already Further enhancements planned, specifically performance-wise
  • 8. CuCoMa on Oracle Helps with planning, conducting and monitoring centralized and decentralized marketing activities like mailings and call centers Based on TYPO3 to make use of it‘s features for defining and handling content related to those activities Originally based on MySQL Oracle was and still is a customer requirement no in-house MySQL knowledge scalability needs
  • 9. Having fun with Oracle Known Oracle problem: field name length restrictions Can be solved with field name mapping It turned out Oracle 10g changed in ways that broke DBAL: A „recycle bin“ was introduced, that caused ghost tables to appear: BIN$/EUEmP2XQr+vN09otWMexg==$0 TYPO3 changed, too: In 4.0 more than one group can have access to an element. Do you think NULL is an empty string?
  • 10. Facts & Figures Two servers with each 2 x 3,4 GHz Intel P4, Raid, 4GB RAM, Windows 2003 Server Apache 2.0 Software: ZendCore for Oracle, Oracle 10g R2 Currently ~500 logged in users DB: ~10MB for TYPO3, ~180MB for CuCoMa showing strong growth
  • 11. Does it work well? There is currently one bug left in that project, causing BE user rights to fail in certain cases - otherwise it works fine! Speed is perceived as only slightly slower than direct access to MySQL provides For the future performance advantages are expected as the amount of data in the system grows
  • 13. [wmdb]: A Knowledge Base on SQL Server TYPO3-based knowledge base application for a german automobile manufacturer (no, not VW...) Based on TYPO3 because it allowed fast and easy development and provides the needed flexibility and features Based on MS SQL Server because the customer has no in-house knowledge for MySQL thinks there is no support for open source software
  • 14. Facts & Figures Software Windows 2003 Server SP1 in VMware GSX running on a Windows 2003 host machine Apache 1.3.37, PHP 4.1 SQL Server 2000 SP3 Hardware Dual AMD Opteron 2.4GHz, 2GB RAM
  • 15. It works! Problems including datatype conversion and identifier quoting were solved SQL Server needed some configuration tweaks Performance was a problem on the production system - as opposed to the development environment moving the VMware setup to a machine not being at 100% CPU load solved this All in all it works as it should!
  • 17. Greenpeace Germany Greenpeace Germany is using TYPO3 after having switched from a system based on OpenACS in 2005 @artplan[21] from Berlin is the lead for the whole website project and the general contractor for Greenpeace net&works from Hannover is responsible for planning the hardware infrastructure Data migration from Oracle (OpenACS) to MySQL (TYPO3) done by fishfarm netsolutions from Braunschweig
  • 18. A problem to solve... The web servers cache temporary files locally Shared files are stored on distributed storage space Shared database content is held in the MySQL cluster Wouldn‘t it be great to have the temporary database content on the individual web servers, too?
  • 19. DBAL to the rescue First we had to backport DBAL to TYPO3 version 3.8.1 and make sure the used extensions where DBAL-compliant This affected versioning, t3lib_sql* and DBAL itself A handful of extensions needed to be tweaked, too Special problem: FE rendering joins pages and cache_pages see patch in DBAL doc folder All changes have been merged into the core, where useful
  • 20. Facts & Figures The planned setup consists of: 3 database servers running Continuent uni/cluster for MySQL 4 web servers with Apache and PHP 4 Shared files are stored on NFS Load balancer The setup is scheduled to go live the week after the T3CON
  • 22. What have we learned? The DBAL is working „well enough“ to use it Some issues remain, additional work is needed to get it up and running Some problems can probably never be solved We need you to tell us about your problems and fixes! We need a new way of accessing data for the future!
  • 24. It Works! People to Share Inspiring Presenting DBAL use in real life. Karsten Dambekalns karsten@typo3.org | k.dambekalns@fishfarm.de