7 Replies Latest reply on Aug 4, 2016 3:45 PM by rmoff

    12c In-Memory data source

    Cheney Shue

      As I known, In-Memory is transparent to applications. No additional setting for database client.

      While creating RPD data source for Oracle database 12c, I found there are 4 types source, 12c, 12c In-Memory, 12c In-Memory on Exadata and 12c on Exadata.

      What's the difference between with and without in-memory?

        • 1. Re: 12c In-Memory data source
          Christian Berg

          Cheney Shue wrote:

           

          As I known, In-Memory is transparent to applications.

          Source?

          • 2. Re: 12c In-Memory data source
            rmoff

            Have a look at the different settings enabled/disabled in DBFeatures.ini for each one. Be interesting to see how OBIEE treats each one differently - assuming that it does.

            • 3. Re: 12c In-Memory data source
              Michael Verzijl

              Also see: https://docs.oracle.com/middleware/1221/biee/BIEMG/datasource.htm#BIEMG1215

              Have not tried this yet though.

              Oracle 12c Database In-Memory Data Sources

              For all Oracle 12c Database In-Memory data sources, the Oracle BI Server creates tables in memory.

              Oracle 12c Database In-Memory is a high-performance, in-memory data manager. It uses In-Memory Column Store, which stores copies of tables and partitions in a special columnar format that exists in memory and provides for rapid scans. See the 12c Release 1 Oracle Database Concepts Guide and Oracle Database Administrator's Guide for more information.

              Oracle 12c on Exadata Data Sources

              For Oracle 12c Database on Exadata and Oracle 12c Database In-Memory on Exadata data sources, the Oracle BI Server creates tables in memory. Oracle BI Server uses Exadata Hybrid Columnar Compression (EHCC) by default.

              Oracle Exadata Database Machine is the optimal platform for running Oracle Database. Both Oracle 12c Database and Oracle 12c Database In-Memory run on the Oracle Exadata Database Machine. See the documentation included with the Exadata Database Machine for more information.

              • 4. Re: 12c In-Memory data source
                Christian Berg

                Bingo Michael and Robin Just because the packaging says there's nothing to change doesn't mean there is nothing to change.

                • 5. Re: 12c In-Memory data source
                  rmoff

                  That doc link is useful, but I'm presuming all the talk of creating tables is for Aggregate Persistence. In general (and without checking the DBFeatures.ini), I'd presume that the generated SQL for querying the data is going to remain the same.

                  • 6. Re: 12c In-Memory data source
                    Christian Berg

                    Stop breaking the boundaries of the 4th IRC wall rmoff

                    • 7. Re: 12c In-Memory data source
                      rmoff

                      OK, so checking DBFeatures.default on 12.2.1, the differences are simply to do with when OBIEE creates a table (with Aggregate Persistence) and whether it's going to do so in memory, compressed, and/or with hybrid columnar compression.

                      For querying the data, the exact same query will be generated regardless of which flavour of Oracle 12c you select.

                       

                      [oracle@demo biee]$ diff /tmp/ORACLE_12C /tmp/ORACLE_12C_ON_EXADATA
                      1c1
                      < [ DATA_SOURCE_FEATURE = ORACLE_12C ]
                      ---
                      > [ DATA_SOURCE_FEATURE = ORACLE_12C_ON_EXADATA ]
                      7c7
                      <       PERF_PREFER_COMPRESSION = No;
                      ---
                      >       PERF_PREFER_COMPRESSION = Yes;
                      9c9
                      <       IS_EHCC_SUPPORTED = No;
                      ---
                      >       IS_EHCC_SUPPORTED = Yes;
                      

                       

                      [oracle@demo biee]$ diff /tmp/ORACLE_12C /tmp/ORACLE_12C_IMDB
                      1c1
                      < [ DATA_SOURCE_FEATURE = ORACLE_12C ]
                      ---
                      > [ DATA_SOURCE_FEATURE = ORACLE_12C_IMDB ]
                      10,11c10,11
                      <       IS_INMEMORY_SUPPORTED = No;
                      <
                      ---
                      >       IS_INMEMORY_SUPPORTED = Yes;
                      >