SI
SI
discoversearch

We've detected that you're using an ad content blocking browser plug-in or feature. Ads provide a critical source of revenue to the continued operation of Silicon Investor.  We ask that you disable ad blocking while on Silicon Investor in the best interests of our community.  If you are not using an ad blocker but are still receiving this message, make sure your browser's tracking protection is set to the 'standard' level.
Technology Stocks : IFMX - Investment Discussion -- Ignore unavailable to you. Want to Upgrade?


To: Peter W who wrote (9587)2/20/1998 9:49:00 AM
From: Mark Finger  Read Replies (1) | Respond to of 14631
 
>>"... Universal Data option is good for more than just storing
>>pictures and sounds -- it is ultimately the means of doing away with
>>more than 70% of application development and 90% of maintenance
>> within a Fortune 500 company"

>>I'm not sure what you mean by this. The Informix product (base and
>>addons like udo) is a database, nothing more nothing less. A damn
>>good one I have to say - I've developed with the Informix and the
>>competition, and it beats the pants off them - but it's still just a
>>product that lets you store and retrieve data. So how will it help
>>with app development/maintenance?

Peter,
You do not understand the "object" part of ORDBMS. This is not meant as a put-down, but rather as an introduction (so please do not feel insulted). When we talk about data type extensibility, we mean the ability to add new data types (either by combining existing data types similar to a programming language "structure") or by adding completely new data types (pictures, movies, formatted documents).

However, just concentrating on the data storage aspects is missing a majority of the new features. The next aspect to consider is that "code" for manipulating the new data types (objects) can also be added. At the simplest level, it means "comparisons". I can add the code inside the engine to compare two fingerprints or two faces (see the GE Bastille database PR), or to compute the distance between 2 points in 3-D space (for figuring out what is "closest"). This means that comparisons can be done in the engine, without dragging the code down to the client application where it is done in the typical current application. This is why Lou's post referred to the reduction in application code (however, I do not agree to the side of his numbers, but the advantage is substantial). The gain in performance will also be substantial, because you will have far less traffic on the network, because far fewer records will be passed.

Further, many other code pieces can be added inside the engine that can "slice/dice/reduce and cook" the data, so only a portion of the data may need to be extracted (I could extract from the large document just the "abstract" paragraph). Think about doing the building of cross-tabulation objects inside the engine instead of loading the network with lots of traffic, and then being able to access certain rows/columns/pages of that object as you need in a multi-dimensional format.

In addition, two other features of UDO can help a lot. There is built-in collection support, so that you can group similar types of data in sets, ...., and then manipulate that collection.

The other feature is "inheritance". You can take an existing DataBlade's new data type, and extend it even further using inheritance. Only the parts that are modified or new in the new data type (over the previous one) must be coded, instead of coding everything all over again. IFMX even has "late binding" features.
This means that the core features that make object-oriented programming languages like C++ and Java so useful are actually available inside the engine for manipulating the data types. Triggers and stored procedures were ways to embed code inside the engine, but these features are very primitive compared to the capabilities that can now be put into the engine by Datablades.