Student Centered ODS ETL Processing. Insert Search for rows not previously in the database within a snapshot type for a specific subject and year Search.

Slides:



Advertisements
Similar presentations
Access 2007 ® Use Databases How can Microsoft Access 2007 help you structure your database?
Advertisements

Database Design Week 10.
CC SQL Utilities.
Guide to Oracle10G1 Introduction To Forms Builder Chapter 5.
Introduction to Structured Query Language (SQL)
A Guide to Oracle9i1 Introduction To Forms Builder Chapter 5.
A Guide to SQL, Seventh Edition. Objectives Understand the concepts and terminology associated with relational databases Create and run SQL commands in.
Introduction to Structured Query Language (SQL)
A Guide to MySQL 3. 2 Objectives Start MySQL and learn how to use the MySQL Reference Manual Create a database Change (activate) a database Create tables.
1 Chapter 2 Reviewing Tables and Queries. 2 Chapter Objectives Identify the steps required to develop an Access application Specify the characteristics.
Chapter 4 Relational Databases Copyright © 2012 Pearson Education 4-1.
DAT702.  Standard Query Language  Ability to access and manipulate databases ◦ Retrieve data ◦ Insert, delete, update records ◦ Create and set permissions.
® IBM Software Group © 2006 IBM Corporation The Eclipse Data Perspective and Database Explorer This section describes how to use the Eclipse Data Perspective,
Database Constraints. Database constraints are restrictions on the contents of the database or on database operations Database constraints provide a way.
Computer Science & Engineering 2111 Introduction to Database Management Systems Relationships and Database Creation 1 CSE 2111 Introduction to Database.
Advance Computer Programming Java Database Connectivity (JDBC) – In order to connect a Java application to a database, you need to use a JDBC driver. –
Session 5: Working with MySQL iNET Academy Open Source Web Development.
ASP.NET Programming with C# and SQL Server First Edition
Interacting With Data Databases.
LSP 121 Week 1 Intro to Databases. Welcome to LSP 121 Quantitative Reasoning and Technological Literacy II Continuation of quantitative data concepts.
PHP Programming with MySQL Slide 8-1 CHAPTER 8 Working with Databases and MySQL.
DAY 15: ACCESS CHAPTER 2 Larry Reaves October 7,
1 Lesson 22 Getting Started with Access Essentials Computer Literacy BASICS: A Comprehensive Guide to IC 3, 3 rd Edition Morrison / Wells.
Oregon Feature Code. Oregon File Member Setup Done at the district level Runs the physical file information for the district Shouldn’t be too concerned.
OCAN College Access Program Data Submissions Vonetta Woods HEI Analyst, Ohio Board of Regents
Kuali Budget Construction Training Catherine Maddaford KBC Administrator.
Chapter 7 Working with Databases and MySQL PHP Programming with MySQL 2 nd Edition.
Microsoft ® Office Access ® 2007 Training Build a database I: Design tables for a new Access database ICT Staff Development presents:
Management Information Systems MS Access MS Access is an application software that facilitates us to create Database Management Systems (DBMS)
Access 2013 Microsoft Access 2013 is a database application that is ideal for gathering and understanding data that’s been collected on just about anything.
WEEK 11 Database Design. TABLE INSTANCE CHARTS Create Tables.
Discovering Computers Fundamentals Fifth Edition Chapter 9 Database Management.
DAY 12: DATABASE CONCEPT Tazin Afrin September 26,
ISV Innovation Presented by ISV Innovation Presented by Business Intelligence Fundamentals: Data Cleansing Ola Ekdahl IT Mentors 9/12/08.
Siebel 8.0 Module 5: EIM Processing Integrating Siebel Applications.
Chapter 5 Database Processing. Neil uses software to query a database, but it has about 25 standard queries that don’t give him all he needs. He imports.
7 1 Chapter 7 Introduction to Structured Query Language (SQL) Database Systems: Design, Implementation, and Management, Seventh Edition, Rob and Coronel.
Database Design and Management CPTG /23/2015Chapter 12 of 38 Functions of a Database Store data Store data School: student records, class schedules,
MS Access 2007 Management Information Systems 1. Overview 2  What is MS Access?  Access Terminology  Access Window  Database Window  Create New Database.
Microsoft Office 2007 Access Chapter 3 Maintaining a Database.
M1G Introduction to Database Development 5. Doing more with queries.
6 1 Lecture 8: Introduction to Structured Query Language (SQL) J. S. Chou, P.E., Ph.D.
6.1 © 2010 by Prentice Hall 6 Chapter Foundations of Business Intelligence: Databases and Information Management.
Access 2007 ® Use Databases How can Microsoft Access 2007 help you structure your database?
A Guide to MySQL 3. 2 Introduction  Structured Query Language (SQL): Popular and widely used language for retrieving and manipulating database data Developed.
Maintaining a Database Access Project 3. 2 What is Database Maintenance ?  Maintaining a database means modifying the data to keep it up-to-date. This.
6 th Annual Focus Users’ Conference 6 th Annual Focus Users’ Conference Import Testing Data Presented by: Adrian Ruiz Presented by: Adrian Ruiz.
Database Fundamental & Design by A.Surasit Samaisut Copyrights : All Rights Reserved.
Programming Logic and Design Fourth Edition, Comprehensive Chapter 16 Using Relational Databases.
DAY 9: DATABASES Rohit September 21,
Academic 2016 Student Enrolment Day 1 Integrated National Education Information System (iNEIS TM )
Constraints Lesson 8. Skills Matrix Constraints Domain Integrity: A domain refers to a column in a table. Domain integrity includes data types, rules,
Session 1 Module 1: Introduction to Data Integrity
Description and exemplification use of a Data Dictionary. A data dictionary is a catalogue of all data items in a system. The data dictionary stores details.
HEI/OCAN College Access Program Data Submissions.
INFORMATION TECHNOLOGY DATABASE MANAGEMENT. A database is a collection of information organized to provide efficient retrieval. The collected information.
LM 5 Introduction to SQL MISM 4135 Instructor: Dr. Lei Li.
Retele de senzori Curs 2 - 1st edition UNIVERSITATEA „ TRANSILVANIA ” DIN BRAŞOV FACULTATEA DE INGINERIE ELECTRICĂ ŞI ŞTIINŢA CALCULATOARELOR.
MICROSOFT ACCESS – CHAPTER 5 MICROSOFT ACCESS – CHAPTER 6 MICROSOFT ACCESS – CHAPTER 7 Sravanthi Lakkimsety Mar 14,2016.
Constraints Advanced Database Systems Dr. AlaaEddin Almabhouh.
SQL Basics Review Reviewing what we’ve learned so far…….
1 Section 1 - Introduction to SQL u SQL is an abbreviation for Structured Query Language. u It is generally pronounced “Sequel” u SQL is a unified language.
Emdeon Office Batch Management Services This document provides detailed information on Batch Import Services and other Batch features.
N5 Databases Notes Information Systems Design & Development: Structures and links.
CHAPTER 7 DATABASE ACCESS THROUGH WEB
Data File Import / Export
Structured Query Language
Chapter 8 Working with Databases and MySQL
Relational Database Model
Developing a Model-View-Controller Component for Joomla Part 3
Presentation transcript:

