| Oracle FAQ | Your Portal to the Oracle Knowledge Grid | |
Home -> Community -> Usenet -> comp.databases.theory -> Re: Nearest Common Ancestor Report (XDb1's $1000 Challenge)
> Neo isa deadbeat
Please show Neo is a "deadbeat" by posting the report for the following data which is one of "any hierarchy", using either RM Sol#1 or #2 "from normalized and NULL-less data":
God is the parent of an unnamed person. God is also the parent of second person with three names (string 'john', integer 100, decimal 3.14).
The first person represents a thing that doesn't have a particular attribute and the second person represents a thing that has an attribute with three values, each of different type. Below is the equivalent XDb1 script:
string isa thing.
integer isa thing.
decimal isa thing.
john isa name.
john isa string.
100 isa name.
100 isa integer.
3.14 isa name.
3.14 isa decimal.
god isa thing.
person isa thing.
* isa person. (an unnamed person) * parent god. * isa person. (another unnamed person) *'s name is john. (assign first name) *'s name is 100. (assign second name)*'s name is 3.14. (assign third name) *'s parent god.
Common 'parent' Report for 'god'
ThingX ThingY CmnAnc Dist person john 100 3.14 god 2
color isa thing.
brown isa color.
person isa thing.
john isa person.
john's color is brown.
mary isa person.
mary's color is brown.
Although brown appears three times in the script, XDb1 normalizes the second two by making them references to the first one. There is only one brown in XDb1's db. Using RM#1 or #2, brown is stored three separate times.
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)
-------------- -------- ----------------- -------------------------- RM#1 SqlSrvr2K 14.3 1.3 Ghz PC Unnormalized, non-generic RM#2 SqlSrvr2K 11.0 1.3 Ghz PC Unnormalized, non-generic XDb1 4.4.7 16 1.3 Ghz PC Debug ver, norm and gener
Small Report Generation Summary (provided by Neo)
------------- -------- ----------------- -------------------------- RM#1 SqlSrvr7 65.0 500 Mhz Server Unnormalized, non-generic RM#2 SqlSrvr7 68.9 500 Mhz Server Unnormalized, non-generic XDb1 4.5.7 1.632 500 Mhz Server Normalized, generic XDb1 4.5.9 6.561 233 MHz PocketPC Normalized, generic
Large Report (28,940 rows) Generation Summary (provided by Neo) 200 Goat Hierarchy (5 generations x 40 goats/generation, each goat having two parents, except 1st gen).
------------- -------- ----------------- -------------------------- RM#5 SqlSrvr7 40.5 500 Mhz Server Unnormalized, non-generic XDb1 4.5.7 2.9 500 Mhz Server Normalized, generic XDb1 4.5.9 16.971 233 Mhz PocketPC Normalized, generic
Larger Report (276,620 rows) Generation Summary (provided by Neo). 400 Goat Hierarchy (10 gen x 40 goats/gen),
------------- -------- ----------------- -------------------------- RM#5 SqlSrvr7 105 min 500 Mhz Srvr, NT Avg of 2 runs, UnNrm,UnGen XDb1 4.5.10 44 min 500 Mhz Srvr, NT Avg of 2 runs, Norm, gener XDb1 4.5.10 57 min 450 Mhz PC, 98 1 run, Normalized, genericXDb1 4.5.10 195 min 233 Mhz PocketPC 1 run, Normalized, generic
Note: SQL Server scripts are available from website. Received on Thu Jun 10 2004 - 11:44:56 CDT
![]() |
![]() |