[x3d-public] Open Asset Import Library download | SourceForge.net
doug sanden
highaspirations at hotmail.com
Wed May 27 09:29:05 PDT 2015
OK thanks again John, I got all that, I'll save it for when I do a project, thanks very much.
-Doug
> John Carlson, on web3d public
>> John,
>> I'm not a database guru, but I've always wondered:
>> Q1. how is x3d -or xml, or any branchy tree data- stored in a database?
>> -- a) an entire scene as a blob?
> Generally in Oracle it's stored as an xml type so you can do XPath in sql. I don't know implementation details. I suspect serialized DOM to blob however.
>> -- b) each node type in a separate table, with columns representing fields (about 256 node types->256+ tables?)
> Try to come up with a SQL query to output XML and you will see why other means are chosen.
>> -- c) few more general tables like nodes, scalar fields, MF fields, parentNode+field/child, parentMFField+index/child
> We did something like this with HDF5. Essentially you create tables around the document and then use ETL to populate the tables.
>> - is there a way to generate a table layout automatically using XSLT for x3d?
> I'm not sure why you would want to when you can use NoSQL. No tables necessary.
>> Q2. how is the parser/loader generator related to ETL? (I see ETL often, I think it means extract, transform, load)
> ETL breaks up documents into relational form.
> Generally branchy trees are stored in the database as JSON these days I'd say. But I only have experience with CouchDB and MongoDB.
> And it should be fairly simple to come up with an array table, an object table and an attribute table. Querying is going to be a bear unless views are used though.
> Realize that arrays are objects too (with integer attribute names). That reduces it to object and attribute tables.
> And probably anything can be stored with (objectId, attributeName, attributeValue) tuples. I might add revision to that.
> Oracle has a way of querying hierarchical tables...CONNECT something.
> It looks like the SQL equivalent to Oracle's CONNECT BY is WITH.
> the other thing you do with HDF5 is extract images to a file system, then store the filename in the database.
> Last version of HDF5 I used only did single threaded access to the file in Java. That was one main reason why we did ETL.
> https://www.hdfgroup.org/HDF5/
>
________________________________
> Date: Wed, 27 May 2015 11:23:06 -0500
> Subject: Re: [x3d-public] Open Asset Import Library download |
> SourceForge.net
> From: yottzumm at gmail.com
> To: highaspirations at hotmail.com
>
>
> And probably anything can be stored with (objectId, attributeName,
> attributeValue) tuples. I might add revision to that.
>
> On May 27, 2015 11:17 AM, "John Carlson"
> <yottzumm at gmail.com<mailto:yottzumm at gmail.com>> wrote:
>
> It looks like the SQL equivalent to Oracle's CONNECT BY is WITH.
>
> On May 27, 2015 11:10 AM, "John Carlson"
> <yottzumm at gmail.com<mailto:yottzumm at gmail.com>> wrote:
>
> Realize that arrays are objects too (with integer attribute names).
> That reduces it to object and attribute tables. Oracle has a way of
> querying hierarchical tables...CONNECT something.
>
> On May 27, 2015 11:02 AM, "John Carlson"
> <yottzumm at gmail.com<mailto:yottzumm at gmail.com>> wrote:
>
> On May 27, 2015 10:36 AM, "John Carlson"
> <yottzumm at gmail.com<mailto:yottzumm at gmail.com>> wrote:
>
> > Generally branchy trees are stored in the database as JSON these days
> I'd say. But I only have experience with CouchDB and MongoDB.
>
> And it should be fairly simple to come up with an array table, an
> object table and an attribute table. Querying is going to be a bear
> unless views are used though.
More information about the x3d-public
mailing list