Oracle Analytics Cloud and Server

Welcome to the Oracle Analytics Community: Please complete your User Profile and upload your Profile Picture

Is there a way to check dependency between datasets and projects in OAC ?

Received Response
83
Views
4
Comments

Summary:

Content (required):

Lets assume have 100+ datasets on OAC(majority of them being XLS files as source) taking good amount of the storage space. Now I have deleted a DV Project which is no longer required. This does not delete the datasets loaded in OAC and it is left hanging there. I have to manually check which are the source files and delete them separately.

Also in case a dataset is used in multiple projects and the dataset has been deleted by mistake there is no way to find it out unless that related project is opened and there is a warning/error . What is the best way to clean up unwanted files without causing harm to existing live projects?

Is there a way to check if a particular dataset is being used in any project ?

Version (include the version you are using, if applicable): 6.3


Code Snippet (add any code snippets that support your topic, if applicable):

Answers

  • Michal Zima
    Michal Zima Rank 7 - Analytics Coach

    Very good question indeed, but answer is much more difficult. Basically we have found our own way, how to achieve this (since we wanted the same) , but the solution (to which we have been forced because is missing in the product) is applicable only for "on-premise" version of product - thus Oracle Analytics Server, where you have control over database schema (BIPLATFORM), where OAC/OAS is storing definitions of DV objects and also definitions of BI Catalog objects (where definitions of DV projects is stored as well) - all DV artefacts and also BI catalog are stored internally in tables in this schema. And we have been able to identify those tables and for example to retrieve JSON definition of DV project, parse this JSON definition and "extract" from this JSON definition list of all data sets, used by particular DV project (and since all is in database, it is easy to automate it).

    In OAC you are able get JSON definition of DV project, but only from UI (when opening project in Development mode of DV project).

    But as I pointed, this is "dirty" solution implemented just because this functionality is missing in product (for example via official and documented API, which will give you for example for DV project different "properties" - like for example data sets used by DV project...). So I would encourage you to create Idea in Analytics Idea Lab, where you will ask for having this implemented in some future version of product.

    Rgds

    Michal

  • Deepa Mohan-Oracle
    Deepa Mohan-Oracle Rank 3 - Community Apprentice

    Thank you for the answer !

    Submitted the Idea as well

  • Hi Deepa,

    You can do the same thing Michal is doing in the database for OAC as well, but of course not via SQL.

    You can either export a snapshot as BAR of your OAC and work on it as it comes with the whole catalog and all the datasets (if you selected them). The BAR can be processed by a script to do exactly what you ask.

    I'm also fairly sure the exact same can be done live on the running system via webservice as there as well you can get the catalog objects and the datasets. The only limit of the webservice approach vs. BAR file is that the security will kick in: even with an admin account you can't access users personal folders.

    In the end all these solutions requires a piece of code: SQL, Java, Python,... Depends on what you feels like writing.

  • Deepa Mohan-Oracle
    Deepa Mohan-Oracle Rank 3 - Community Apprentice

    Hi Gianni ,

    Thanks for your response !

    Exporting bar would take backup at the instance level. But if I need to selectively identify the relation for a particular dataset/project only, that would be additional overhead.

    But like you said, the script can be designed to do what you want.