Query Dimension 1-Cache Data

Hi,
I am running a MDX query  and when I checked in profiler its showing a long list of Query dimension (Event Class) 1-Cache data, What does it mean?
I think its not hitting storage engine rather pulling from cache but why so much caching. What does this event class means?
Please help! 

Hi Pinu123,
Create Cache for Analysis Services (AS) was introduced in SP2 of SQL Server 2005. It can be used to make one or more queries run faster by populating the OLAP storage engine cache first. The query results were cached in memory for re-use.
In your scenario, you said that the results not hitting storage engine rather pulling from cache. In this case, it seems that this results had been queried by other users and cached in memory. For more information about cache data, please refer to the links
below.
How to warm up the Analysis Services data cache using Create Cache statement
Examining MDX Query performance using Block Computation
Regards,
Charlie Liao
TechNet Community Support

Similar Messages

  • Planning query donu2019t show current data

    Hello,
    I have an input ready query over an aggregation level of a real time cube. Whenever the yellow request is closed and a new request is opened, the input ready query does not show the old data. And sometimes it shows incorrect data. We found that the issue is with the Cache.
    In RSRT when opening the input ready query in debug mode with "Do not use cache setting", the query returns correct data. But the surprise thing is that, the input ready query has Cache setting as inactive (0) in RSRT. So we had to generate the Delta buffer query <infoprovider>/!!1<infoprovider> in RSRT where <infoprovider> is the name of the real time cube.
    This solved our problem and the query brought in correct data. But again when I close the second request, the input ready query again shows me no data or shows me wrong data. So again we need to generate the delta buffer query in RSRT <infoprovider>/!!1<infoprovider>.
    This is very annoying when considering the fact that you have to generate the delta buffer query every time the request is closed. This could be a overhead in maintenance and will not go well with people.
    Does anybody have any solutions for solving this issue. Is there any setting by which we can turn off cache altogether or delete cache when a request is closed etc? or worst conditions how to automate the generation of delta buffer queries every time the request is closed?
    Any help is really appreciated.
    Regards,
    Anand

    please check the below;
    Delta buffer query in RSRT for BI-IP ("<infoprovider>/!!1<infoprovider>)
    Planning query donu2019t show the current data
    Edited by: Hymavathi Yanamadala on Sep 9, 2009 5:47 AM

  • Adobe Reader is Cacheing Data From OLEDB Connection

    I am trying to pre-populate a form from an oledb connection to an access database. I have an html page where a user can search an id. This id then gets written to a table where the sql query defined in the PDF form can grab it, join it with a table where the user info is stored, then display it.
    My problem is that Adobe Reader seems to be caching data from the first SQL select query that is executed. When I change the id I am loading, I still get data from the first SQL query in Reader. If I open the PDF via Acrobat, the data loads up properly, and it doesn't seem to be cached. I have looked at the following forum for suggestions: http://www.adobeforums.com/webx/.3bc3549c, but their suggestions haven't worked.
    I have tried turning off caching anywhere I can find it (i.e. in LiveCycle, Adobe Reader), but nothing is working. Does anybody have any suggestions?

    It sounds like you need use the adobe schema in MII so the output of your transaction matches it.
    Regards,
    Jamie

  • Query read mode-Cache mode

    Hi,
    Can u explain me the functionalities of the options:
    A-Query to read all data at once
    X-Query to read data during navigation
    H-Query to read when u navigate or expand hierarchies
    I am not clear of the diff. bet. the X,H options....
    <b>Cache Mode:</b>
    0-Cache is Inactive
    1-Main memory cache without swapping
    2-Main memory cache without swapping
    3-Main memory cache with swapping
    4-Persistent cache for each application server
    5-Persistent cache across each application server
    <b>Optimization Mode:</b>
    0-Query will be optimised after generation
    1-Query optimization with individual periods in days
    9-Query optimization inactive
    Can u explain these functionalities in detail...
    Max.points will be assigned

    HI,
    PLease check this..
    1.      Query to be read when you navigate or expand hierarchies (H)
    The amount of data transferred from the database to the OLAP processor is the smallest in this mode. However, it has the highest number of read processes.
    In the following mode Query to read data during navigation, the data for the fully expanded hierarchy is requested for a hierarchy drilldown. In the Query to be read when you navigate or expand hierarchies mode, the data across the hierarchy is aggregated and transferred to the OLAP processor on the hierarchy level that is the lowest in the start list. When expanding a hierarchy node, the children of this node are then read.
    You can improve the performance of queries with large presentation hierarchies by creating aggregates on a middle hierarchy level that is greater or the same as the hierarchy start level.
           2.      Query to read data during navigation (X)
    The OLAP processor only requests data that is needed for each navigational status of the query in the Business Explorer. The data that is needed is read for each step in the navigation.
    In contrast to the Query to be read when you navigate or expand hierarchies mode, presentation hierarchies are always imported completely on a leaf level here.
    The OLAP processor can read data from the main memory when the nodes are expanded.
    When accessing the database, the best aggregate table is used and, if possible, data is aggregated in the database.
           3.      Query to read all data at once (A)
    There is only one read process in this mode. When you execute the query in the Business Explorer, all data in the main memory area of the OLAP processor that is needed for all possible navigational steps of this query is read. During navigation, all new navigational states are aggregated and calculated from the data from the main memory.
    The read mode Query to be read when you navigate or expand hierarchies significantly improves performance in almost all cases compared to the other two modes. The reason for this is that only the data the user wants to see is requested in this mode.
    Compared to the Query to be read when you navigate or expand hierarchies, the setting Query to read data during navigation only effects performance for queries with presentation hierarchies.
    Unlike the other two modes, the setting Query to Read All Data At Once also has an effect on performance for queries with free characteristics. The OLAP processor aggregates on the corresponding query view. For this reason, the aggregation concept, that is, working with pre-aggregated data, is least supported in the Query to read all data at once mode.
    We recommend you choose the mode Query to be read when you navigate or expand hierarchies.
    Only choose a different read mode in exceptional circumstances. The read mode Query to read all data at once may be of use in the following cases:
          The InfoProvider does not support selection. The OLAP processor reads significantly more data than the query needs anyway.
             1.      Cache is Inactive (0)
    The cross-transactional cache is deactivated.
    The following modes are possible for the active cache: The cross-transactional cache is activated.
           2.      Main Memory Cache Without Swapping (1)
    The cache data is stored in the main memory. When the cache memory has been exhausted, excess data is removed according to the LRU algorithm, i.e. deleted from the memory. When a query is subsequently requested, the result is read from the InfoProvider once again.
           3.      Main Memory Cache with Swapping (2)
    The cache data is stored in the main memory. When the caching memory is used up, the excess data is written to a background and can be loaded back into the cache memory when making another request.
    After query-relevant data has been loaded again, the background store can no longer be used.
           4.      Persistent Cache per Application Server (3)
    The cache data is stored persistently as a database table or as a file in a directory attainable from the application server. We recommend that you choose a directory that is proximate to the application server.
    When you save the cache data in a database table this puts a strain on the database. However, it is also then quicker to access uncached data in the database.  In comparison to storing data in, for example, a star schema (see InfoCube), fewer tables are read and fewer indexes are accessed.
           5.      Cross-Application Server Persistent Cache (4)
    The cache data is stored persistently as a cross-application server database table or file in a file system in the network, accessed from the application server.  In this mode there is no displacement of data and no restriction on memory size. More space is required but this method also saves time.
    ¡        Database table: Strain is put on the database instance for the table.
    ¡        File: Strain is put on the network node operating system for the file.
    ¡        In addition, the application server that calculates the data and network communication has to be taken into account with both storage types. 
    If you do not make any other settings the OLAP processor determines the optimal initial size of the table SP, that is the memory structure in which data is held and processed in the OLAP processor (see Cache Structure). This is done after the first execution and again after a period of 31 days since the last optimization. It automatically generates a report afterwards.  
    In the Query Properties dialog box in the Query Monitor you can implement, modify of deactivate this function. Choose one of the following options:
    ·        Query is optimized after generation (0)
    ·        Query optimization with individual periods in days (1) Here you can determine the optimization period yourself.
    ·        Query optimization inactive (9)
    Hope this helps..
    Bye,
    Shashikanth.

  • Query Performance and Cache

    Hi,
    I am trying to analyze Query Performance in ST03N.
    I run a Query with Property = Cache Inactive.
    I get Runtime as say 180 sec.
    Again when I run the same Query the Runtime is getting decreased .Now it is say 150 sec.
    Pls expalin me the reason for the less runtime when there is No Cache used.

    Could be two things occurring.  When you say cache is inactive - that is probably referring to the OLAP Global Cache.  The use session, still has alocal cache so that if they run execute the same navigation in the same session, results are retrieved from local cache.
    Also,as the others have mentioned, if the same DB query is really being executed on the DB a second time, not only is the SQL stmt parsing/optimization not need to occur, but almost certainly some/all of the data still remains in the DB's buffer, so it only needs to be retrieved from memory, rather than physically reading the disk again.

  • Aggregate query on global cache group table

    Hi,
    I set up two global cache nodes. As we know, global cache group is dynamic.
    The cache group can be dynamically loaded by primary key or foreign key as my understanding.
    There are three records in oracle cache table, and one record is loaded in node A, and the other two records in node B.
    Oracle:
    1 Java
    2 C
    3 Python
    Node A:
    1 Java
    Node B:
    2 C
    3 Python
    If I select count(*) in Node A or Node B, the result respectively is 1 and 2.
    The questions are:
    how I can get the real count 3?
    Is it reasonable to do this query on global cache group table?
    I have one idea that create another read-only node for aggregation query, but it seems weird.
    Thanks very much.
    Regards,
    Nesta
    Edited by: user12240056 on Dec 2, 2009 12:54 AM

    Do you mean something like
    UPDATE sometable SET somecol = somevalue;
    where you are updating all rows (or where you may use a WHERE clause that matches many rows and is not an equality)?
    This is not something you can do in one step with a GLOBAL DYNAMIC cache group. If the number of rows that would be affected is small and you know the keys or every row that must be updated then you could simply execute multiple individual updates. If the number of rows is large or you do not know all the ketys in advance then maybe you would adopt the approach of ensuring that all relevant rows are in the local cache grid node already via LOAD CACHE GROUP ... WHERE ... Alternatively, if you do not need Grid functionality you could consider using a single cache with a non-dynamic (explicitly loaded) cache group and just pre-load all the data.
    I would not try and use JTA to update rows in multiple grid nodes in one transaction; it will be slow and you would have to know which rows are located in which nodes...
    Chris

  • Cache data in Mobile Application

    Hi,
    I am in process of evaluating usage of Mobile for Field Sales Representative but I am encountering a problem that the coverage is not so good in the area where field users will be using the system so what I need to do is to cache data and whenever it gets signal it transmits it. Is it possible to do programmatically or is there any other way we can achieve it.
    Regards
    Hardik Mehta

    Hi Hardik,
    According to my knowledge the simplest answer to your query is a Smart Sync Application.
    Such type applications are designed for this purpose only. That is in the offline environment/the environment which is not always connected.
    A smart sync application enbles you to occasionally sync and save backend data on to your client(data relevant to your application). Once you have done this you can remain disconnected and use this data in all possible ways you need to like viewing it time and again, making changes tot it or even deleting some of the records. You may even create new records/data.
    The Smart sync application will store all these changes onto the local database of the device. The next time the user syncs the device, the device communicates all these changes to the backend via the middleware and whereby updates the backend database.
    Also if there are some changes made in the backend data while the user is disconnected the MI client will download those changes and reflect them onto its local database so even your local database remains up to date.
    So if you want you can call this as chaching the data and transmitting it to the backend whenever you get connectivity. Technically it is done through the Java persistence apis.
    I hope this has solved your query to a certain extent. If this is not what you meant/desired kindly revert back.
    Cheers.

  • In oracle rac, If user query a select query and in processing data is fetched but in the duration of fetching the particular node is evicted then how failover to another node internally?

    In oracle rac, If user query a select query and in processing data is fetched but in the duration of fetching the particular node is evicted then how failover to another node internally?

    The query is re-issued as a flashback query and the client process can continue to fetch from the cursor. This is described in the Net Services Administrators Guide, the section on Transparent Application Failover.

  • Some music files do not show up in google play music app library.  I did clear cache/data and restarted phone.  The music is stored on the SD card.  Most of the music in the library is in the same folder on the sd card.  I can play the song from file mana

    some music files do not show up in google play music app library.  I did clear cache/data and restarted phone.  The music is stored on the SD card.  Most of the music in the library is in the same folder on the sd card.  I can play the song from file manager, but it still is not in the music library in play music.

    Cyndi6858, help is here! We'd be happy to help figure this out. Just to be sure though, the Droid Maxx should not have an SD card. Is this the Droid Razr Maxx? How did you add the music to the device? Are you able to see the files and folders located on the SD card or device when plugged in?
    Thanks,
    MichelleH_VZW
    Follow us on Twitter @VZWSupport

  • Report Using A Stored Procedure Is Caching Data

    Post Author: springerc69
    CA Forum: Data Connectivity and SQL
    I converted a report from a view that worked fine to a stored procedure to try and improve the performance of the report, but when I publish the report it seems to cache the data.  When you change the parameters you use to call the report or simply run the report again with the original parameters the report doesn't run the sproc and just shows the cached data from the original request.  If I right click on the report and select refresh (web based crystal report), it prompts for the parameters. I just close out the prompt window, report window and click on the link for the report again it returns the correct results based on the new parameters or a refresh based on the original parameters.  I've checked the cache time setting and set it to 0, and if you close the Internet Explorer window that originally called the report, open IE back up and request the report it will return the appropriate data.  I have also verify that the report is not setup to save data with report.  This is on Crystal XI Server.

    Post Author: synapsevampire
    CA Forum: Data Connectivity and SQL
    Which viewer are you using?
    It might be that your IE settings are caching the report pages. because you're using an HTML viewer.
    Try the Active-X viewer.
    I've forgotten which icon it is that changes the viewer...it's under the preferences options, I think it's the one that looks like a hunk of cheese on the right upper side.
    -k

  • Prevent multiple users from updating coherence cache data at the same time

    Hi,
    I have a web application which have a huge amount of data instead of storing the data in Http Session are storing it in coherence. Now multiple groups of users can use or update the same data in coherence. There are 100's of groups with several thousand users in each group. How do I prevent multiple users from updating the cache data. Here is the scenario. User logs-in checks in coherence if the data there and gets it from coherence and displays it on the ui if not get it from backend i.e. mainframe systems and store it in coherence before displaying it on the screen. Now some other user at the same time can also perform the same function and if don't find the data in coherence can get it from backend and start saving it in coherence while the other user is also in the process of saving or updating. How do I prevent this in coherence. As have to use the same key when storing in coherence because the same data is shared across users and don't want to keep multiple copies of the same data. Is there something coherence provides out-of-the-box or what is best approach to handle this scenario.
    Thanks

    Hi,
    actually I believe, that if we are speaking about multiple users each with its own HttpSession, in case of two users accessing the same session attribute in their own session, the actually used cache keys will not be the same.
    On the other hand, this is probably not what you would really like, you would possibly like to share that data among sessions.
    You should probably consider using either read-through caching with the CacheLoader implementor doing the expensive data retrieval (if the data to be cached can be obtained outside of an HTTP container), or side caching with using Coherence locks or entry-processors for concurrency control on the data retrieval operations for the same key (take care of retries in this case).
    Best regards,
    Robert

  • How can I create a query with web service data control?

    I need to create a query with web service data control, in WSDL, it's query operation, there is a parameter message with the possible query criteria and a return message contains the results. I googled, but cannot find anything on the query with web service. I cannot find a "Named Criteria" in web service data control like normal data control. In Shay's blog, I saw the topics on update with web service data control. How can I create a query with web service data control? Thanks.

    Hi,
    This might help
    *054.     Search form using ADF WS Data Control and Complex input types*
    http://www.oracle.com/technetwork/developer-tools/adf/learnmore/index-101235.html

  • Query to get the data of all the columns in a table except any one column

    Can anyone please tell how to write a query to get the data of all the columns in a table except one particular column..
    For Example:
    Let us consider the EMP table.,
    From this table except the column comm all the remaining columns of the table should be listed
    For this we can write a query like this..
    Select empno, ename, job, mgr, sal, hiredate, deptno from emp;
    Just to avoid only one column, I mentioned all the remaining ( 7 ) columns of the table in the query..
    As the EMP table consists only 8 columns, it doesn't seem much difficult to mention all the columns in the query,
    but if a table have 100 columns in the table, then do we have to mention all the columns in the query..?
    Is there any other way of writing the query to get the required result..?
    Thanks..

    Your best best it to just list all the columns. Any other method will just cause more headaches and complicated code.
    If you really need to list all the columns for a table because you don't want to type them, just use something like...
    SQL> ed
    Wrote file afiedt.buf
      1  select trim(',' from sys_connect_by_path(column_name,',')) as columns
      2  from (select column_name, row_number() over (order by column_id) as column_id
      3        from user_tab_cols
      4        where column_name not in ('COMM')
      5        and   table_name = 'EMP'
      6       )
      7  where connect_by_isleaf = 1
      8  connect by column_id = prior column_id + 1
      9* start with column_id = 1
    SQL> /
    COLUMNS
    EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO
    SQL>

  • Query based on a date range

    I want to query based on a date range. I wrote the following EJB QL:
    "select object(a) from ActionItems as a where a.dueDate
    between ?1 and ?2"
    But when I deployed the application to Oracle's EJB server, I got the following error:
    Auto-deploying biogen.jar (No previous deployment found)... Invalid type for expression (a.dueDate BETWEEN ?1 AND ?2)
    EJB QL statement : 'select object(a) from ActionItems as a where a.dueDate between ?1 and ?2'
    EJB QL method : public abstract java.util.Collection ActionItemsLocalHome.findByDueDateRange(java.sql.Date,java.sql.Date) throws javax.ejb.FinderException
    at com.sun.ejb.ejbql.parser.EjbQLParser.parse EjbQLParser.java:218)
    at com.sun.ejb.ejbql.EjbQLDriver.parse(EjbQLDriver.java:86)
    at com.sun.ejb.sqlgen.SQLGenerator.generateSQLForEjbQLQueries(SQLGenerator.java:704)
    It works fine for a number range, but does not work for a date range.
    Any one has an idea on how to write a correct EJB QL for a query based on date range?
    Thanks.
    Jingzhi

    Re-posted. Please help!

  • Failed to parse SQL query: ORA-01403: no data found

    I'm going to post and answer my own question in the hope that others will not have to struggle with this error.
    Using a report of the type PL/SQL Function Body Returning SQL and using generic columns you may run into this error
    failed to parse SQL query:
    ORA-01403: no data found
    The SQL will run stand alone but the report fails.
    There is a setting just below the source you should check:
    "Maximum number of generic report columns"
    In my case the number of columns was dynamic and when it exceeded the number set as the maximium number of generic columns I received the 1403 error.
    Hope this helps someone.
    Greg

    Thanks for much for the pointer. For anyone else struggling with this too, I found that my generic columns had unordered themselves. Reordering them solved the problem for me.
    Edited by: user11096971 on Jul 22, 2010 3:19 AM

Maybe you are looking for