Using views
There are a number of ways to enhance performance on view programming.
openRebuild, update
Database views are the most common tool to access structured data. Views maintain indices on the documents in a database. Creating or updating such an index can be time consuming, depending on the rate of change within the database. If there is a lot of "traffic" in a database, which means there are many inserts and deletions, recreating or restructuring the index takes time. If you use the openViewRebuild: method with AbtLnDatabase, you recreate the entire view every time you send this message. As a more efficient alternative, you can open the view with openViewRebuild: for the first time and then only send the update message to the AbtLnDatabaseView instance to refresh the contents. You might consider opening all views of an application on initialization of the program and update them when needed. This procedure can save a lot of time, but it allocates resources for each view (on the database server system).
Preparing views for fast access from Smalltalk
If you look for specific documents in a database, consider building specialized views for this purpose. Create views that have a small number of relevant columns and simple or no column formulas and use simple selection criteria. Access the column information via AbtLnPseudoNotes and do not create real AbtLnNotes. This will speed up searching the view. Use views with multiple categories, which discriminate the database contents in the way you want instead of iterating through a large number of documents.
Last modified date: 01/29/2015