Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> Re: Mirrored Server for real-time computations?

Re: Mirrored Server for real-time computations?

From: Tony Dare <tonydare_at_yahoo.com>
Date: Sun, 27 Jun 2004 00:04:39 -0700
Message-ID: <5AuDc.1$wV4.76@news.oracle.com>


anacedent wrote:

> (Pete Cresswell) wrote:
> 

>> I'm on a project that's implementing a bond trading system: .Net front
>> end,
>> Oracle back end.
>>
>> A problem has arisen that began with reporting. Many of the reports
>> are based
>> on something the bond traders call "Quality" ratings. There's also
>> something
>> called "Baskets". Holdings of various securities are processed
>> against various
>> characteristics of securities and their underlying credit support.
>>
>> Briefly, computing all this is quite intensive, the data behind the
>> computations
>> can change from minute-to-minute, and the results are critical.
>> For the reporting, they've decided to create tables to receive the
>> computations.
>> Run the computations once, then fire off a batch of 50 or so reports
>> that uses
>> same.
>>
>> However something else has now arisin: the idea of presenting that
>> information
>> real-time in a sort of dashboard presentation. For this, we'd have to
>> re-compute the valuse very often - maybe every few minutes.....and the
>> guys who
>> know Oracle say this would bring the application to it's knees.
>>
>> Unencumbered as I am by any reall knowledge of Oracle, it occurs to me
>> that one
>> solution would be mirroring the DB's tables to another
>> server/processor and
>> having that computer's sole mission in life to be continually
>> computing and
>> re-computing those values and constantly refreshing the tables
>> containing same.
>>
>> Does this make sense to anybody?
>> Alternatives?
> 
> 
> Here is an idea which may or may not work for you.
> I will stipulate that the initial computations are "intensive".
> Through the use of triggers when a value changes, you "back out"
> the old value & "update" using the new value; which ideally would
> have successfully recompute the metric by doing two mathmatical
> operations.
> 
> HTH & YMMV

In .NET there is a DataSet object which is an in memory mirror of what amounts to a view on a table or tables. It's realized in XML but is able to manipulated much as database table would be. You can create indexes on it, relate DataSets to one another, perform computations etc, but it all happens on another server acting as a client to Oracle.

It would perhaps take some of the computation load from the database and put it on a middle tier (it's a maybe, because you would have to refresh the datasets or add to them, causing recurring selects but you have the option to only get changes to the underlying tables rather than the whole tables. From there you ought to be able to push it out to where you need it.

Possibly store the results of the computations in some intermediate file format suitable for data loading, which can occur at database-convenient intervals and times if you need that history.

HTH td Received on Sun Jun 27 2004 - 02:04:39 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US