[Top] [All Lists]

Re: [ontolog-forum] Current Semantic Web Layer pizza (was ckae)

To: "[ontolog-forum] [ontolog-forum]" <ontolog-forum@xxxxxxxxxxxxxxxx>
From: Bill Andersen <andersen@xxxxxxxxxxxxxxxxx>
Date: Sun, 16 Sep 2007 18:20:44 -0400
Message-id: <B35F02C7-F5B4-4FE8-AF6D-7878C765D70F@xxxxxxxxxxxxxxxxx>

[DLT] When a command is executed, an algorithm conducts a search of a data source generated by a database, application, utility, etc.   It then pulls the requested data into memory for processing.  The CPU grabs the data and compiles the required response, then outputs the result to be displayed.  Every time a command is executed, the same process is repeated, and the same data retrieved every time it is requested - over and over again.  You know, like garlic pizza (formerly garlic cake).  Add RDF.  Add OWL.  Add, add, add and you have a multi-crust pizza with built-in layers of inefficiency. 


You are aware, aren't you, that many of the inference engines implemented for semantic web languages do precomputation exactly as you claim that your unique product does?   Database and other systems also do this and whether or not one does it often involves an engineering tradeoff between the workload the system is under and required query / update performance.  Typically, if your queries need to go really fast, then you pay a higher price at update to precompute things likely to be needed by expected queries.  Contrariwise, if your updates need to be fast (lots of real time data, say) then you can do that fast, but not with a bunch of precomputation.

As I mentioned in my last note, there is no groundbreaking discovery here.  It is called memoization / caching / precomputation and any undergraduate in computer science would be expected to know it.  

Here's an excerpt from http://en.wikipedia.org/wiki/Memoization ...

The term "memoization" was coined by Donald Michie in 1968 [1] and is derived from the Latin word memorandum (to be remembered), and thus carries the meaning of turning [the results of] a function into something to be remembered. While memoization might be confused with memorization (because of the shared cognate), memoization has a specialized meaning in computing.

See also


Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/  
Subscribe/Config: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/  
Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/ 
To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx    (01)

<Prev in Thread] Current Thread [Next in Thread>