Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Anchor Modeling ER09 Presentation

The presentation held at the 28th International Conference on Conceptual Modeling.

Related Audiobooks

Free with a 30 day trial from Scribd

See all
  • Be the first to comment

Anchor Modeling ER09 Presentation

  1. 1. AnchorModeling<br />An Agile Modeling Technique using the Sixth Normal Form for Structurally and Temporally Evolving Data<br />Lars Rönnbäck[ER09]<br />
  2. 2. 2<br />“You can never step<br />into the same river<br />twice.”<br />
  3. 3. Olle<br />Regardt<br />Lars<br />Rönnbäck<br />Maria<br />Bergholtz<br />PetiaWohed<br />Paul<br />Johannesson<br />EVERYONE<br />DW<br />MDM<br />EDW<br />TDWI<br />CC<br />WWW<br />KTH/SU<br />DW<br />ER09<br />DW<br />2008<br />2003<br />2004<br />2005<br />2006<br />2007<br />2009<br />
  4. 4. Entity<br />Relationship<br />Modeling<br />Sixth<br />Normal<br />Form<br />Temporal<br />Databases<br />
  5. 5. ANCHORS<br />KNOTS<br />Gender<br />CustomerClass<br />HouseholdOwner<br />VisitingFrequencyInterval<br />Customer<br />Store<br />Purchase<br />Item<br />PriceList<br />Inventory<br />TIES<br />Customer_Address<br />Customer_Household<br />Card_Customer<br />CustomerDateOfBirth<br />CustomerNumber<br />CustomerName<br />CustomerGender<br />ATTRIBUTES<br />
  6. 6. ANCHORS<br />KNOTS<br />select top 5 * from GEN_Gender<br />select top 5 * from CU_Customer<br />Attributes and ties come in fourflavors, historized or staticcombined with knotted<br />ATTRIBUTES<br />TIES<br />select top 5 * from CUDOB_CustomerDateOfBirth<br />select top 5* from CUHH_Customer_Household<br />
  7. 7. Model Evolution<br />1<br />2<br />3<br />4<br />5<br />All previous versions of the schema are present and werenevermodified, allowing extensions to be made ”online”.<br />
  8. 8. LatestView<br />Point-in-TimeFunction<br />Joins all attributes and finds the attributerow with the latestFromDateearlier or on the given timepointifhistorized<br />Joins all attributes and finds the attributerow with the latestFromDateifhistorized<br />
  9. 9. The queryexecution plan shows that onlytwotables are touched (the anchor and the selectedattribute)despite of the fact that severalothers are joinedinto the viewwe are using.<br />
  10. 10. Table Elimination<br />The query optimizer will remove table T from the execution plan of a query if the following two conditions are fulfilled: <br />no column from T is explicitly selected<br />the number of rows in the returned data set is not affected by the join with T<br />Support<br />Microsoft SQL Server<br />Oracle<br />IBM DB2<br />PostgreSQL<br />MariaDB (fork of MySQL)<br />Teradata (partial)<br />
  11. 11. The scripts for setting up the database, including all views and functions, can be automaticallygenerated from a compact XML description.<br />Pseudoloadingcode given ”wide” source data:<br /><ul><li>Check iftherealready is an associatedsurrogate key for eachnatural key
  12. 12. For unknownindividuals
  13. 13. Create and associatesurrogatekeys
  14. 14. Directlyinsert data into all relevant tables</li></ul>(mosttablesincluding the anchor)<br /><ul><li>For knownindividuals
  15. 15. If this is a delta file, directlyinsert data into all relevant tables
  16. 16. If this is not a delta file, check if the value in the sourcediffers from the latestvalue in the destination and insertif the data is new</li></ul>(fewtablesexcluding the anchor)<br />Data loadingtemplatescan be made in whichonly the names of the tables and the join with the natural key have to be changed.<br />
  17. 17. Ease of Modeling<br />Simple concepts and notation<br />Historization by design<br />Iterative and incrementaldevelopment<br />Reducedtranslationlogic<br />SimplifiedMaintenance<br />Ease of temporal querying <br />Absence of null values <br />Reusability and automation <br />Asynchronous arrival of data <br />High Performance<br />High run-time performance<br />Efficientstorage<br />Parallelized physical media access <br />www.anchormodeling.com<br />

×