You may have existing data that will be used as dimensional data
(for example, a database of customer information that should be populated
into the customer dimension). You can use the Historical database to manually
populate the dimensional tables with this data.
There are several things to be aware of as you populate the tables.
- Pay careful attention when you create the dimension in WebSphere® Business
Modeler so that you can populate the
dimension with existing data. Make sure that your dimension as defined in WebSphere Business
Modeler contains the appropriate metrics
with appropriate data types so that you can store existing data into the dimensional
table created by the Schema Generator.
- When inserting data manually, use negative values for the SK_<>
column. This is the surrogate key for the table. Positive surrogate key values
are used by data services when it is populating these tables; to avoid collisions,
you must use negative values.
- When inserting data into the dimension table, make sure that no
column is set to the NULL value. If there is no meaningful value to insert
into a given column, you must select a meaningful default and use it. Never
insert NULL into this table. The empty string ("") is acceptable for string
data types, however.
- As you map new process instances to the dimension data you have
inserted, a process instance may have no match to the existing data (for example,
a process associated with a new customer who is not currently listed in the
dimension table). In that case, a new row will be created in the table for
this set of data. The table now contains data you entered and this other data.
- A non-key attribute of a dimension is updated as new data comes
in. For example, suppose you have a customer dimension in which the key metric
is "CustomerName", and a non-key metric is "CreditLimit". Initially, this
table might contain the row ['Widgets, Inc',50000] from your existing customer
data. If a new event is processed that contains a CreditLimit for 'Widgets,
Inc' of 75,000, the Customer dimension table row will be updated to ['Widgets,
Inc', 75000]. This update only occurs when the key metrics match an existing
row and the non-key metrics do not. In these cases, the non-key values are
updated to reflect the new data.
To establish which dimension table corresponds to the dimension you
are manually populating, and which columns within the table correspond to
the various dimension attributes, use the datamartMapping.txt text
file, which is located in the Schema Generator output directory (after you
run the Schema Generator).