MDX (язык запросов)


MDX (англ. Multidimensional Expressions) — SQL-подобный язык запросов, ориентированный на доступ к многомерным структурам данных. В отличие от SQL, работающего с данными скалярных типов в кортежах и ориентированного на работу с реляционными моделями, в MDX на синтаксическом уровне встроены такие понятия, как измерения, иерархии и их уровни, меры — характерные для многомерных моделей.

Впервые представлен в 1997 году компанией Microsoft как расширение OLE DB (OLE DB for OLAP[англ.]), основной автор — Моша Пасуманский (англ. Mosha Pasumansky). В 2001 году выпущен стандарт XML for Analysis[англ.] (XMLA), включивший MDX как часть языка запросов mdXML (запросы в нём обёрнуты в XML-тег <Statement>).

Среди СУБД, поддерживающих MDX — Applix[англ.] и её последующая реализация TM1, Essbase, Microsoft SQL Server (опция Microsoft Analysis Services), Mondrian. Формирование запросов на MDX поддерживается большинством крупных BI-систем, в том числе BusinessObjects[англ.], Cognos, Pentaho, SAS BI, Power BI.