blocked views

Jean-Claude Wippler <[email protected]>
Newsgroups gmane.comp.db.metakit
Message-ID <[email protected]>
There is a faster implementation of blocked views in CVS now.  It 
evolved from a change submitted by M. Berk (thank you!) and appears to 
have a considerable effect on performance.  The trick is to cache the 
last used subview.

If you use blocked views and check out the latest code from CVS, you 
will see.

If you don't, let me just say that blocked views are now a good option 
for very large views.  Performance benefits are particularly good for 
views with many properties, and when traversing them sequentially.

To switch to using blocked views, change code which looks like:
	vw = store.getas("vw[...]")
to
	vm = store.getas("vw[_B[...]]").blocked()
You'll also need to reload data, this change won't convert it for you.

With a somewhat lower raw access performance, you'll get much more 
scalable views (millions of rows and more), faster commits, and smaller 
datafiles.

There's no need to switch over every view - it's still a trade-off.  If 
your views are rarely modified, or contain no strings, or are always 
accessed in random order (hash maps), then flat is often still better.  
But it's there if you want it.

-jcw

_____________________________________________
Metakit mailing list  -  [email protected]
http://www.equi4.com/mailman/listinfo/metakit
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.