Student Centered ODS ETL Processing

Insert Search for rows not previously in the database within a snapshot type for a specific subject and year Search for rows not previously in the database within a snapshot type for a specific subject and year Check for duplicates Check for duplicates Identify test Identify test Lookup metadata Lookup metadata Create Unique Test Event identifiers Create Unique Test Event identifiers Load data Load data Copy Previous Year Test details Copy Previous Year Test details

≠ PADMIDSnapshotFgUpdtDtEndDt T1008F :21:36.117NULL Source Data SMFConfig_ID 134 IDUnqTstEvent_IDEffDtEndDt :00:00.000NULL Event SMFConfig_ID 134 The current date and time is 11/21/ :15AM when load starts IDUnqTstEvent_IDEffDtEndDt :00:00.000NULL Event SMFConfig_ID 134 The current date and time is 11/21/2008 2:30PM when load starts How the effective date is determined before / after noon In some rare cases, a row is found to be inserted that has already been end dated. In that case it will be added to the database and be effective for one day. IDUnqTstEvent_IDEffDtEndDt :00: :59: Event SMFConfig_ID 134

Update Search for changes to rows already in the ODS from Staging within a snapshot type for a specific subject and year that occurred since the last run of the update ETL Search for changes to rows already in the ODS from Staging within a snapshot type for a specific subject and year that occurred since the last run of the update ETL No need to check for duplicates No need to check for duplicates Identify test Identify test Lookup metadata Lookup metadata Load data Load data –Determine how to apply update Normally end date prior version of row and insert new row Normally end date prior version of row and insert new row On some occasions rows that had been previously end dated may be reintroduced to the ODS On some occasions rows that had been previously end dated may be reintroduced to the ODS Sometimes the only action is to end date the current row Sometimes the only action is to end date the current row Copy Previous Year Test details Copy Previous Year Test details

