Practice Questions Flashcards

1
Q

True or False: The Cogito Data Dictionary documents the tables and columns in each organization’s Caboodle.

A

True

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What schema does the Caboodle portion of the Cogito Data Dictionary document?

A

The dbo schema

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

How does data get into Caboodle?

A

Data gets into Caboodle through SSIS packages from Clarity or a 3rd party database.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

True or False: More than one SSIS package can populate a Caboodle table.

A

True

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

True or False: In Caboodle, primary key columns store Chronicles identifiers, such as a record ID or a CSN.

A

False. All primary key columns in Caboodle are surrogate keys.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

True or False: All Caboodle tables have a DurableKey column.

A

False. Only tables with snapshot change tracking will have a column named ‘DurableKey’ used to identify the entity.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

True or False: To see if a table tracks changes, you should look for a chip that says Snapshot in the Cogito Dictionary.

A

True

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

If a Caboodle table uses snapshot change tracking, then all of the columns in that table are snapshot columns.

A

False. A table with snapshot change tracking will have at least one column that tracks changes, but not every column will track changes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What databases comprise Caboodle?

A

Staging and Reporting

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Collection of Database Objects

A

Schema

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Epic Released Schemas

A

dbo, FullAccess, FilteredAccess

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

is the data source for SlicerDicer, Caboodle Dictionary in the Caboodle Console and the Caboodle portion of the Cogito Data Dictionary

A

dbo schema

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

everything for report writers from the dbo schema and more (transformation for 0/1 to No/Yes and other simple transformations)

A

FullAccess schema

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Used for column and row level security (common in Community Connect orgs)

A

FilteredAccess schema

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

True or False: A column can either be a primary key or a surrogate key, but not both.

A

False

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What extra columns do change tracked (snapshot) tables have?

A

StartDate, EndDate, IsCurrent, DurableKey (Separate from Key)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Does FilteredAccess enforce referential integrity?

A

No

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Epic recommends using which schema as the default schema for writing reports?

A

FullAccess Schema on reporting schema

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

True or False: If a data points exists in Carity, but not in Caboodle, your organization’s Caboodle Developers can create a custom SSIS package to extract the data point to Caboodle?

A

True

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

How can you tell is a column is a lookup column in Caboodle

A

The ER diagram lists the column and what table it joins to
The Column will end in KEY but not be the primary key of the table

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

In the packages section, which type of package will be loading Epic data?

A

Clarity Packages. All EPIC data in Caboodle has a source of clarity.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Fact table generally have more ____than dimensional tables?

A

Lookup Columns

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

What type od columns exist in all fact and dimensional tables in Caboodle?

A

A surrogate key that acts as the primary key of the table
Zero or more lookup columns

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Some tables in Caboodle retain values previously stored for columns. This describes what?

A

Change tracking

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

Table A has a lookup column directed to Table. An execution runs, which includes a package that loads data to Table A, but does not contain any packages which will populate Table B. Which table could have an inferred row added to as a result?

A

Table B

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

If the primary key of a row in a fact table is -1

A

the lookup columns will store a -1
columns with a data type of varchar will store unspecified

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

A combo key is used as a lookup column to what Caboodle tables?

A

Bridge

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

What is referential integrity?

A) Ensuring all tables have primary keys
B) Ensuring lookup columns always have a value and a matching value in the destination table
C) Ensuring all columns are indexed
D) Ensuring all tables are normalized

A

B) Ensuring lookup columns always have a value and a matching value in the destination table

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

What value does Caboodle assign to a lookup column when the source data is NULL?

A) 0
B) -1
C) -2
D) -3

A

B) -1

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

What does a value of -2 in a lookup column indicate?

A) The value is unspecified
B) The value is not applicable
C) The value is deleted
D) The value is inferred

A

B) The value is not applicable

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

Which schema in Caboodle does NOT enforce referential integrity?

A) dbo
B) FullAccess
C) FilteredAccess
D) Reporting

A

C) FilteredAccess

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

What are inferred rows in Caboodle?

A) Rows that are deleted
B) Placeholder rows created when a lookup column value does not have a match in the destination table
C) Rows with NULL values
D) Rows with duplicate values

A

B) Placeholder rows created when a lookup column value does not have a match in the destination table

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

How can you identify inferred rows in a table?

A) By checking the _IsInferred column
B) By checking the primary key
C) By checking the foreign key
D) By checking the timestamp

A

A) By checking the _IsInferred column

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q

What does a value of -3 in a lookup column indicate?

A) The value is unspecified
B) The value is not applicable
C) The value is deleted
D) The value is inferred

A

C) The value is deleted

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
35
Q

What happens when a record is hard-deleted in the source system?

A) The row is removed from Caboodle
B) The row is marked with default values representing the deletion
C) The row is archived
D) The row is ignored

A

B) The row is marked with default values representing the deletion

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
36
Q

Why does Caboodle create three special rows with primary key values of -1, -2, and -3?

A) To represent actual entities
B) To satisfy referential integrity
C) To improve performance
D) To store metadata

A

B) To satisfy referential integrity

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
37
Q

What should you do if many inferred rows persist in the database?

A) Ignore them
B) Delete them manually
C) Reach out to your Caboodle ETL Administrator
D) Update them with default values

A

C) Reach out to your Caboodle ETL Administrator

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
38
Q

Which of the following scenarios would result in a lookup column being assigned a value of -1 in Caboodle?

A) A patient has been assigned a primary care physician
B) A medication dispense record has a valid FillPharmacyKey
C) A patient’s primary care provider is not specified in the source system
D) A record has been hard-deleted in the source system

A

C) A patient’s primary care provider is not specified in the source system

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
39
Q

In the context of Caboodle, what does the term “data lineage” refer to?

A) The sequence of transformations applied to data from source to destination
B) The hierarchical structure of database tables
C) The indexing strategy used for lookup columns
D) The security schema applied to database access

A

A) The sequence of transformations applied to data from source to destination

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
40
Q

How does Caboodle handle a situation where a lookup column value does not use one of the default values (-1, -2, -3) and also does not have a match in the destination table?

A) It deletes the row
B) It creates an inferred row
C) It assigns a value of -1
D) It ignores the value

A

B) It creates an inferred row

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
41
Q

What is the significance of the _IsInferred column in Caboodle tables?

A) It indicates whether a row has been deleted
B) It identifies rows that are placeholders for missing references
C) It marks rows that have been updated
D) It flags rows that are not applicable

A

B) It identifies rows that are placeholders for missing references

42
Q

Which of the following best describes the purpose of the three special rows with primary key values of -1, -2, and -3 in Caboodle tables?

A) To store metadata about the table
B) To represent actual entities in the database
C) To ensure referential integrity for default values
D) To improve query performance

A

C) To ensure referential integrity for default values

43
Q

In which scenario would a value of -2 be assigned to a lookup column in Caboodle?

A) When the source data is NULL
B) When the column is not applicable for the row
C) When the record has been hard-deleted
D) When the value is inferred

A

B) When the column is not applicable for the row

44
Q

How does Caboodle ensure that lookup columns always have a value, even when the source data is missing or incomplete?

A) By creating inferred rows
B) By assigning default values like -1, -2, and -3
C) By enforcing strict data validation rules
D) By ignoring rows with missing data

A

B) By assigning default values like -1, -2, and -3

45
Q

What is the impact of referential integrity enforcement in the dbo and FullAccess schemas on report writing in Caboodle?

A) It requires the use of outer joins in all queries
B) It ensures that inner joins produce the same results as left outer joins
C) It prevents the use of default values in lookup columns
D) It restricts access to certain tables

A

B) It ensures that inner joins produce the same results as left outer joins

46
Q

Why might differences in Clarity extract schedules lead to the creation of inferred rows in Caboodle?

A) Because Clarity does not enforce referential integrity
B) Because Caboodle uses a different schema for inferred rows
C) Because the data may not be synchronized between Clarity and Caboodle
D) Because inferred rows are created only during the backfill process

A

C) Because the data may not be synchronized between Clarity and Caboodle

47
Q

True or False: Referential integrity ensures that lookup columns always have a value and that these values match in the destination table.

48
Q

True or False: A value of -1 in a lookup column indicates that the value is not applicable for the specific row.

A

False. A value of -1 indicates that the value is unspecified, meaning the source data is NULL. A value of -2 indicates that the value is not applicable for the specific row.

49
Q

True or False: Caboodle enforces referential integrity in the dbo and FullAccess schemas.

50
Q

True or False: Inferred rows are created when a lookup column value does not have a match in the destination table.

51
Q

True or False: A value of -3 in a lookup column indicates that the entity represented by the row itself was deleted.

A

True: A value of -3 indicates that the entity represented by the row itself was deleted, not the entity the lookup column is referencing.

52
Q

True or False: The FilteredAccess schema in Caboodle enforces referential integrity.

A

False: Referential integrity is not enforced in the FilteredAccess schema, which removes rows based on the report writer’s security.

53
Q

True or False: The _IsInferred column in Caboodle tables helps identify rows that are placeholders for missing references.

A

True: The _IsInferred column is used to identify inferred rows, which are placeholders for missing references.

54
Q

True or False: When a record is hard-deleted in the source system, Caboodle removes the row from the database.

A

False: When a record is hard-deleted in the source system, Caboodle marks the row with default values representing the deletion, but the row itself is not removed from the database.

