"Wither Those Tiers" from Frank Sommers

Discussions

News: "Wither Those Tiers" from Frank Sommers

  1. "Wither Those Tiers" from Frank Sommers (8 messages)

    In "Wither Those Tiers," Frank Sommers says that "last decade witnessed the rise of the three-tier enterprise architecture. The experience learned and the need to process increasing amounts of data increasingly fast, are now leading some to rethink the wisdom of three-tier design. One alternative solution moves business logic and data management into a data grid."

    From the article:
    Scaling a three-tier architecture is not an obvious task... To paraphrase Amdahls's Law, a system scales only to the degree its weakest link scales. As more clients access the presentation tier, if those presentation requests must also access the business logic tier, the business logic tier must also scale along with the presentation tier. And if the business logic relies on data stored in the database, then the database must scale up in tandem with the presentation and business logic tiers.
    The solution might be found in Javaspaces, a specification that's been around for quite some time but has only recently really found any traction in the marketplace. Part of the justification for a grid model can be found in applications that require access to a large amount of data quickly: "...they must perform often compute-intensive processing on that data fast. To allow such systems to scale, it is advantageous to place the computation as close to the data as possible. Placing business logic in a separate tier from the database layer, especially if that tier corresponds to physical separation, prevents such systems from scaling. Instead, these applications require breaking down the barriers between the various architecture tiers."
    The result is an architecture that provides a data grid with a JavaSpace-based interface that allows reading and writing data to and fro the data grid. Clients of this grid can belong to a presentation layer, such as Web servers allowing one to submit jobs and present the results, or even other data grids that coordinate work in support of a common operation. Such data grid elements can even be federated into a larger grid.

    Data grid clients access the grid only through proxy objects. JavaSpace proxies are Java objects that can incorporate logic to route requests for data access or data input to the appropriate node, although such dynamic transaction routing is not part of JavaSpaces. Taking advantage of Jini's dynamic code mobility feature, such application logic does not occupy its own architecture tier, but is instead downloaded to JavaSpace clients at runtime.

    While the space-based paradigm has proven to scale both the analytic and data-flow models, it requires a unique programming model that developers may not be familiar with. In addition, JavaSpace nodes must be installed and configured correctly. Several commercial JavaSpaces implementations help solve these challenges...
    What do you think of the concept? (Editor's note: It's unclear to me whether Mr. Sommers actually meant to "wither" the tiers in the title - as in, make them dry up and blow away - or if he was asking "where the tiers were," which would mean using "whither the tiers" instead. I like word games, so I appreciated the title regardless.)
  2. There's an eery similarity here:
    The Data Grid Aggregate Functions capability in Coherence 3.1 takes this parallel processing concept to its natural conclusion for algorithms such as Monte Carlo simulations: Each server in the Data Grid will process in parallel the data that is available locally, and then the partial results from each server are rolled up into a final aggregate result, achieving the maximum theoretical throughput as defined by Amdahl's Law. Applications such as algorithmic trading and real-time risk can plug in their own custom aggregate functions to achieve unparalleled throughput in grid environments.

    Maybe at least include a link?

    Peace,

    Cameron Purdy
    Tangosol Coherence: Clustered Shared Memory for Java
  3. There are ~20K search reasult from google referring data grids and Amdahl's Law:

    http://www.google.com/search?amdahl%27s+law+data%2Bgrid

    Seems like a well-discussed topic...

    Slava
  4. Please check again[ Go to top ]

    Slava -

    "about 783": http://www.google.com/search?q=%22data+grid%22+amdahl

    "about 667": http://www.google.com/search?hl=en&lr=&q=%22data+grid%22+amdahl+tangosol

    However, as you know, that's not the point. Anyone can freely talk about data grids and Amdahl's law, or for that matter any other topic, such as Continuous Query Caching. However, there is a line beyond which fair use requires at least some level of attribution.

    For example, here is a snippet of copyrighted material from Tangosol.com:
    The obvious benefit of this feature is that rather than re-executing the query any time the application looks for the current answer to the questions that the query answers, it can expect that the most current answer will already be waiting for it when the question is asked. Think of it as being able to execute the desired query with zero latency and being able to repeat the query several times every millisecond!

    A few days after we posted that, the following appeared on Gigaspaces.com:
    The obvious benefit of this feature is that rather than re-executing the query any time, GigaSpaces looks for the current answer to the questions that the query answers, and it can expect that the most current answer will already be waiting for it when the question is asked. Think of it as being able to execute the desired query with zero latency and being able to repeat the query several times every millisecond!

    If you google on "millisecond" and and "query" (i.e. as you did with Google), you might get 169,251,925,158 hits. I'll leave the reader to make the decision as to whether the above text is "a well-discussed topic".

    It is distressing for me to be forced to air any of this in public, and it's particularly painful because of the relationships that I have with Nati and with Artima, but enough is enough. We spend a great deal of time and effort (not to mention millions of our own dollars) on R&D, on documentation, and on our market message. It's very painful for us to see our investments being repeatedly looted -- and in public no less! -- without anyone standing up and saying, "Hey, this is wrong!"

    Shame on them for this behavior, and shame on you for defending it (and particularly for not posting a correction after I emailed you). A healthy community is not healthy because of some mysterious external force, but by the collective efforts of its constituents.

    Peace,

    Cameron Purdy
    Tangosol Coherence: Clustered Shared Memory for Java
  5. Those who are interested in more information on this topic are welcome to take a look at a whitepaper i posted few weeks back on the TSS website and been presenting for over a year already. The End of Tier-Based Architecture Nati S. CTO GigaSpaces
  6. Those who are interested in more information on this topic are welcome to take a look at a whitepaper i posted few weeks back on the TSS website and been presenting for over a year already.
    I was interested, so I downloaded the PDF. Unfortunately, in order to read it you need to fill out some personal details in the PDF. With a good privacy policy from a trusted source, I wouldnt usually hesitate, but in this instance, by sumitting the data you are agreeing that someone called TechTarget can collect, use, disclose and transfer all information as they see fit. Thanks but no thanks. Lawrie
  7. I was interested, so I downloaded the PDF. Unfortunately, in order to read it you need to fill out some personal details in the PDF. With a good privacy policy from a trusted source, I wouldnt usually hesitate, but in this instance, by sumitting the data you are agreeing that someone called TechTarget can collect, use, disclose and transfer all information as they see fit.Thanks but no thanks.Lawrie
    Lawrie -- TechTarget is the publisher of TheServerSide, and would be considred a "trusted source" by many. The white paper is also available directly from our web site (registration required): http://www.gigaspaces.com/os_papers.html Geva Perry GigaSpaces
  8. n-tiers architecture[ Go to top ]

    A long time ago, something like 1998, Internet technologies were based on scripting languages like ASP and PHP. Java wasn't very commonly used. The 3-tiers architectures were designed to separate business logic and data from the presentation layer. But we soon realized that 3 tiers architecture were not enough and we moved to n-tiers architecture. By example, A 5-tiers architecture could be : presentation, application, business, data , and database. A SOA architecture is also a n-tiers architecture, with a service layer. Data grids and cache layer are just another tiers, or could also be a part of the data access layer. So can we say that the tiers are withering?
  9. The point here is that there is presentation-facing ("upper-edge"?) business logic and there is persistence-facing ("lower-edge"?) business logic, as well as "neutral" business logic whose purpose is not exclusively to support one or the other of the adjoining tiers. I suspect that your five-tier example maps neatly onto this notion. The point about SOA is that the service interfaces must not be application-aware and therefore should expose only the neutral business logic, since upper- and lower-edge business logic is adaptive in nature and probably has to be implemented in an application-aware manner.