= PADMIDSnapshotFgUpdtDtEndDt T1008F :21:36.117NULL Source Data SMFConfig_ID 134 How the effective date is determined before / after noon IDUnqTstEvent_IDEffDt :00: Event SMFConfig_ID 134 The current date and time is 12/15/ :15AM when load starts In ODS EndDt :59: :00: Change from StagingNULL FNm Bob Robert The current date and time is 12/15/2008 2:30PM when load starts IDUnqTstEvent_IDEffDt :00: Event SMFConfig_ID 134In ODS EndDt :59: :00: Change from StagingNULL FNm Bob Robert

Update Logic Read updated row from Staging Read updated row from Staging Read current record from ODS Read current record from ODS If row in ODS is end dated If row in ODS is end dated –Add new row to ODS If row in ODS is not end dated If row in ODS is not end dated –Compare columns Staging <> ODS –If the columns are different End date ODS row End date ODS row Add Staging row to ODS Add Staging row to ODS –If the columns are the same and the end date in the ODS row is not set and the end date from the Staging record is set End date ODS row End date ODS row

Delete (soft) For the subject / year table search for rows in the ODS that are no longer in Staging For the subject / year table search for rows in the ODS that are no longer in Staging The examinee table is not checked for end dated rows, only the subject / year table is used to determine if a delete is needed per Assessment The examinee table is not checked for end dated rows, only the subject / year table is used to determine if a delete is needed per Assessment A Cascaded update is performed end dating the entire test event and all related rows from the following tables: A Cascaded update is performed end dating the entire test event and all related rows from the following tables: –Event –EventInst –EventInd –BnchLvl –Score –RaterScore –PaperPencilData –CmptrBasedData –EventClsRm The end date is determined the same way as in the insert and update ETL The end date is determined the same way as in the insert and update ETL

The affects of source tables on Student Centered tables Not all tables are loaded for all tests Score, Benchmark Level and Rater Score are not loaded for Virtual tests Presently only Writing has Rater Scores (possibly ELPA in the future) Paper / Pencil tests load to Paper Pencil Data and Event Class Room Computer based tests load to Computer Based Data Writing has only total Benchmark Level scores while other subjects have Benchmark Level scores at the category (aka strand) level Some tables are only loaded if there are values present Only non-blank scores are loaded to the Benchmark Level table Only non-null scores are loaded to the Score and Rater Score tables Only non-null institution identifiers are loaded to the Event Institution table

Example of applying updates Row is inserted Update to Subject / Year table << Changes to an Institution and an indicator – end date current rows << Insert new current rows – null end date << Changes to student demographic data – end date current row << Insert new current row – null end date

