Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    CubeGrid + MS-SSAS (no SmartGWT)

    Hi,

    I'm using the SmartClient Pro edition and am currently looking at the possibility to upgrade ($) to
    the Power edition + Analytics option in order to leverage Isomorphic's CubeGrid component
    as well as its associated OLAP/MDX connectivity/backend.

    I do have a few questions though ... My current setup is the following:

    1) Application is written using SmartClient 8.2p (migration to 8.3p in progress). We don't use SmartGWT,
    but the native JS version.

    2) Application has a Java backend (currently not using any of the Isomorphic Java backend). All connections
    between front-end to back-end are using REST web services written in Java (Spring MVC).

    3) Current cubes use jPivot to connect to a Microsoft SSAS analytics server. This is what I'd like to
    replace with ISC's CubeGrid.

    I was wondering if it was possible at all to use the CubeGrid with SmartClient's Java backend for MDX/OLAP
    connectivity but without actually doing any of the SmartGWT stuff. We'd like to remain pure Javascript
    for the U/I part.

    Thanks for shedding some light on how this could be achieved as all examples, wiki and forum topics go down
    the SmartGWT path. Any examples would be greatly appreciated so we can conduct quick PoCs on different
    areas before going any further with our selection process.

    What I'm particularly looking for is the required ISC servlet configuration in order to define the ISC OLAP specific
    server-side end-points as well as sample client-side code (no SmartGWT) to instantiate a CubeGrid that connects
    to those ISC OLAP end-points. Something minimal that provides OLAP back-end access without all of the SmartGWT
    stuff, if at all possible ?

    Thanks,

    #2
    The server framework and the JavaScript runtime is the same between the two products, and the communications protocol between browser and server is the same too.

    So assuming you install the server framework *from a SmartClient build* (no need to download SmartGWT), you can use all the server-side code from the MDX example on the wiki, exactly as is.

    You'll then need to translate the client-side code from Java to JavaScript. There's no automated way to do this, but the code corresponds very directly (Java setter calls are generally equivalent to same-named properties passed to create() in SmartClient), so it should be quite straightforward knowing both languages and having the SmartClient CubeGrid samples in hand.

    When installing the server framework, you want minimally the IDACall servlet and the Init servlet - the function and dependencies of the various servlets in the server framework are documented extensively in the installation instructions, so check there for more details.

    Comment


      #3
      Ok. Thanks. I'll take a shot at it and ask further questions if I hit any road blocks.

      Best regards,

      Comment


        #4
        By the way, I noticed that the MDX code is not actually part of the Isomorphic JAR library but rather part
        of some sample SmartGWT code that was built.

        Does this mean that using that code is not "officially" supported by Isomorphic? For example, if we hit
        performance issues running that code which connects to SSAS using OLAP4J we wouldn't get support
        from you guys but would need to turn back to the OLAP4J open source project for support ? just curious
        since my understanding is that the Analytics module doesn't actually contain the XML/OLAP stuff, but
        the sample seem to be (unless I'm mistaken?).

        Thanks for clarifying,

        Comment


          #5
          You're correct that it's sample code, not framework code. That said, if it has bugs, we would be interested in fixing them so we can update the wiki (similar to any other sample).

          However, even if it were framework code, a performance issue in the OLAP4j driver or with the overall approach of integrating with SSAS data via XML wouldn't be something we could fix for you. If that comes up, addressing it would probably require a totally different approach (perhaps a native Java library specific to SSAS for example).

          Comment


            #6
            Thanks for clarifying. I was asking because we did try out OLAP4J a little while back and ran into
            performance issues because our catalog is quite "huge" and OLAP4J was chocking over reading it,
            over and over again.

            We'll give this a try but I have my doubts the OLAP4J approach will be suitable for us. As you said, we
            may need to use a custom SSAS connector instead, but that definitely doesn't mean the CubeGrid
            component would not satisfy our needs if used with a custom SSAS OLAP/MDX connector.

            We'll update following our PoC(s). Thanks!

            Comment


              #7
              Is there any built-in "Excel Export" facility with the CubeGrid component ?

              I think what we're looking for is some sort of WYSIWYG export of the current CubeGrid U/I layout
              at the time "export" gets triggered, with the current column layout, expand/collapse state, etc.

              Thanks,

              Comment


                #8
                It's not WYSIWYG at the moment, instead, it's a flat data listing similar to what you would get with a ListGrid bound to the same DataSource.

                Comment


                  #9
                  Multiple Measures?

                  Hi,

                  My latest understanding of the CubeGrid components leads me to believe that only a single "measure" can
                  be displayed within the CubeGrid ... Is that correct or is there a way to have multiple measures displayed,
                  side-by-side? I'm asking because the "value" property of the CubeGrid doesn't seem to be an array.

                  Thanks for any insight,

                  Comment


                    #10
                    To implement multiple metrics, group them together as a facet - this is referred to as the "metric facet" and has special status since it determines the type and meaning of the value within each cell.

                    Comment


                      #11
                      Thanks. I'll give that a try.

                      Comment


                        #12
                        Hi,

                        I analyzed the code for your "Blog" sample CubeGrid that works with XMLA/MDX ...

                        Is it correct to say that this sample will not re-fire calls to the OLAPDataSource java backend
                        every time the user expands a node ? It seems as if the whole dataset is pre-loaded on the client ...

                        Is that correct or I'm missing something?

                        Thanks for clarifying,

                        Comment


                          #13
                          The facet model (what facets are present and what values they have) is loaded in advance on the client. The actual cell data is loaded on demand as cells are revealed by scrolling or expand/collapse.

                          Comment


                            #14
                            Ok. Thanks. It's now working.

                            Comment

                            Working...
                            X