Databases: Tiers are not enough

Two tiers better than one?


For the majority of Web sites, the two-tier approach is more than adequate. The addition of an application server may be useful for a site that handles a high volume of transactions, or that connects to complex back-end database systems. However, in addition to the cost of extra software and the hardware to run it, there's also the additional development time and skills required, as Presence Online's Jason Hatch has already pointed out.

BMC Software's David Pickering also believes the three-tier approach is not optimum for performance because it increases the demand for network bandwidth.

"I think most performance issues come back to either poor indexing on the query they're trying to execute, or the fact that they're trying to run SQL statements across the network. They run it from the [front end] program and it's sending a lot of data to the [back end] program, which does manipulations, possibly does two or three SQL statements to get the data back to the end user. The more efficient way is to call a stored procedure, let it do all the processing, and just send the end result back to the application program."

While this runs against current three-tier wisdom, Pickering believes the network is often the bottleneck in application performance. "With a three-tier approach, you move the load across three different tiers and you need to send a lot of data over the network and have to put more load on the network. The more users you add to that application, the more network load you have to have, as well as server bandwidth. If you put most of the processing at the back end, you can have a bigger back end server and not necessarily have to have lot of network bandwidth to process that data."

"The three-tier model has its uses, but I think it's more useful to reduce the network traffic and have the processing at the back end," he says.

Three's a crowd

On the other hand, for large complex sites that deal with a large amount of transactional data, adding a third tier can improve scalability and performance, according to Stefano Picozzi, principal consultant at e-business infrastructure software company BEA Systems.

Using an application server separates the three main activities into three separate layers:

  • The application layer--gets the data.

  • The business logic layer--transforms data into useful information which is customised for that end user.

  • The presentation layer--presents the results to the end user.

"It's that second aspect of the technical programming problem that's addressed by application servers, which is how do I get that data and turn it into something meaningful, or a meaningful e-commerce service?" he says.

Most small to medium businesses use two-tier architectures when they start delivering content over the Web, says Picozzi. "In those, what tends to happen is that the business logic is either tied in the presentation layer or mangled up with the database. That's OK in terms of addressing small-scale requirements."

But as demand for the service grows that puts pressure on the databases in terms of the capability of the extensibility of the system, and the capability of scaling up. "That tends to drive the demand to evolve into a three-tier architecture," says Picozzi. He believes larger organisations have generally already been through this learning curve and may start new Web delivery channels using a three-tier architecture from the outset.

Advertisement

Talkback 0 comments

Latest Videos

Sponsored content

Power Centre - Content from our premier sponsors

Blogs

  • David Braue All I want for Xmas is Telstra pricing
    Five consecutive days without broadband has led me to what seemed at the time to be an act of desperation: contemplating signing up for Telstra's 100Mbps cable modem service.
  • Array Sick of broken tender sites
    Some of the state governments desperately need to invest in more user-friendly tender sites so that looking for information on government tenders doesn't have to be a game of blind man's bluff.
  • Array Cyberwar: What is it good for?
    In this week's episode, Cyberwar. What is Australia's place in the world of digital warfare? What are the implications for the NBN?
  • More blogs »

Tags

Back to top

Featured