Maintenance Occasionally there may be the need to make corrections or to reload portions of the ODS Occasionally there may be the need to make corrections or to reload portions of the ODS After a few years there may also be the need to remove some lower level of detail from the ODS After a few years there may also be the need to remove some lower level of detail from the ODS In any case as maintenance is needed communication will be made to inform clients of what changes are coming and some suggestions on how to deal with those changes In any case as maintenance is needed communication will be made to inform clients of what changes are coming and some suggestions on how to deal with those changes

How to store the Extracted ODS Data It is recommended that the extract layout be used as a guide for the staging database A data model is available in this format for your use The model is in power designer 12.5 and available in html format for review

Considerations for your local ODS The ID column from each table is sufficient for a primary key The ID column from each table is sufficient for a primary key Columns ending in _ID are foreign keys from other tables and should be indexed Columns ending in _ID are foreign keys from other tables and should be indexed The SMFConfig_ID can be used for vertical partitioning of the Core Content data The SMFConfig_ID can be used for vertical partitioning of the Core Content data Additional indexes are in the data model and you may want to tune and add more based on your needs Additional indexes are in the data model and you may want to tune and add more based on your needs

Loading data to your local ODS If you follow the suggested database design, the process of loading data is simple If you follow the suggested database design, the process of loading data is simple –On your schedule you will receive data Rows that match by ID are updated Rows that match by ID are updated Rows not found by matching on ID are inserted Rows not found by matching on ID are inserted The Security tables are replaced on each load in total The Security tables are replaced on each load in total That’s all there is to keeping your local ODS up to date. That’s all there is to keeping your local ODS up to date.

How to retrieve data from your local ODS Generally there are two types of queries Generally there are two types of queries –Current data –Data as of a date For current data select where the end date is null For current data select where the end date is null –select * from Event where UnqTstEvent_ID = 500 and Enddt is null For data as of a date a query such as this will work For data as of a date a query such as this will work –select * from Event where EffDt = ‘ :57:00.000’) and UnqTstEvent_ID = 500

Formal and Inferred Registration System (FIRS) FIRS makes it possible for ODE to give the proper data for each of the students served by your clients FIRS makes it possible for ODE to give the proper data for each of the students served by your clients Spring and Fall Membership, all state assessments and any student transfers through OSTX since are used by FIRS to form a chronology of which institutions a student was related to and when Spring and Fall Membership, all state assessments and any student transfers through OSTX since are used by FIRS to form a chronology of which institutions a student was related to and when This information is used by the extract process to provide the most complete data possible This information is used by the extract process to provide the most complete data possible In the coming year the new Consolidated ADM data collection will begin providing information to this process as well In the coming year the new Consolidated ADM data collection will begin providing information to this process as well The tables FIRS and DistUnqTstEvent provided in your extract are taken from this system The tables FIRS and DistUnqTstEvent provided in your extract are taken from this system

Extract Process Regions must provide a list of districts in order to receive the extract Regions must provide a list of districts in order to receive the extract The ODE helpdesk will setup the relationships between the Region and their districts The ODE helpdesk will setup the relationships between the Region and their districts The first extract will be a full The first extract will be a full The next extract will change to an incremental automatically The next extract will change to an incremental automatically An incremental extract includes changes for continuing students plus full extracts for students new to the client districts An incremental extract includes changes for continuing students plus full extracts for students new to the client districts Each time an extract is performed the last extract date in the Region’s configuration is set Each time an extract is performed the last extract date in the Region’s configuration is set The next extract will contain all changes since the last extract date The next extract will contain all changes since the last extract date

Extract Process (continued) Data is extracted into the formats specified by the StudentCenteredExportFormat.xls Data is extracted into the formats specified by the StudentCenteredExportFormat.xls One file is produced per table described in the format One file is produced per table described in the format The files are in CSV format with text delimited by quotes The files are in CSV format with text delimited by quotes Files will only be produced if there are rows qualifying for the extract Files will only be produced if there are rows qualifying for the extract The file Manifest.txt contains a list of the files extracted with the count of rows and when it was produced The file Manifest.txt contains a list of the files extracted with the count of rows and when it was produced The CSV files and the Manifest.txt are compressed into a.zip file and placed on ODE’s secure FTP site for pickup by the Region The CSV files and the Manifest.txt are compressed into a.zip file and placed on ODE’s secure FTP site for pickup by the Region

