Forget database xml: 3 Replacements You Need to Jump On
With the release of the Zend2 database, there has been a growing demand for more flexibility in how the database is structured, especially when creating new applications. It is easy to get overwhelmed with the amount of information that is required to populate an application when a few simple changes can make the job go from a hassle to an easy one.
As a database admin, I know the pain of having to deal with a database that is organized in a different way than I need it to be. I can see this pain in the database I help create for the Zend framework. We have a new database user who is currently in charge of our new Zend framework database and I work with him on changing the way the database works for our new applications.
For our new Zend framework application database, we have to use a different database approach. One that puts us in control of our application database and allows us to store our data in a more efficient way. We can use SQLite and we have the ability to store data in a database. Unfortunately, our databases are not as user friendly as we want them to be. Our database tables have a lot of columns that are not all useable for our applications.
With the latest version of the Zend Framework we can now store our database in a way that is more user friendly. For example, the database schema for our application is much more flexible and can use all the columns that were not used on earlier versions. We can now create our database for our application in XML files, and we can also insert the database schema into a text file we can read later.
Zend is also great for creating web services. Our application now has a web service that will automatically generate our database schema for us for the next run-time.
XML makes it much easier to share the database schema between developers and the database administrators. Zend 2.0 includes a built-in XML database with all our application data, which can be easily shared. One of the best features of Zend 2, though, is its support for PHP and Perl. The Zend web interface is still not as functional as it’s made out to be, but the XML-powered database is definitely a step in the right direction.
There are some other features that we’re working on (like using PHP to generate the database schema, using PHP to parse the XML, generating the Zend controller classes, etc), but we’re currently focusing on XML for the database. We know that XML is the future of database-driven web applications, so it’s a great solution to our current problems.
I think that XML solves a lot of problems for existing database-powered applications. But it is not without its problems. For example, XML is one of the most error-prone formats. It is hard to get right, and the data is not as portable as it once was. XML is a lot more complicated to parse than plain text (which is how we have databases and web pages). And XML is not just a technology issue. It’s a design decision.
XML is an attempt to get rid of the need for data to be copied and pasted into another file/database/whatever. XML is a way to allow the data to be manipulated without having to worry about the file size and whether or not the file can be copied. But its not perfect, since you still have to worry about file sizes and file compatibility issues.