Server Enhancements (SSAS)
Microsoft SQL Server 2005 Analysis Services (SSAS) introduces the following service enhancements and new features.
Up to 50 instances of the Analysis Services service from Microsoft SQL Server 2005 Enterprise Edition can be installed on one computer; up to 16 instances of the Analysis Services service can be installed from other editions of SQL Server 2005. Earlier versions of Analysis Services did not support multiple instances. For more information about instances of Analysis Services, see Managing Instances of Analysis Services.
Instances of the Analysis Services service now support 8-node failover clusters on 32-bit systems, and 4-node clusters on 64-bit systems. Earlier versions of Analysis Services did not support failover clustering. For more information, see Failover Clustering.
The Analysis Services service fully implements the XML for Analysis (XMLA) 1.1 specification. All communication with an instance of Analysis Services is handled through XMLA commands in SOAP messages, in either an explicitly declared or implicitly allocated session that supports statefulness. Earlier versions of Analysis Services supported XMLA only through the use of the XMLA SDK, which acts as a bridge between XMLA and OLE DB. For more information about XMLA, see XML for Analysis (XMLA).
The Analysis Services service uses proactive caching to increase the performance of dimensions, partitions, and aggregations. Proactive caching combines the benefits of relational OLAP (ROLAP) and multidimensional OLAP (MOLAP). When proactive caching is enabled, the Analysis Services service uses a background process to cache ROLAP data in MOLAP storage for query purposes; when the relational data changes, the Analysis Services service retrieves the data from ROLAP storage while the MOLAP cache is rebuilt in the background. Analysis Services supports three different types of notification mechanisms, in addition to several settings with which you can fine-tune proactive caching functionality for real-time, low-latency, or traditional access to underlying data. For more information, see Proactive Caching.
Databases and subordinate objects on an instance of Analysis Services can be scripted by using the Analysis Services Scripting Language (ASSL), an XML-based syntax used with XMLA to administer Analysis Services. For more information about ASSL, see Analysis Services Scripting Language (ASSL).
Language and Collation Support
The Analysis Services service supports language and collation settings at both the instance level and the database level. You can specify language and collation during installation for an instance of Analysis Services, and also for each database, cube, dimension, and mining structure on the instance. For more information about language and collation support in Analysis Services, see International Considerations for Analysis Services.
Additionally, databases and subordinate objects can support multiple languages through the use of translations. Client applications that specify a language for their sessions can receive data and metadata from a particular object in the specified language or in the default language for that object if the specified language is not available. For more information about translations, see Cube Translations.
The Analysis Services service now provides additional flexibility in processing cubes, measure groups, partitions, dimensions, and mining models, including direct support of parallel processing. Objects on an instance of Analysis Services can be processed in parallel in a single batch transaction. For more information about processing support in Analysis Services, see Processing in Analysis Services.
Referential Integrity Issues
When processing fact tables, earlier versions of Analysis Services ignored rows that contained an undefined member for a dimension. When rows were ignored, the total members in the cube did not match the expected total for the data warehouse, causing Analysis Services to incorrectly aggregate information. The Analysis Services service can now use settings for each hierarchy in a dimension to determine how to handle referential integrity issues. Such rows can now be associated with a placeholder member, called an Unknown member, in a hierarchy when a fact table row has a null value for a particular hierarchy. For more information about Unknown member support, see Configuring User-Defined Hierarchy Properties.