55
Q

True or False: Caboodle creates three special rows with primary key values of -1, -2, and -3 to ensure that all lookup column values find a match.

A

True: These special rows exist to ensure that all lookup column values, including default values, find a match, maintaining referential integrity.

56
Q

True or False: Differences in Clarity extract schedules can lead to the creation of inferred rows in Caboodle.

A

True: Differences in Clarity extract schedules can result in temporary placeholders (inferred rows) being created in Caboodle until the actual data is available and synchronized.

57
Q

which cogito tools query from caboodle

A

slicerdicer and workbench

58
Q

True or False: All tables and columns in caboodle are written in pascal case?

59
Q

True or False: all key columns in caboodle are surrogate keys

60
Q

what is a surrogate key?

A

the columns value does not exist in the source database and is created during the ETL process. Because caboodle contains epic and non-epic data

61
Q

what is a lookup columns?

A

a column in one table whose value identifies at least one row in another table. Most tables in caboodle have at least one

62
Q

compared to fact tables, dimension table usually

A

contains more data and fewer lookup columns

63
Q

True or False: Lookup columns end in –KEY

64
Q

Where do you look for identifying information for validation in Caboodle?

A

The epicID or CSN

65
Q

What is a dimension table?

A

one row for each entity within the set

66
Q

what is a fact table

A

one row for each occurrence of some significant, measurable event

67
Q

What is a bridge table?

A

for many to many relationships

68
Q

what is a data mart?

A

report on data points from several DMCs in one place

69
Q

what would you find in the data dictionary overview section?

A

description, type of database object, granularity

70
Q

what would you find in the data dictionary columns section?

A

name, data type, availability in slicerdicer, links to lookup columns, chronicles info, descriptions

71
Q

what would you find in the data dictionary lineage section?

A

available in expanded section contains INI and item numbers and how the item can be used in slicerdicer (fds) records

72
Q

what would you find in the data dictionary er diagram section?

A

Classic star schema for investigating joins. Only for Fact and DataMart. Non join columns can also be listed by clicking the key to expand into full column list

73
Q

what would you find in the data dictionary dependencies section?

A

Indicates what database objects a table is dependent on. Clarity or caboodle tables and columns

74
Q

what would you find in the data dictionary queries section?

A

Lists SSIS packages that populate the table and their queries

75
Q

A property of a table that informs us how Caboodle will be updated when changes are made to the source databases

A

Change tracking

76
Q

Change tracking types

A

type 1: none
type 2: snapshot

77
Q

How to tell if a table is using snapshot change tracking?

A

Chip in the overview section of the table

78
Q

what is a Non snapshot table?

A

Reflect the current content of the source data at the time of the most recent extract

79
Q

what is Non Snapchat table granularity

A

One row per entity extracted to the table

80
Q

What is the granularity of PatientDim?

A

A patient record for a date range

81
Q

What does the DurableKey identify in a table?

A

Unique entities

82
Q

What are the default start and end dates?

A

1/1/1979, 12/31/2099

83
Q

Which columns show the date range for a Snapchat column?

A

StartDate and EndDate

84
Q

True or false: for a given DurableKey value, there is exactly one row where IsCurrent = 1

85
Q

What is the correct way to join a snapshot table?

A

Join on DurableKey and filter IsCurrent = 1

86
Q

True or false: DurableKey only exist in snapshot tables

87
Q

What is Referential Integrity?

A

Lookup columns will always have a value and that value will find a match in the destination table

88
Q

True or false: due to referential integrity, there are no nulls in Caboodle tables

A

False. Nulls can exist in non-lookup columns

89
Q

True or false: Caboodle enforces referential integrity in all 3 schemas

A

False, only dbo and FullAccess, not in FilteredAccess

90
Q

What is the lookup value or unspecified values?

91
Q

What is the lookup value for non-applicable values?

92
Q

What is the lookup value for deleted values?

93
Q

How to filter out deleted data from a Fact table?

A

Use the Count column. It stores a 1 when the row should be included in a calculation and a 0 when not

94
Q

What happens to the Durable Key when there is a deletion?

A

It remains the same in the new row

95
Q

What happens string cells when there is a deletion?

96
Q

What happens to all other cells when there is a deletion?

97
Q

How can you tell a column is lookup?

A

Ends in -Key

98
Q

True or false: in a Snapshot table, PrimaryKey and DurableKey remain untouched

99
Q

Placeholder rows that are added to the destination table when the lookup column value does not have a match in the destination table

A

Inferred row

100
Q

True or False: In Caboodle, if a lookup column value does not match any value in the destination table and is not one of the default values (-1, -2, -3), the ETL process will automatically create a new row in the destination table with the unmatched value to maintain referential integrity.

A

False, it creates an inferred row