MicroStrategy / mstrio-py

Python integration for MicroStrategy
Apache License 2.0
90 stars 60 forks source link

MicroStrategy Logo

image image image

mstrio: Simple and Secure Access to MicroStrategy Data

MicroStrategy for Jupyter Extension is no longer developed and supported and was removed from the mstrio-py package in March 2024. You can still use the mstrio-py library and all its current and upcoming features.

mstrio provides a high-level interface for Python and is designed to give data scientists, developers, and administrators simple and secure access to their MicroStrategy environment. It wraps MicroStrategy REST APIs into simple workflows, allowing users to fetch data from cubes and reports, create new datasets, add new data to existing datasets, and manage Users/User Groups, Servers, Projects, and more. Since it enforces MicroStrategy’s user and object security model, you don’t need to worry about setting up separate security rules.

With mstrio-py for data science, it’s easy to integrate cross-departmental, trustworthy business data in machine learning workflows and enable decision-makers to take action on predictive insights in MicroStrategy Reports, Dashboards, HyperIntelligence Cards, and customized, embedded analytical applications.

With mstrio-py for system administration, it’s easy to minimize costs by automating critical, time-consuming administrative tasks, even enabling administrators to leverage the power of Python to address complex administrative workflows for maintaining a MicroStrategy environment.

Table of Contents

Main Features

Main features of mstrio-py allows to access MicroStrategy data:

Since version 11.3.0.1, mstrio-py includes also administration modules:

Documentation

Detailed information about mstrio-py package can be found in official documentation.

Usage Remarks

When we tried to map the new dataset, we detected that some columns are missing or the data type changed, etc.
We could not obtain the data because the DB connection changed and the table does not exist anymore.
Cube cannot be found.

(even if previously it was found without issue)

Error getting cube metadata information. I-Server Error ERR001, (ServiceManager: XML syntax error.)

Installation

Prerequisites

Install the mstrio-py Package

Note: it is NOT recommended to install mstrio-py in an Anaconda environment. For a seamless experience, install and run it in Python's virtual environment instead.

Installation is easy when using pip.

pip install mstrio-py

Versioning & Changelog

Current version: 11.4.9.101 (20 September 2024). Check out Changelog to see what's new.

mstrio-py is constantly developed to support newest MicroStrategy REST APIs. Functionalities may be added to mstrio on monthly basis. It is recommended to always install the newest version of mstrio-py, as it will be most stable and still maintain backwards compatibility with various MicroStrategy installations, dating back to 11.1.4.

Features that will be added to the package but require APIs not supported by your environment (I-Server), will raise VersionException.

mstrio-py can be used for both, data-science related activities and for administrative tasks. Former requires at least MicroStrategy 2019 Update 4 (11.1.4), latter works with 11.2.1 and higher.

If you intend to use mstrio with MicroStrategy version older than 11.1.4, refer to the PyPI package archive to download mstrio 10.11.1, which is supported on:

Refer to the PyPI package archive for a list of available versions.

To install a specific, archived version of mstrio, choose the desired version available on PyPI package archive and install with pip, as follows:

pip install mstrio-py==10.11.1

Deprecating Features

When features (modules, parameters, attributes, methods etc.) are marked for deprecation but still accessed, the following DeprecationWarning will be shown (example below). The functionality will continue to work until the version specified in the warning is released.

Deprecation warning

More Resources