Presents a hands-on tutorial on building and using multidimensional data warehouses. The SQL query language is used to access data in most simple databases. But for multidimensional (or OLAP) data warehouses, Microsoft developed MDX. The MDX query language has become essential know-how for developers and users alike, whether for data warehouses or for budgeting and planning systems. This tutorial/reference guide shows developers and users how to use MDX to access and analyze data for decision support. Both the standard language and Microsoft's own extensive additions to MDX are explained. The authors provide practical examples of MDX in use, and explain both standard usage and more advanced techniques, such as optimization, cube design, and Pareto analysis. Finally, the appendices provide a handy reference guide that users can rely on.
MDX (Multi-Dimensional Expressions) is a language developed by Microsoft for the querying and analysis of multi-dimensional OLAP (On-Line Analytical Processing) databases. MDX is a mere three years old and, although it is becoming well accepted, it's still hard to find supporting material. This book is a welcome addition to a sparse canon and is intended for IT professionals and students.
The book starts with a series of chapters of increasing complexity that cover the basics of MDX and its usage. Performing calculations in Microsoft's Analysis Services (the OLAP and data mining tools supplied with SQL Server 2000), using libraries of external functions and advanced MDX operations and commands are among the topics addressed in subsequent chapters, followed by client programming basics and optimising MDX. The remaining quarter of the book comprises four appendices, the first and largest being a reference of MDX functions and operators, helpfully indexed both by name and by return type. A CD-ROM is supplied containing sample code, function libraries and OLAP database (with its source relational database) and a trial version of MDXBuilder 2.0.
What this book, along with most of the other MDX material available, does not do is to give information about why and when you might find MDX useful: there is no overview or placing of the language in context. That said, the content is comprehensive and thorough with tips, notes and sample code scattered liberally throughout. The style is generally readable and upbeat. For anyone getting to grips with MDX, this book is to be recommended. --Mark Whitehorn