Presentation

2017 Ed-Fi Bootcamp - 205 Ed-Fi ODS_API_New_Capabilities.pptx

Ed-Fi-ODS-API-Futures.pptx

Temporal ODS - Hands on Exercises

Diagrams


TODS - Metadata Tables

  • tods.Snapshot: Stores snapshot-level metadata, such as the SnapshotName and the Status (e.g., ACTIVE).
  • tods.SnapshotCode:
    • Associates individual Snapshot records to one or more SnapshotCodes
    • This supports snapshot aliasing, meaning that client systems and queries can use multiple names to query or perform operations against a single Snapshot
    • A set of metadata-to-data bridge tables: t_[ODS namespace].[ODS table name]SnapshotRecord
      • e.g., t_edfi.StudentSnapshotRecord
      • Associates individual records in the T-ODS domain aggregate data tables to one or more snapshots.

TODS - Data Tables

  • The T-ODS contains a set of data tables parallel to the Ed-Fi ODS data tables, including Ed-Fi Extensions
  • SQL schema generated using MetaEd
  • To support the ODS extension schema, as well as plans for future namespace extensions, T-ODS data tables are generated in a separate schema for every ODS table generated presently
  • The T-ODS data tables are generated using the schema naming convention: t_[ODS namespace] (e.g., t_edfi, t_extension)
  • The T-ODS tables are generated within the ODS database

Partial Student model - a concrete example to show the relationships between:

  • Snapshot metadata and the t_[ODS namespace].[domain root table name]SnapshotRecord tables
  • Relationships between the domain data tables, type tables, and Ed-Fi Descriptor tables
  • Note that relationships within the domain data tables such as the parent-child relationship are established via new primary key identities (i.e., "tid_[TableName]") instead of natural keys or their ODS surrogate keys.


Temporal Tables Data Model


The following partial Student model uses a concrete example to show the relationships between:

Note that relationships within the domain data tables such as the parent-child relationship are established via new primary key identities (i.e., "tid_[TableName]") instead of natural keys or their ODS surrogate keys.