Hi,

Nischay - thanks for that set of links. I don't think any of them cover the
thinking behind the design decisions, but they're still all good to know
about.

Markus - thanks for all the clarifications. I was sure that the extra
tables were done to improve reading, but it sounds like they're mostly
there to improve writing. Is improving write performance a big deal,
though? I'm no performance expert, but I would think that on an average
wiki, writes are a fairly unimportant factor in the overall performance of
the site. Is that incorrect?

I didn't mean that the number of tables (around 30 in SMWSQLStore3) will
pose a technical challenge, just that it looks cluttered - and may pose
challenges for administrators, and developers, in maintaining them.

I'm still thinking about MediaWiki's page_props table - both as a design
example, and as a tool that SMW and related extensions can use. As a design
example: MediaWiki stores many different types of values in the page_props
table. Table writes (and reads) could probably be a little faster if there
were separate tables for different types of page properties, but the
MediaWiki developers decided to just have one big table for everything.

And as a tool, page_props could potentially be helpful for SMW, SF and
others. SF's special properties, like "Has default form", don't need to be
queried alongside real semantic properties - and actually, I doubt they're
queried often at all, other than by SF itself. SF's information could be
stored in the page_props table, instead of via SMW - and then, instead of
an SMW tag, you could just add something like this to a category, property
or template page:

{{#default_form:City}}

If it reduces clutter, administrator confusion, and compatibility issues,
without increasing read or write times, it might be worth it...

-Yaron
------------------------------------------------------------------------------
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev
_______________________________________________
Semediawiki-devel mailing list
Semediawiki-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/semediawiki-devel

Reply via email to