1998Q2/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: [MUD&#45;Dev] Re: Databases: was Re: skill system -->
<!--X-From-R13: "Xba O. Znzoreg" <wyflfvapNvk.argpbz.pbz> -->
<!--X-Date: Sat, 20 Jun 1998 01:20:03 &#45;0700 -->
<!--X-Message-Id: 199806200815.DAA06995@dfw&#45;ix12.ix.netcom.com -->
<!--X-Content-Type: text/plain -->
<!--X-Reference: 199806112143.OAA07401#beldin,snugharbor.com -->
<!--X-Reference: Pine.PMDF.3.95.980616103648.541114410A&#45;100000#nova,wright.edu -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, [MUD-Dev] Re: Databases: was Re: skill system</title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:jlsysinc#ix,netcom.com">
</head>
<body background="/backgrounds/paperback.gif" bgcolor="#ffffff"
      text="#000000" link="#0000FF" alink="#FF0000" vlink="#006000">

  <font size="+4" color="#804040">
    <strong><em>MUD-Dev<br>mailing list archive</em></strong>
  </font>
      
<br>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
<br clear=all><hr>
<!--X-Body-Begin-->
<!--X-User-Header-->
<!--X-User-Header-End-->
<!--X-TopPNI-->

Date:&nbsp;
[&nbsp;<a href="msg01151.html">Previous</a>
&nbsp;|&nbsp;<a href="msg01153.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg01081.html">Previous</a>
&nbsp;|&nbsp;<a href="msg01153.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#01152">Author</A>
&nbsp;|&nbsp;<A HREF="#01152">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#01152">Thread</A>
&nbsp;]

<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>[MUD-Dev] Re: Databases: was Re: skill system</H1>
<HR>
<!--X-Subject-Header-End-->
<!--X-Head-of-Message-->
<UL>
<LI><em>To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI>
<LI><em>Subject</em>: [MUD-Dev] Re: Databases: was Re: skill system</LI>
<LI><em>From</em>: "Jon A. Lambert" &lt;<A HREF="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</A>&gt;</LI>
<LI><em>Date</em>: Sat, 20 Jun 1998 04:17:25 -5</LI>
<LI><em>Reply-To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI>
</UL>
<!--X-Head-of-Message-End-->
<!--X-Head-Body-Sep-Begin-->
<HR>
<!--X-Head-Body-Sep-End-->
<!--X-Body-of-Message-->
<PRE>
On 16 Jun 98, s001gmu#nova,wright.edu wrote:
&gt; On Thu, 11 Jun 1998, T. Alexander Popiel wrote:
&gt; 
&gt; &gt; In message:  &lt;<A HREF="msg00971.html">9193945826E7D0118BB4080009DBF8F611737D@TTECH</A>&gt;
&gt; &gt;              jacob langthorn &lt;jlangthorn#towertechinc,com&gt; writes:
&gt; &gt; &gt;
&gt; &gt; &gt;	Has any one tried using Orical or SQL to manage the data base
&gt; &gt; &gt;for the mud? If so what sorta luck did you have?
&gt; &gt; 
&gt; &gt; Yes.  David Passmore and Lydia Leong did an experiment with MUSH,
&gt; &gt; trying to run it off of one of the SQL engines.  They found that
&gt; &gt; it dramatically increased the speed of global searches, but increased
&gt; &gt; the time to get stuff like the list of local objects by an order of
&gt; &gt; magnitude.
&gt; 
&gt; We're working on using either CQL++ (if they will ever get back to me!
&gt; grumble) or mSQL for our DB back end.  I was unaware of specific
&gt; examples of previous attempts, but knew that SQL seemed a bit kludgy for a
&gt; lot of the smaller scale data access that goes on in a mud.  As such, the
&gt; DB is probably going to be used mainly for cold storage, world
&gt; persistance, etc.  Most of the data that is used often will be cached into
&gt; memory and manipulated there.  The downside to that approach is that we
&gt; have to deal with data consistancy issues, etc.
&gt; 

Part of the problem is in mapping a mud's objects to storage.

Mush, MOO and LP objects' attributes are runtime dynamic. 

RDBs are ideal for mapping objects with static runtime attributes.
In order to succesfully map an object with dynamic runtime attributes 
to an RDB, the object must be reflective.  That is it must be at
all times self-aware of it's attributes.  In addition the RDB ideally
is designed in such a way as to implement object reflectivity instead
of the object directly.  This requires an interface or translator 
module.  One can certainly map an object directly to an RDB 
using what static properties are known to all objects and putting the
dynamic properties into a binary blob.  This is quite similar to
the conventional use of dbm and related implementations.  If this
was the implementation of the above mush experiment, then I do
not see very much beneficial in this approach, except to exceed 
any hardcoded limitations of dbm vs mysql. (If there are any?).

The simplest and most easily understandable form of reflectivity in 
storage that I know about would be the DIF format (VisiCalc anyone).
Not that I'm recommending it for use, just for getting aquainted with 
the concept.  It's quite limited.  

Diku, Mud++ objects' attributes are runtime static.     

I believe these server implementations would greatly benefit
from RDBs.  That is if persistence is desired.  
 
&gt; JC uses an OO DB, but not a pre-packaged one, if I recall.  There has been
&gt; a lot of discussion about OO DBs in the past, and some minor discussion
&gt; about RDBs.
 
An OO DB might be more attractive than an RDB.  Since a whole host 
of OO comes for free.  Yet your mud programming language's particular
implementation of OO might have to match or be translated to a form
recognizable by the OO DB.

