Discover how a bimodal integration strategy can address the major data management challenges facing your organization today.
Get the Report →Create SSAS Tabular Models from XML Data
How to build a SQL Server Analysis Service Tabular Model from XML data using CData drivers.
SQL Server Analysis Services (SSAS) is an analytical data engine used in decision support and business analytics. It provides enterprise-grade semantic data models for business reports and client applications, such as Power BI, Excel, Reporting Services reports, and other data visualization tools. When paired with the CData ODBC Driver for XML, you can create a tabular model from XML data for deeper and faster data analysis.
Create a Connection to XML Data
If you have not already, first specify connection properties in an ODBC DSN (data source name). This is the last step of the driver installation. You can use the Microsoft ODBC Data Source Administrator to create and configure ODBC DSNs.
See the Getting Started chapter in the data provider documentation to authenticate to your data source: The data provider models XML APIs as bidirectional database tables and XML files as read-only views (local files, files stored on popular cloud services, and FTP servers). The major authentication schemes are supported, including HTTP Basic, Digest, NTLM, OAuth, and FTP. See the Getting Started chapter in the data provider documentation for authentication guides.
After setting the URI and providing any authentication values, set DataModel to more closely match the data representation to the structure of your data.
The DataModel property is the controlling property over how your data is represented into tables and toggles the following basic configurations.
- Document (default): Model a top-level, document view of your XML data. The data provider returns nested elements as aggregates of data.
- FlattenedDocuments: Implicitly join nested documents and their parents into a single table.
- Relational: Return individual, related tables from hierarchical data. The tables contain a primary key and a foreign key that links to the parent document.
See the Modeling XML Data chapter for more information on configuring the relational representation. You will also find the sample data used in the following examples. The data includes entries for people, the cars they own, and various maintenance services performed on those cars.
Creating a Data Source for XML
Start by creating a new Analysis Services Tabular Project in Visual Studio. Next create a Data Source for XML in the project.
- In the Tabular Model Explorer, right-click Data Sources and select "New Data Source"
- Select "ODBC" from the Other tab and click "Connect"
- Select the DSN you previously configured
- Choose "Default or Custom" as the authentication option and click "Connect"
Add Tables & Relationships
After creating the data source you are ready to import tables and define the relationships between the tables.
- Right-click the new data source, click "Import New Tables" and select the tables to import
- After importing the tables, right-click "Relationships" and click "Create Relationships"
- Select table(s), and choose the foreign keys, cardinality, and filter direction
Create Measures
After importing the tables and defining the relationships, you are ready to create measures.
- Select the column in the table for which you wish to create a measure
- In the Extensions menu -> click "Columns" -> "AutoSum" and select your aggregation method
Deploy the Model
Once you create measures, you are ready to deploy the model. Configure the target server and database by right-clicking the project found in the Solution Explorer and selecting "Properties." Configure the "Deployment Server" properties and click "OK."
After configuring the deployment server, open the "Build" menu and click "Deploy Solution." You now have a tabular model for XML data in your SSAS instance, ready to be analyzed, reported, and viewed. Get started with a free, 30-day trial of the CData ODBC Driver for XML.