How Microsoft hid the whole server and how to find it

    - See SSAS-gopher?
    - No ...
    - And I do not see. And he is!

    Gopher SSAS

    (A frame from the “DMB” movie)

    Support for a relatively new tabular (tabular) data model, as opposed to the well-established multidimensional OLAP, is built into a number of Microsoft products. Starting with SQL Server (SS) and ending with Excel. And if everything is clear with SS, it contains a separate separate SQL Server Analysis Services (SSAS) product. But what about the support of the language of DAX queries and other tabular functionality in Power BI, SharePoint or Excel? Let's look for a " gopher " on the example of Power BI Desktop .

    I think many people have noticed that when installing on a Power BI Desktop computer , Microsoft SQL Analysis Services folder structures are being deployed in parallel(SSAS) This is an optional server component that is part of the higher editions of Microsoft's SQL server (in particular, Enterprise and Business Intelligence editions). He is responsible (as it is easy to guess from the title) for analytical functionality and, in particular, the creation of OLAP-cubes and access to them, and, starting from the 2012 version, and for the full support of the new ideology of multidimensional data stores - tabular (or tabular) data models. This "animal" was invented to support wired data storage (as opposed to the standard string storage for OLTP) and to work with the entire data set in in-memory. A little more detail here .

    Work Folder Structure

    Power BI Desktop folder structure (Stand-alone installation)

    The inclusion of server components in the desktop software looks quite logical from the point of view of development and, most importantly, further support of the uniformity of the tabular data model, common for both the flagship server product, and for the desktop development environment and even for Excel. In particular, Power BI Desktop simply integrated the SSAS server core, which is responsible for supporting this tabular model and DAX data requests. When you launch the Power BI Desktop application, the xVelocity engine (nicknamed vertiPaq) starts up in the SSAS server, which performs all the rough work on servicing DAX requests, load distribution, memory management, and transferring results to the renderer, which already displays the results histograms, pivot tables (matrix) and other visual elements available in the Power BI environment.

    PBI structure


    What gives us this knowledge of domestic cuisine? And the fact that such a modular structure allows using Power BI Desktop as a test analytics server without the need to deploy a full-featured SQL Server environment with Microsoft Analysis Services. And without the corresponding licensing load (i.e. free). Of course, this approach cannot be used in industrial solutions. However, for the rapid deployment of the test infrastructure and verification of the constructed data model, nothing better can be invented.

    Home craftsman tips


    To determine the current port number on which the local “pocket” Analysis Services was launched, the easiest way is to use the amazing free tool, the “Swiss Knife” for any DAX hacker of DAX Studio .
    When connecting from DAX Studio to your data model (the necessary PBIX file must be opened in Power BI Desktop), connection settings (as in the figure below) will be displayed in the status line of the application, which can be used to access this data model from other applications, for example from Excel or another Power Bi Desktop instance locally or over the network.

    image

    The port number will change each time you start PBI Desktop. In my example, this is 52308. In your case, it will most likely be some other number from the Power BI Desktop ports pool.

    To reconnect to this data model, you will need not only a randomly assigned port number, but also a database name randomly generated as a GUID. The port number is obtained according to the method described above, and the identifier of the required database (GUID of the data model) can be obtained by generating the following SQL query in DAX Studio:

    select * from $SYSTEM.DBSCHEMA_CATALOGS

    In columns
    CATALOG_NAME and DATABASE_ID

    will be the required GUID name.

    Local solution


    The link (123kB) is a downloadable PBIX file developed by me, which generates a list of all data models loaded into memory (including the built-in data file). That is, there will be as many lines in the list as there are PBIX files running.
    Updated: version updated for compatibility with the August release of PBI Desktop.

    Disclaimer : This file can only be used for demonstration purposes and testing, is provided “as is”, with all the bugs, errors and other, 90% generated through the Power Query / PowerPivot interface and cannot serve as a good example for teaching Power BI programming .

    PBIX-AS_interface

    Program interface


    To configure, after clicking the [Edit requests] button , you must change the parameter
    USER_NAME
    and, perhaps,
    WORK_FOLDER
    .
    image


    Home craftsman tips


    Power BI Desktop can be deployed on the local computer in two different modes:

    1. Stand-alone application
    2. Windows Apps

    The first is downloaded from https://powerbi.com and installed in a couple of clicks as the most common application. The second one is installed via the Microsoft Store by searching for “ Power BI ”. The

    binary code of the application in both versions is the same. Only in the first case you have to independently monitor the release of new versions of the application, which Microsoft releases as pancakes. The nominal update frequency of Power BI Desktop is once a month, Power BI Reporting Services is on average once a quarter.

    Installing through the Microsoft Store will relieve you of control over software updates, but there is a small (but non-zero) chance that in the updated version you will unexpectedly encounter any problems that were not observed in the previous release.

    Personally, just in case, I keep both editions, regularly replenishing my personal collection with monthly releases of PBI Desktop, in order to be able to roll back to the previous one.

    Another feature of these two modes is that each of them has its own working folder structure. To configure the file above, this is important (see picture).


    I think (if there is enough interest from the community) I will continue this topic on the example of specific use cases .

    Yuri Kolmakov ( McCow )

    Only registered users can participate in the survey. Sign in , please.

    How do you use the Power BI data model?


    Also popular now: