Welcome To The Home Of The Visual FoxPro Experts  
home. signup. forum. archives. search. google. articles. downloads. faq. members. weblogs. file info. rss.
 From: Eric den Doop
  Where is Eric den Doop?
 Eric den Doop
Subject: Look what i found. Quite funny story!
Thread ID: 119 Message ID: 119 # Views: 4 # Ratings: 0
Version: Unknown Category: General VFP Topics
Date: Friday, May 4, 2001 2:09:11 AM         


The last new feature of VFP 7
A couple of the rocket scientists in Redmond who are responsible for thinking great thoughts about data were talking about these quantum computer processors last fall, and one of them made the jump from individual quantum bits to quantum bytes—and then to quantum fields in databases.

Fox being the favorite testing ground for advanced technologies at Redmond, they immediately proposed the concept of quantum buffering to the Fox product team. The slowest aspect of a database is the writing of data, because there's a lot going on—finding the record, writing to disk, confirming the write, and all of it involving that yucky hardware.

Why, they asked, couldn't we improve the speed of a database by introducing quantum buffering during the read and write of database accesses? In other words, why can't we have a data field contain both values—the original value and the saved value—at the same time? This would speed up processing significantly, wouldn't it? Naturally, the Fox team was all ears when it came to improving the speed of their database tool, and a working prototype was put together within six weeks of the initial proposal. Just as when Rushmore was released, the specific internals are a secret, but here's a rough sketch of what will happen as far as the developer is concerned.

Before a read or write operation occurs, a field will contain a value—say, "A." Then the user will perform an action, causing a read or write operation to occur. Invoking the laws of quantum theory allows that field to contain both the original and the new value at the same time. Once that operation has been completed, the field will contain the appropriate value. The user will view the result, and see the final answer.

In other words, there will be a piece of data on disk, and when accessing that record, the record will be quantum buffered so the user can view the data—whether it's the original value or the new value—immediately, before the data is actually read. However, the actual value of the data won't be known until the user reads the record, and the value will only be decided at that point.

Performance improvements
You might be skeptical at this point. "This sounds pretty good in theory, but what's the performance really like in the real world?" Given that this is still in beta, the final results aren't in, but so far the results are very promising. The speed improvement in a read is approximately a factor of 15—that's 15 times faster. The speed improvement in a write is much more significant, by a factor of 80 to 90 times—that's almost 100 times faster.

The only downside is that the value of the data is unknown—it can contain both values—until the user sees it again. This might be a problem for systems that rely on or retrieve data without the user viewing it first—such as compilation queries, and so on. At this point, however, this merely appears to be an implementation issue.

Fox has always been fast—the fastest kid on the block, in fact. With this new advancement of quantum buffering, Fox will be even faster than ever. I'm reminded of the limerick that played on Einstein's theory of relativity:

There was a young lady named Bright Whose speed was much faster than light She set out one day In a relative way And returned the previous night
With quantum buffering in Visual FoxPro 7, we'll be able to execute a query, say, in the middle of the month, like April 18, and have the results returned days or weeks before—like on April 1. I know I can't wait until the product ships!


Look what i found. Quite funny story! Posted by Eric den Doop @ 5/4/2001 2:09:11 AM