Download - It Works! Presenting DBAL use in real life
About meKarsten [email protected]
Co-Founder of fishfarm netsolutions
Active Member of the TYPO3 Association
Core Team Member and participating of the current 5.0 development
IntroductionDBAL 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 statusWorks 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
CuCoMa on OracleHelps 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 OracleKnown 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 & FiguresTwo 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
[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 & FiguresSoftware
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!
Greenpeace GermanyGreenpeace 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 rescueFirst 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 & FiguresThe 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
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!
It Works!Presenting DBAL use in real life.Inspiring People to Share
Karsten [email protected] | [email protected]