This chapter includes the following sections:
A BAM data object models data for use within BAM. It contains the data to be monitored.
The data can be saved in raw format in a database or in an external table. The data can also be a stream from an ongoing activity.
Data objects are accessed directly by queries and key performance indicators (KPIs), and indirectly by parameters, views, dashboards, and alerts. Unlike these other BAM entities, a data object can be shared among different BAM projects.
This section contains the following topics:
A data object is structured like a table, with columns and rows. A column can be one of these types:
A measure column contains numeric data, such as sales amounts or call processing times.
A dimension column contains data used to group or partition numeric data, such as product names or countries.
An attribute column contains information that can be used for filtering or references, such as an ID or a timestamp.
In addition, a column of any type can be used for one of these purposes:
A primary column contains IDs used to uniquely identify rows and join data objects.
An index column contains the same information as another column, but sorted for efficient data retrieval.
A hierarchy is a set of dimension columns in a data object with a hierarchical relationship, such as country, state or province, and city.
Each column has a data type. Supported data types in BAM are VARCHAR
(or String), DATETIME
, INT
, DECIMAL
, and FLOAT
.
Note:
DATETIME
column values use coordinated universal time (UTC). However, in dashboards and alerts, DATETIME
values are converted to the user's preferred time zone. See Setting Language, Time Zone, and Accessibility Preferences for more information. You may also notice discrepancies in the value formatting of datetime values in business views. To ensure that your datetime values appear correctly in business views, change it to match the data object and business query formats. See Formatting Business Views for more information.
An Oracle BAM user with a Designer role can:
Add data objects to a project
Use data objects to create queries and KPIs
View data object details
Edit row security, if granted update permission
Edit data directly, if granted update permission
Create alert actions that insert or delete rows, if granted update or delete permission
Only an Oracle BAM user with an Administrator role can create data objects, modify their structure and metadata, and grant security permissions to other roles. For more information, see Creating and Managing Oracle BAM Data Objects.
There are four types of data objects:
A simple data object is used as is. It can contain indexes and hierarchies, but no other column additions or modifications. It corresponds to a database view in the BAM database. Other data objects can use or refer to simple data objects.
Administrators create simple data objects for very basic data.
A derived data object extends a simple data object or another derived data object. It inherits the columns and hierarchies of the parent data object and adds its own columns.
Administrators create derived data objects if additional columns are needed.
An external data object references data that is persisted outside of Oracle BAM. When a connection to the external data object is configured in Oracle WebLogic Server, Oracle BAM can access it. The external data object name may be changed from the actual table name, but the column names are unchanged. Some columns may not be selected for visibility in BAM.
Administrators create external data objects to monitor external data using BAM alerts and dashboards.
External Data Objects can either be of the Fact or Dimension type. You can identify an external data object’s type by the “Schema Type” label, in the General tab.
A logical data object references data in other archived relation data objects. Unlike a derived data object, it is read-only and not a physical data object. However, it can do more than add columns. It can rename or hide columns, or add calculated columns. It can also join two or more simple or derived data objects. The default join type is an inner join. You can enable left outer join for logical data objects, for each join. See Creating a Logical Data Object for more information. Typically, in compliance with process star schema standards, one source data object is a fact table consisting of measures, while the others are dimension tables.
Administrators create logical data objects to modify columns or to enable queries of data from two or more data objects.
Simple, derived, and external data objects are physical data objects, which can be modified and are mapped to database tables. A logical data object is read-only, is not persisted, references data in other data objects, and is most commonly used to join other data objects.
Figure 4-1 shows the relationships between data object types.
Figure 4-1 Relationships Between Data Object Types
A simple data object can be a stream, archived stream, or archived relation. A derived data object must have the same settings as its parent. A logical data object can only be an archived relation.
A stream allows only row inserts and is not persisted. It typically contains data in which only current or very recent values are important, such as stock prices.
An archived stream also allows only row inserts. However, it is persisted, with non-unique rows included. It typically contains data in which current and recent values are most important, but historical values are required or useful.
An archived relation allows inserts, updates, and deletes and is persisted, with unique rows. It typically contains data in which historical values are most important.
Although BAM cannot send inserts, updates, or deletes to an external data object, an external data object is considered an archived relation.
Typically continuous queries and realtime KPIs fetch data from streams, while other query types and scheduled KPIs fetch data from archived relations. See Creating Business Queries and Creating KPIs for more information.
Table 4-1 summarizes the features of the different data object types in BAM.
Table 4-1 Data Object Type Feature Comparison
Feature | Simple, Stream | Simple, Relation | Derived, Stream | Derived, Relation | External, Relation | Logical, Relation |
---|---|---|---|---|---|---|
Physical data object |
X |
X |
X |
X |
X |
- |
Insert rows |
X |
X |
X |
X |
- |
- |
Update and delete rows |
- |
X |
- |
X |
- |
- |
Add columns |
X |
X |
X |
X |
X |
X |
Hide columns |
X |
X |
X |
X |
X |
X |
Add calculated columns |
X |
X |
X |
X |
X |
X |
Join other data objects |
- |
- |
- |
- |
- |
X |
Before you can use a data object with other BAM entities such as queries and dashboards, you must create a project.
A project references one or more data objects and contains entities based on these data objects. For more information about projects, see Planning and Creating Projects.
Only users in the Administrator role can create data objects. For more information about creating data objects, see Creating and Managing Oracle BAM Data Objects.
After you add data objects to a project, you can use them in the following ways:
A query fetches data from a data object and analyzes the data. See Creating Business Queries for more information.
A realtime KPI fetches a single important measure from a data object and analyzes it. A scheduled KPI analyzes a single measure fetched by a query. See Creating KPIs for more information.
To be able to create queries, views, or dashboards to monitor data, you need to add data objects to a project first.
To add a data object to a project:
Go to the Designer page.
Create or open a project.
See Creating a Project or Opening a Project.
Click Data Objects, or right-click Data Objects and select the Create menu item.
The Data Objects dialog appears.
You can filter the list of data objects to more easily see the ones you need. To filter the list:
Type a full or partial name in the text field above the Name column.
Type a full or partial path in the text field above the Path column.
Select a data object type from the drop-down list above the Type column: View All (the default), Simple Data Object, Logical Data Object, External Data Object, or Derived Data Object.
Click the Query by Example (filter) icon to hide the data objects not matching the filter criteria.
Check the box to the left of each data object to be added.
To filter the unselected data objects, check View Only Selected.
Click Add.
You cannot delete a data object as a user in the Designer role. However, you can remove a data object from a project.
To remove a data object from a project:
To view information about a data object, you must open it.
To open a data object:
Table 4-2 summarizes the information tabs that apply to the different data object types in BAM.
Table 4-2 Data Object Type Tab Comparison
Tab | Simple | Derived | External | Logical |
---|---|---|---|---|
X |
X |
X |
X |
|
X |
X |
- |
X |
|
- |
- |
X |
- |
|
X |
X |
X |
X |
|
X |
X |
- |
- |
|
X |
X |
X |
X |
|
X |
X |
- |
- |
|
X |
X |
X |
X |
|
X |
X |
X |
X |
|
- |
- |
- |
X |
The following sections briefly summarize the information the data object tabs display. For more detailed information, see Creating and Managing Oracle BAM Data Objects.
The General tab applies to all data object types, but displays different information for each type.
For all types, the following information is displayed:
Type: Simple, Derived, External, or Logical
Name: internal data object name
Display Name: displayed data object name
Description
For all except derived data objects, the following information is displayed:
Category: this value can label and group similar data objects, such as BPM data objects.
For simple and derived data objects, the following information is displayed:
View Name: internal name of the BAM database view
Slow Changing Dimension (checked or unchecked)
This indicates a dimension table that changes infrequently. The data object creator can set this option to improve the performance of continuous queries.
Archived (checked or unchecked)
Continuous Query Type: Stream or Relation
Number of String Columns
Number of Long String Columns
Number of Integer Columns
Number of Float Columns
Number of Decimal Columns
Number of Date/Time Columns
The data object creator can set these options if more than the default number of columns of these types are required. In a simple data object, these cannot be changed.
For logical data objects, the following information is displayed:
Alias: internal table alias for joined data objects
The Columns tab applies to all types except external data objects.
For simple data objects, and for parent data objects of derived data objects, the following information is displayed for each column:
Column Name: internal column name
Column Type: Measure, Dimension, or Attribute
Data Type: VARCHAR
, DATETIME
, INT
, DECIMAL
, or FLOAT
Size: in bytes, or Precision and Scale for DECIMAL
or FLOAT
data types
Nullable (checked or unchecked): whether a null value is allowed
Hidden (checked or unchecked): whether the column is visible and selectable in queries, views, alerts, and so on
Default Value
Comment
For simple data objects, the following additional information is displayed for each column:
Display Name: displayed column name
Unique (checked or unchecked): whether unique values for each row are required
For derived data objects, the following information is displayed for each added column:
Column Name: internal column name
Display Name: displayed column name
Column Type: Measure, Dimension, or Attribute
Data Type: VARCHAR
, DATETIME
, INT
, DECIMAL
, or FLOAT
Nullable (checked or unchecked): whether a null value is allowed
Hidden (checked or unchecked)
Default Value
Comment
For logical data objects, the following information is displayed for each column:
Logical Data Object Column Name: internal column name
Logical Data Object Column Display Name: displayed column name
Source Column Display Name: displayed column name in source data object
Source Data Object: displayed source data object name
Column Type: Measure, Dimension, or Attribute
Data Type: VARCHAR
, DATETIME
, INT
, DECIMAL
, or FLOAT
Size: in bytes, or Precision and Scale for DECIMAL
or FLOAT
data types
For logical data objects, the following additional information is displayed regarding joins:
Primary Data Object: displayed primary data object name
Primary Column: internal name of primary column in primary data object used in join
Foreign Data Object: displayed foreign data object name
Foreign Column: internal name of primary column in foreign data object used in join
The Tables tab applies only to external data objects. It displays the following information for all columns in the data object:
Column Name: internal column name
Column Type: Measure, Dimension, or Attribute
Data Type: VARCHAR
, DATETIME
, INT
, DECIMAL
, or FLOAT
Size: in bytes, or Precision and Scale for DECIMAL
or FLOAT
data types
Nullable (checked or unchecked): whether a null value is allowed
Hidden (checked or unchecked)
Unique (checked or unchecked): whether unique values for each row are required
Selected Columns: checked columns are visible to BAM
The Indexes tab applies to simple and derived data objects. It displays the following information for index columns in the data object:
Name: internal index column name
Index Columns: internal indexed column name
The Hierarchies tab applies to all data object types. It displays the following information for any hierarchies defined:
Name: hierarchy name
Structure: display names of columns in the hierarchy, from highest to lowest
An example hierarchy is country, state or province, and city.
The Retention tab applies to derived data objects and to simple data objects that are archived streams or archived relations. It displays the number of days of data retained in the data object. A value of zero specifies unlimited retention. For non-archived streams, no data is persisted, and any retention value is ignored. Data Retention schedules can be changed through Oracle Enterprise Manager Fusion Middleware Control. See Setting Data Retention in a Data Object for more information.
The Row Security tab applies to all data object types. It displays the following information:
Name: a name of a security role
Security Filter: a filter expression limiting the rows that can be accessed
This is useful for working with data objects that contain sensitive or confidential data not intended for all BAM viewers, designers, or even administrators.
A user must have at least read permission for row security to apply. A user must have at least write permission to be able to determine row security for other users. See Creating and Managing Oracle BAM Data Objects.
The Data tab applies to all data object types. It displays the actual data stored in the data object in columns and rows. You can add and edit data rows if granted update permission. You can delete data rows if granted delete permission. You can also choose to display a specific number of data rows per page, or order the whole set on the database by editing your Preferences.
This topic describes how you can modify data tab preferences.
The Filter tab applies only to logical data objects. It displays a filter expression limiting the rows that the logical data object includes. You can only access data that both this filter and row security allow you to access. See The Row Security Tab.
The Calculated Fields tab applies to all data object types. It displays the calculated columns in the data object. Operators and expression functions, combined with column names, specify new calculated columns.
Administrators can create calculated columns only in logical data objects. They can define parameters at the data object level inside calculated fields. This is different from project-level parameters that Designers can specify.