My first Publication Agile-Data-Warehouse-Design-eBook | Page 43
22
Chapter 1
visible signs of progress. Stakeholders can easily imagine sorting and filtering the
low-level detail columns of a business event using the higher-level dimensional
attributes that they subsequently model.
Figure 1-9
Customer Orders
BEAM✲ table
BEAM✲ Short Codes
BEAM✲ uses short
codes to capture
technical data
properties
BEAM ✲ tables are simple enough not to get in the way when modeling with
stakeholders, but expressive enough to capture real-world data complexities and
ultimately document the dimensional modeling design patterns used to address
them. To do this BEAM ✲ models use short (alphanumeric) codes: (mainly) 2 letter
abbreviations of data properties that can be recorded in spreadsheet cells, rather
than graphical notation that would require specialist modeling tools. By adding
short codes, BEAM ✲ tables can be used to:
Document dimensional attribute properties including history rules
Document fact properties including aggregation rules
Record data-profiling results and map data sources to requirements
Define physical dimensional models: fact and dimension tables
Generate star schemas
BEAM✲
short codes act
as dimensional
modeling
shorthand
BEAM ✲ short codes act as dimensional modelers’ shorthand for documenting
generic data properties such as data type and nullability, and specific dimensional
properties such as slowly changing dimensions and fact additivity. Short codes can
be used to annotate any BEAM ✲ diagram type for technical audiences but can
easily be hidden or ignored when modeling with stakeholders who are disinter-
ested in the more technical details. Short codes and other BEAM ✲ notation con-
ventions will be highlighted in the text in bold. Appendix B provides a reference
list of short codes.
Comparing BEAM✲ and Entity-Relationship Diagrams
We will use
Pomegranate Corp.
examples to
illustrate BEAM✲
Throughout this book we will be illustrating BEAM ✲ in action with worked
examples featuring the fictional Pomegranate Corporation (POM). We begin now
by comparing an ER diagram representation of Pomegranate’s order processing
data model (Figure 1-10) with an equivalent BEAM ✲ table for the Customer
Orders event (Figure 1-9).