Sisense lists Data Dictionary as one of the product features. Documentation for that is shown here: Creating Data Dictionaries. However, this feature only supports the creation of table and column description information. This is helpful, but in working with Sisense since 2014, I've often wished for a centralized solution that brought the table and column metadata (including descriptions) to a centralized location. In my mind, a true Data Dictionary is a description of the data in business terms that includes the metadata (where the data came from, data type, etc.).
Why would I want this. In short, I want a Glossary of what is in my data models in a centralized location that is filterable and searchable. Having this enables me, as a Sisense planner and implementer to keep what I have data wise consistent: a single source of the truth for data models.
The Business Case for a Data Dictionary:
Governance:
Ensuring that the organization has a repository of the descriptive data and metadata in your data models.
Data dictionaries make it easier to create a standard set of variable names and descriptions across an organization.
Documentation for:
Business Users and Analysts who want to discover what data may be available in the data models.
Dashboard Designers who want definition information for what they see when they look at the list of data available for a widgets design.
Data Model Designers who want the same thing and who want a tool to help ensure that naming is consistent across data models.
Long story short, recently I decided to develop a desktop app (Windows/Mac) that utilizes several Sisense REST API's to build a Data Dictionary for a selected Data Model (Live or ElastiCube). My app (Sisense Linux only) is now at the MVP stage. It functions as follows:
When launched it presents a login window for a Sisense admin user. See screen shot below:
On a successful login, it presents a selection window that allows you to select the Data Model (Live or ElastiCube) of interest from a drop down list of all data models on your Sisense server. Your selection drives the creation of a data dictionary for that data model. See screen shot below:
Once a selection is made, an Excel file containing the metadata is exported to a folder on your local machine user root directory.
That Excel file is copied from your local directory to a predefined folder in the Sisense My Files file store: Admin > System Management > File Management > DataModels_DataDictionaries
The previous file versions are overwritten. This ensures you always have the latest versions available.
I created an ElastiCube pointed at the My Files location that unions all the Excel files into a single table.
I also created a dashboard that presents models statistics as well as model metadata. See the screenshot below:
Of course this screenshot shows just a few of the columns from the Data Dictionary data model.
I'm very interested in hearing from folks in the community to get your comments and suggestions. I'm also glad to demo the app on request. Please post in the Comment box below or call/email me using the info at the top of the page.
Comments