Re: Nearest Common Ancestor Report (XDb1's $1000 Challenge)

From: Neo <neo55592_at_hotmail.com>
Date: 7 Jun 2004 15:20:26 -0700
Message-ID: <4b45d3ad.0406071420.4978a227_at_posting.google.com>


> This started as a challenge to beat XDb1 at it's own game.

Representing things (ie any hierarchy) is not XDb1's own game. Isn't RM also in the game of representing things (ie any hierarchy)?  

> And the experiment, though admittedly off-topic for all groups
> this is crossposted to, still holds my interest.

Isn't the to ability to represent things (ie any hierarchy) without NULLs or redundancy in a generic manner an interest to database groups?  

> The first challenge was much too easy for my liking. The second challenge
> proved about as tough as I expected, yet not as thought-provoking or even
> entertaining as I had hoped.

The challenge hasn't change. Understanding of the challenge has. I didn't expect most to understand the entirety of it from the start because of level of genericness and normalization that I desire is uncommon. I expected an iterative process to comparable solution.

> I'll give Neo one or two days to see if he will unconditionally accept
> Nick Landberg's suggestion to let an arbitrator decide.
> After that, I'll stop this sillyness.

I would rather one keep iterating to achieve the original intent of the challenge: Represent any hierarchy without NULLs or redundancy in as generic a manner. One test of genericness being the ability to handle various hierarchies.

> It quickly evolved into a challenge to get Neo to admit defeat.

Thus far RM Sol#1 and #2 fail to meet the challenge because, they contain redundant schema (which is also data) in the form of T_types in RM#1, and T_classes, T_ClassOfThings, T_ClassHierarchy in RM#2 to store the class hierarchy (which in my view, was a minor problem and I updated it in RM Sol#4; however it was referred to as a "disaster"). More serious deficiencies in the genericness of the solutions can be shown by the inability to handle unnamed things, things with multiple names, and the three thing hierarchy described in other posts.

Below are measurements made thus far using RM solutions that aren't as generic or normalized as XDb1's.

Small Report Generation Summary (provided by Hugo)



Solution Time(ms) Platform Notes
-------------- --------  ----------------- --------------------------
RM#1 SqlSrvr2K  14.3     1.3 Ghz PC
RM#2 SqlSrvr2K  11.0     1.3 Ghz PC
XDb1 4.4.7      16       1.3 Ghz PC        Debug version


Small Report Generation Summary (provided by Neo)



Solution Time(ms) Platform Notes
-------------  --------  ----------------- --------------------------
RM#1 SqlSrvr7   65.0     500 Mhz Server
RM#2 SqlSrvr7   68.9     500 Mhz Server
XDb1 4.4.7      16       500 Mhz Server    Debug version
XDb1 4.5.7       1.632   500 Mhz Server
XDb1 4.5.9       6.561   233 MHz PocketPC


Large Report (28,940 rows) Generation Summary (provided by Neo)



Solution Time(sec) Platform Notes
-------------  --------  ----------------- --------------------------
RM#5 SqlSrvr7   40.5     500 Mhz Server
XDb1 4.5.7       2.9     500 Mhz Server
XDb1 4.5.9      16.971   233 Mhz PocketPC

Note: SQL Server scripts available from website if one would like to verify or provide additional measurements. Received on Tue Jun 08 2004 - 00:20:26 CEST

Original text of this message