This is a static copy of the main wikispot.org site, preserved for historical purposes only. Please see this page for more information.

Semantic Wiki/Caching

InfoInfo
Search:    

We need to make sure that the semantic wiki functions1 are efficient. We don't want to over-think efficiency, though, so let's not worry about this page too much right now.

Some possible strategies, though:

Metadata queries on a page about the page itself are easy — just clear out the cache when the metadata on that page is updated.

Complex queries across many pages and using many different values gets more complex:

[MetaSearch("(page=*&label=business_type&value=restaurant)+(page=*&label=food_type&value=vegan)","no results found","unordered")] depends on page, business_type->restaurant, food_type->vegan. We could create a new table, metadata_dependencies, and list (pagename_metadata_query_is_on, label, value). Then, we we alter metadata someplace, we check the data against our dependencies, and clear out the cache on the dependent pages.

Some of the advanced metadata searches could be offloaded onto a reporting server that is running a read-only replication to prevent loading down the primary wiki site.

This is a Wiki Spot wiki. Wiki Spot is a 501(c)3 non-profit organization that helps communities collaborate via wikis.