How the SAS Page Size Property Affects Performance

The SAS Page Size property, which is supported only by the IOM provider, determines how many rows will be retrieved from the SAS Workspace Server at one time. It serves a function similar to the "CacheSize" property. However, the SAS Page Size property determines how much data is cached in the provider itself rather than in the Recordset object.
There are a few special values for the SAS Page Size property.
  • If the SAS Page Size property is set to -1, then the provider attempts to cache the entire data set on its first request for data. Your application must check that there is enough RAM for this operation to succeed.
  • If the SAS Page Size property is set to 0, then caching is disabled.
' obConnection is an open Connection object.
Dim obRecordset As New ADODB.Recordset

' Set the active connection here instead of on the Open method.
obRecordset.ActiveConnection = obConnection
obRecordset.CacheSize = 55
obRecordset.Properties("Maximum Open Rows") = 110

If InStr(LCase(obConnection.Provider), "iomprovider") <> 0 Then
 obRecordset.Properties("SAS Page Size") = 55
End If

obRecordset.Open "seashell.mediate", , adOpenDynamic, adLockOptimistic, adCmdTableDirect