> For the complete documentation index, see [llms.txt](https://docs.opendatadiscovery.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.opendatadiscovery.org/~/changes/pcY8r1Ougw5Sv8zDaz8G/use_cases/viz_preparation.md).

# Data preparation for Visualization Engineer

**Key words**: BI tool, data chart, performance tuning, data preparation, data load mode, dashboard security level, underlying data.

### Challenge

I am a Viz Engineer in a team that develops and maintains Tableau dashboards for book orders reporting and ad hoc monitoring of online store performance. I got a task from my stakeholders to introduce a dashboard that tracks digital inventory during high demand (Black Friday, Christmas or Valentines Day) and stays stable if 5+ people use the report simultaneously. Dashboard is expected to be refreshed near-real-time.

To build the dashboards I have to know the nature of the data since the majority of BI tools do not support complicated data preparation algorithms. I need to spend a lot of time on manual analysis of meta data and basic profiling.

### Solution

The ODD Platform [tagging system](/~/changes/pcY8r1Ougw5Sv8zDaz8G/features.md#manual-object-tagging) and [meta data storage](/~/changes/pcY8r1Ougw5Sv8zDaz8G/features.md#metadata-storage) can be consulted during dashboard development to reach better performance and set security standards, e.g. row-level security based on the user group.

### Scenario

1. I examine my data source metadata and tags in ODD and find out that it is:\
   \- Set to streaming data load mode.\
   \- Does not have the KPIs I need but I might be able to calculate them using existing fields.\
   \- Has a history depth of ten calendar year.\
   \- Contains all sales data, not just the one of customers subscribed to a newsletter.\
   \- Has denormalized structure.
2. I understand that if I establish a connection from Tableau to a data source as-is, a performance will be very poor and definitely won’t satisfy the near-real-time refresh requirement.
3. I decide to introduce the following data preparation steps:
   * I will develop a view that’ll have customers subscribed to a newsletter data only.
   * I will limit the history depth to one day only (run date) as it is an operational, not analytical dashboard.
   * I will select only the fields that I need for my dashboard.
   * I will pre-calculate all KPIs in my view to increase dashboard performance (set calculation recourses on DWH side and not on Tableau as BI tools of this type work best with prepared and pre-aggregated data).

**Result**: I can prevent any collapses during high demand periods when the company requires operational data being reliable and accessible every minute.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.opendatadiscovery.org/~/changes/pcY8r1Ougw5Sv8zDaz8G/use_cases/viz_preparation.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
