Caboodle Dictionary
Basic metadata for tables. Find Descriptions of tables and columns available in data model. Identify tables that can be linked
... [Show More] together.
Caboodle Dictionary Editor
In depth view of Caboodle ETL packages and data lineage. Shows Clarity tables data that extracted from when populating tables, which ETL packages are used by Caboodle tables and dependencies amongst the tables in Caboodle.
Caboodle Executions
Where Caboodle administrators can create, edit, run and monitor executions. Can be used to schedule recurring executions.
Caboodle Workqueues
Logs the different types of issues that can occur during the ETL process that require manual intervention to resolve.
Caboodle configurations
modify settings, perform customizations such as adding attributes to the data model and view reports related to Caboodle configuration and operation.
Caboodle BI Developers
write Caboodle reports and should have access to the Caboodle Dictionary on the Console. Dictionary provides table descriptions, data lineage for tables and columns and foreign key information. BI Developers should be familiar with Caboodles dimensional data model and at least one area of healthcare reportings such as revenue or clinical reporting.
Caboodle Administrators
have access to all activities on the Caboodle Console. Administrators monitor executions, troubleshoot work queue errors and establish system level configurations.
Caboodle ETL Developers
create custom EPIC and n on Epic content for extraction into the data warehouse, document their work in the dictionary editor and test their work using the ETL tools available in the console. Custom development notes and documentation relevant to report writers will be visible in the dictionary.
Why use Caboodle
Accessibility, Efficiency and fewer tables and simpler joins.
SSIS package
SQL Server Integration packages : Data is extracted from source systems (Clarity) transformed in the staging database and presented for users in the reporting database.
DMCs
Data Model Components
Data Model Compenents
collection of metadata tables that support the ETL process and reporting views stored in the FullAccess schema.
DMC type and suffixes
Each DMC gets a type and suffix. Dim for dimensions, Fact for facts, Bridge for bridges, Datamart for data marts, AttributeValueDim for EAV tables, X for custom tables
Caboodle Star Schema
where one central fact table will join to many associated lookup or dimension tables.
Dimensional Data Model
This structure intentionally makes some compromises to the normalized data model used by Clarity in order to facilitate report writing. The trade off is that it requires more complicated ETL process to maintain.
Caboodle consists of a reporting database and a staging database
...
dbo
Staging database: import tables and mapping tables live here. Used by administrators for moving data into Caboodle. Reporting Database: dbo schema stores reporting data and acts as the data source for SlicerDicer. Caboodle Dictionary reflects the contents of the dbo schema
EPIC
Staging Database: Epic schema on the staging database contains the _IdLookup tables, which map source IDs to system-generated Caboodle primary keys in the reporting database. Reporting Database: Prior to Epic 2018 this schema stored the tables used by the SlicerDicer patients data model.
FullAccess
Staging Database: The FullAccess schema does not exist on the staging database Reporting Database: The FullAccess schema houses view that timplify reporting. FullAccess should be your default schema when reporting.
DMC
Data Model Components
Business Key
Indentifier: combination of columns that identify records
Data Lineage
A precise technical explanation of where data in a package is extracted from in a source database.
Durable Key
An identifier for a record in Caboodle shared across rows for the same record. Example a single patient record might have multiple rows associated with it in Patient Dim. Each row has the same durablekey to make it easy to find all rows associated.
Foreign Key
the primary key for a row in a different able in Caboodle, used to link two tables together.
Foreign keys have referential integrity
Foreign key columns never contain null or unmatched values.
-1 foreign key value
the foreign key is unspecified in source system
-2 foreign key value
when a foreign key doesnt apply for a certain row, it is unapplicable. Example the admitting provider for hospital encounter, professional accounts wouldnt have an admitting provider
-3 foreign key value
when a foreign key is -3 when a row in Caboodle has been deleted.
Surrogate key
a surrogate key is a unique identifier for a row in Caboodle and is also the tables primary key. Each row has a different surrogate key.
Type 1 data
type 1 columns store only the most recent information for a record. example: patient SSN. If type 1 changes it overwrites the value in all rows associated with the record
Type 2 data
Stores historical data over time, for information like patient address
Fact tables
fact tables hold all the measures in Caboodle. These are the primary tables that contain the many rows of data created in the source system, such as individual encounters, orders and transactions.
Dimension
A dimension is a table in Caboodle that contains attributes describing one or more facts. Dimensions are joined to facts to provide descriptive information about them.
Bridge
A bridge is a table that stores information where many to many relationships are common.
Data Mart
A data mart is a collection of caboodle data on a topic.
Caboodle reporting tip
Beginning Aug 2019 add the following SQL Command to top of every report: SET TRANSACTION ISOLATION LEVEL SNAPSHOT;
Use the views in FullAccess schema
simplifies your report by aggregating the information you find in facts, profile dimensions and bridge tables.
Prefix by a descriptor
if a query refers to more than one table all columns should be prefixed by a descriptor (table name or alias). Using descriptors ensures you have unambiguous column references preventing issues that can occur when two tables contain columns with the same name. [Show Less]