Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

It Works! Presenting DBAL use in real life


Published on

Presenting some case studies on DBAL for TYPO3 version 4.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

It Works! Presenting DBAL use in real life

  1. 1. It Works! Presenting DBAL use in real life.
  2. 2. Overview Introduction Case Studies Oracle 10g MS SQL Server MySQL Summary Q&A
  3. 3. Introduction
  4. 4. About me Karsten Dambekalns Co-Founder of fishfarm netsolutions Active Member of the TYPO3 Association Core Team Member and participating of the current 5.0 development
  5. 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. 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
  7. 7. Oracle 10g
  8. 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. 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. 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. 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
  12. 12. MS SQL Server
  13. 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. 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. 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!
  16. 16. MySQL Cluster
  17. 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. 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. 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. 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
  21. 21. Summary
  22. 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!
  23. 23. Questions? Answers! Maybe...
  24. 24. It Works! People to Share Inspiring Presenting DBAL use in real life. Karsten Dambekalns |