File Transfer and Scheduling When the districts the Region serves are communicated to the ODE Helpdesk ODE will also make sure security is setup for connecting to the secure FTP server When the districts the Region serves are communicated to the ODE Helpdesk ODE will also make sure security is setup for connecting to the secure FTP server Instructions for connection will be provided Instructions for connection will be provided The ODE helpdesk can schedule which days the Region will receive files The ODE helpdesk can schedule which days the Region will receive files The same scheduling system is already in use for extracting data from Student Centered Staging The same scheduling system is already in use for extracting data from Student Centered Staging

Requested extracts At times it may be necessary for the Region to receive a full extract to repopulate your local ODS or the Region may have missed some extracts produced previously At times it may be necessary for the Region to receive a full extract to repopulate your local ODS or the Region may have missed some extracts produced previously –Full extracts can be scheduled by the ODE Helpdesk The number that can be done in one day is limited The number that can be done in one day is limited Full extracts may have to wait until the weekend Full extracts may have to wait until the weekend Full extracts will not be provided on a regular basis Full extracts will not be provided on a regular basis –For missed extracts, the ODE Helpdesk can set the date as of which the extract will pull information and provide a larger incremental extract The date as of which the extract will pull information is cleared after the run of the extract The date as of which the extract will pull information is cleared after the run of the extract Processing will return to normal automatically Processing will return to normal automatically

Limiting Access Each extract will provide a new copy of the security files (FIRS and DistUnqTstEvent) Each extract will provide a new copy of the security files (FIRS and DistUnqTstEvent) The FIRS file contains the district related to the student with the end date provided for review if needed The FIRS file contains the district related to the student with the end date provided for review if needed The DistUnqTstEvent relates the district to the specific test events available to that district The DistUnqTstEvent relates the district to the specific test events available to that district By simply joining through this table when providing access to your clients you can restrict access to just the information they are allowed to access By simply joining through this table when providing access to your clients you can restrict access to just the information they are allowed to access int = 2082 select e.* from Event e from Event e join DistUnqTstEvent d join DistUnqTstEvent d on e.UnqTstEvent_ID = d.UnqTstEvent_ID on e.UnqTstEvent_ID = d.UnqTstEvent_ID and d.DistInstID and d.DistInstID

Data Model Follows the same definitions provided by the StudentCenteredExportFormat.xls spreadsheet Follows the same definitions provided by the StudentCenteredExportFormat.xls spreadsheet Organized around the document as well providing different color coding for the same major subjects as the spreadsheet: Organized around the document as well providing different color coding for the same major subjects as the spreadsheet: –Core Content Data –Score Data –File Processing Control Data –Metadata –Security – plus – –Possible changes The model show how the tables are related to each other and provides useful information about the data The model show how the tables are related to each other and provides useful information about the data The model is in Power Designer 12.5; an html version is available to review the model that contains table create statements as well The model is in Power Designer 12.5; an html version is available to review the model that contains table create statements as well

Pulling it all together The SMFConfig table is essentially a link to the subject and year that the data belongs with The SMFConfig table is essentially a link to the subject and year that the data belongs with Most of the metadata is contained in a Table of Tables / Master Codes scheme which houses virtual tables and related code values Most of the metadata is contained in a Table of Tables / Master Codes scheme which houses virtual tables and related code values Each row in the Table of Tables represents a virtual table Each row in the Table of Tables represents a virtual table Rows in the Master Codes table relate back to the Table of Tables for rows that represent the values stored in the virtual table of tables Rows in the Master Codes table relate back to the Table of Tables for rows that represent the values stored in the virtual table of tables The Ctgry table is used to indicate the score reporting category (aka strand) related to score data The Ctgry table is used to indicate the score reporting category (aka strand) related to score data The Ctgry table also contains entries for total scores The Ctgry table also contains entries for total scores Review samples Review samples

Student Centered ODS Thanks for coming!