--
--/*\ Jon A. Lambert - TychoMUD     Internet:jlsysinc#ix,netcom.com /*\--
--/*\ Mud Server Developer's Page &lt;<A  HREF="http://www.netcom.com/~jlsysinc">http://www.netcom.com/~jlsysinc</A>&gt; /*\--
--/*\   "Everything that deceives may be said to enchant" - Plato   /*\--


</PRE>

<!--X-Body-of-Message-End-->
<!--X-MsgBody-End-->
<!--X-Follow-Ups-->
<HR>
<ul compact><li><strong>Follow-Ups</strong>:
<ul>
<li><strong><A NAME="01229" HREF="msg01229.html">[MUD-Dev] Re: Databases: was Re: skill system</A></strong>
<ul compact><li><em>From:</em> J C Lawrence &lt;claw#under,engr.sgi.com&gt;</li></ul>
<li><strong><A NAME="01188" HREF="msg01188.html">[MUD-Dev] Re: Databases: was Re: skill system</A></strong>
<ul compact><li><em>From:</em> s001gmu#nova,wright.edu</li></ul>
<li><strong><A NAME="01153" HREF="msg01153.html">[MUD-Dev] Re: Databases: was Re: skill system</A></strong>
<ul compact><li><em>From:</em> "Adam J. Thornton" &lt;adam#phoenix,Princeton.EDU&gt;</li></ul>
</UL></LI></UL>
<!--X-Follow-Ups-End-->
<!--X-References-->
<UL><LI><STRONG>References</STRONG>:
<UL>
<LI><STRONG><A NAME="00978" HREF="msg00978.html">[MUD-Dev] Re: Databases: was Re: skill system</A></STRONG>
<UL><LI><EM>From:</EM> "T. Alexander Popiel" &lt;popiel#beldin,snugharbor.com&gt;</LI></UL></LI>
<LI><STRONG><A NAME="01070" HREF="msg01070.html">[MUD-Dev] Re: Databases: was Re: skill system</A></STRONG>
<UL><LI><EM>From:</EM> s001gmu#nova,wright.edu</LI></UL></LI>
</UL></LI></UL>
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg01151.html">[MUD-Dev] Re: mud websites</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg01153.html">[MUD-Dev] Re: Databases: was Re: skill system</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg01081.html">[MUD-Dev] Re: Databases: was Re: skill system</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg01153.html">[MUD-Dev] Re: Databases: was Re: skill system</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#01152"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#01152"><STRONG>Thread</STRONG></A></LI>
</UL>
</LI>
</UL>

<!--X-BotPNI-End-->
<!--X-User-Footer-->
<!--X-User-Footer-End-->
<ul><li>Thread context:
<BLOCKQUOTE><UL>
<LI><STRONG>[MUD-Dev] Re: Databases: was Re: skill system</STRONG>, <EM>(continued)</EM>
<ul compact>
<ul compact>
<LI><strong><A NAME="01070" HREF="msg01070.html">[MUD-Dev] Re: Databases: was Re: skill system</A></strong>, 
s001gmu <a href="mailto:s001gmu#nova,wright.edu">s001gmu#nova,wright.edu</a>, Tue 16 Jun 1998, 14:49 GMT
<UL>
<LI><strong><A NAME="01074" HREF="msg01074.html">[MUD-Dev] Re: Databases: was Re: skill system</A></strong>, 
J C Lawrence <a href="mailto:claw#under,engr.sgi.com">claw#under,engr.sgi.com</a>, Tue 16 Jun 1998, 17:25 GMT
<UL>
<LI><strong><A NAME="01075" HREF="msg01075.html">[MUD-Dev] Re: Databases: was Re: skill system</A></strong>, 
s001gmu <a href="mailto:s001gmu#nova,wright.edu">s001gmu#nova,wright.edu</a>, Tue 16 Jun 1998, 18:02 GMT
<UL>
<LI><strong><A NAME="01081" HREF="msg01081.html">[MUD-Dev] Re: Databases: was Re: skill system</A></strong>, 
J C Lawrence <a href="mailto:claw#under,engr.sgi.com">claw#under,engr.sgi.com</a>, Tue 16 Jun 1998, 18:44 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
<LI><strong><A NAME="01152" HREF="msg01152.html">[MUD-Dev] Re: Databases: was Re: skill system</A></strong>, 
Jon A. Lambert <a href="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</a>, Sat 20 Jun 1998, 08:20 GMT
<UL>
<LI><strong><A NAME="01153" HREF="msg01153.html">[MUD-Dev] Re: Databases: was Re: skill system</A></strong>, 
Adam J. Thornton <a href="mailto:adam#phoenix,Princeton.EDU">adam#phoenix,Princeton.EDU</a>, Sat 20 Jun 1998, 13:41 GMT
<UL>
<LI><strong><A NAME="01200" HREF="msg01200.html">[MUD-Dev] Re: Databases: was Re: skill system</A></strong>, 
Jon A. Lambert <a href="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</a>, Thu 25 Jun 1998, 05:52 GMT
<UL>
<LI><strong><A NAME="01212" HREF="msg01212.html">[MUD-Dev] Re: Databases: was Re: skill system</A></strong>, 
J C Lawrence <a href="mailto:claw#under,engr.sgi.com">claw#under,engr.sgi.com</a>, Fri 26 Jun 1998, 06:45 GMT
<UL>
<LI><strong><A NAME="01265" HREF="msg01265.html">[MUD-Dev] Re: Databases: was Re: skill system</A></strong>, 
Jon A. Lambert <a href="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</a>, Tue 30 Jun 1998, 06:56 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</UL>
</LI>
</ul>
</ul>
</LI>
</UL></BLOCKQUOTE>

</ul>
<hr>
<center>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
</center>
<hr>
</body>
</html>