According to commonly-held legend, databases are either the scourge of the earth or the saviour of mankind. They will either free us from the drudgery of all the minute details of daily life, or they’ll invade our privacy and expose every detail about our personal lives to any multinational corporation with something to sell.
However, Webmasters need to have a third view of databases — one that falls somewhere in the middle of this spectrum. For Webmasters, databases are a necessary evil — they can greatly benefit a site’s design and maintenance, but require detailed technical knowledge and additional resources.
This article will give you a clear idea of the benefits a well-implemented database can bring to your site — so be sure to consider each question with relevance to your own site.
Does your site’s content change frequently?
If the content of your site changes dramatically from day to day, a database can ease the administration of the site. A good example is the Sydney Morning Herald site (the Herald is a well known Australian newspaper). Every day, the Sydney Morning Herald publishes numerous articles by different authors. The site itself has several different index pages that deal with sports, national news, culture, and so on.
In this case, a database is used to store articles, images, author information, and page layouts. Once a piece of information has been stored in the database, a Webmaster can use server-side scripting languages such as JSP or PHP to automatically generate Web pages compiled with content that’s retrieved from the database.
Pages such as the sports page can be automatically generated each day, which saves the site’s Webmasters countless hours of layout. In addition, to search the site content by author, topic or date is simple – it’s also handled by the database software. Normally these tasks would have to be completed by hand, but the implementation of a database-driven system saves the Webmasters hours of work each day.
A good example of a small business with constantly changing content is a local travel agent. Travel agents constantly update their pricing information, specials and available destinations, and it’s not likely to be convenient or efficient for one employee to spend most of their time updating a Web page by hand. So in this situation it might be convenient to automate some of the processes with a database.
Does your business use ecommerce extensively?
Like scores of other Web-based companies, the survivial of well-known retailer Amazon depends upon a database driven Website. Details of each product they sell, including prices, descriptions, reviews and similar or complementary products, are stored in the database.
When customers search for products on the site, server-side software jumps into action, references the database, and pulls out information that relates specifically to that product. This information is then inserted into a pre-designed page layout, and displayed to the customer.
This model yields obvious benefits. It’s fast, ensures a good, uniform presentation of the information that the user requested, and minimises data maintenance for the Amazon team.
However, the key problem with using a database for ecommerce is time. It can take several months to develop a working ecommerce system, and the content will require almost daily maintenance as you or your staff make regular product line updates. Of course, once the system is implemented, it should be relatively easy to add and remove products from the database, and have your corresponding Web pages automatically updated.
Another business that’s optimised the benefits of ecommerce is Everything Linux, which sells products based around the Linux operating system.
Does your site employ user-driven content?
In the last couple of years the Internet has seen an increase in the range of sites driven by user-contributed content. Many Websites now utilise user content to varying degrees.
For example, many sites provide mechanisms by which visitors can engage in discussions about topics that are related to the site’s purpose. This feedback can take many forms – user forums or discussion boards, feedback forms, and inviations for ‘comments’ or ‘reviews’.
For instance, a popular news site, ZDnet, uses a database to store reader comments with articles. This allows the reader to access not just the article, but also the informed comments of others who have read it and feel they have something to contribute.
This type of interaction can improve the visitor experience, engage users in the site, and generate commitment, as well as allowing the siteowner to garner extensive feedback about their products, industry, and user preferences — for free.
To employ user-driven content, you’ll require a database of some kind to automate the receipt and posting of user comments on your site. Your database will collect data from users, and your Web server will reference that data when it generates Web pages.
There are many benefits associated with user feedback that you should consider. It:
- makes your site more dynamic,
- lets you know the opinions of readers with respect to your content,
- engenders loyalty to your site, and
- encourages readers to come back often as the bank of user content grows.
Do you have the resources to support a database-driven site?
A database is a specialised application, and requires certain skills. If you’re looking to employ a database-driven Website, you’ll need to consider whether or not you have the necessary skills to implement and maintain such a setup. It might even be neccessary to employ a full time database administrator.
Also, database driven Websites typically require their own server, which could end up costing you quite a bit to purchase and host on a network, as opposed to simpler Web sites, which will often be hosted on other people’s servers.
So it’s important to make sure the capabilities you build into your site match the time and financial resources you have available to adminster and maintain it. You may need to serioulsy consider your site’s purpose. Ask yourself:
- Can my organisation afford to support the infrastructure required for a database?
- How long will the database take to develop?
- Do we have the necessary skills in-house?
- Who will maintain the database?
…In short, can you afford it? This is the single most important thing you must consider when you look at implementing a database-driven site. The fluid nature of these sites can require significantly more work, money and skills than does your average site. Can you afford to put those resources in?
However, if you can answer yes to those first three questions, and you do have the resources available to maintain a database-driven Website, then go for it! Investigate exactly what you’ll need to build the site, and be sure to make your readers aware of the extra effort that you’ve gone to. You’ll certainly end up with a dynamic site, and one that has the potential to attract additional readers, customers, and general attention!
Renai is an Australian journalist who focuses on the information technology industry. He spends his time investigating stories, writing articles and attempting to find a word processor that knows what he's trying to say when he doesn't. Occasionally he moonlights as a Linux/FreeBSD sysadmin and bartender. Visit him here.