Say you have an Anchor Model and replace a single Name attribute with three attributes: FirstName, MiddleName and LastName. What happens to the original name attribute? I can imagine other schema changes that feel destructive, so what is meant by Anchor Modeling's claim to evolve schemas in a non-destructive way?
What is meant by non-destructive schema evolution in Anchor Modeling?
754 Views Asked by jl6 At
1
There are 1 best solutions below
Related Questions in DATABASE-DESIGN
- Big data with spatial queries/indexing
- Unique hash/index for time interval
- Best practices for creating a huge SQL table
- Database Design: How should I store user's news preferences in MySQL database?
- Is it recommended to use Node.js for an online room booking web application?
- Storing multiple item settings in database
- Which column type for storing the year field in a table with rows of yearly data
- Best way to setup a i8n in a database
- Database normalization for electricity monitoring system
- Database Design: Unique Billing Assocation
- Is it always a bad practice to have circular relationships in your database design
- One column maps to mutiple columns from different table
- Replicating tables within the database
- mysql one translates table vs multiple translate table
- Nosql database design for complex querying
Related Questions in DATABASE-SCHEMA
- Storing multiple item settings in database
- Database tables for tennis court booking system
- MySQL query to get all (additional) symptoms and diseases
- Database Design Advice for a Social Network App Needed
- When to split a (MySQL) table
- Messaging table performance - Merge from and to id`s into one single field vs separate 2 fields
- normalization of database structure
- recreate user with schema
- Optional relationship in SQL Server -- How to implement in SSMS Schema Designer
- NodeJS - Mongoose document embedding
- Parent Category - Sub category and Product database organization
- ASP.NET Identity Custom with Group-based Roles
- MySQL transactions with schema modification statements (DDL)?
- Alter schema of Access 2013 database with linked table
- Database Design: Similar offerings/services from different providers that have varying prices
Related Questions in ANCHOR-MODELING
- Anchor modeling - tie: make first role?
- Agile/evolutionary database modelling for an evolving content management application
- EMF (OCL) concatenate two enumerations into one
- What are the pros and cons of Anchor Modeling?
- Managing Entity Resolution in Anchor Modeling
- Join elimination not working in Oracle with sub queries
- How to send data from OLE DB source to Anchor model tables using ETL procedure?
- Temporal database design, with a twist (live vs draft rows)
- What is meant by non-destructive schema evolution in Anchor Modeling?
- Anchor Modeling - are data types part of the Model?
- Are there any data warehouse frameworks?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Destructive operations affect uptime
It probably refers to its interaction with uptime. If you ALTER a sufficiently sized base table, you will suspend requests to it until it is complete. With anchor modeling, there is no such scenario since new columns are new entities that do not interact with the base tables (in terms of blocking I/O operations to the base table, besides deletes, which is moot since new columns are implemented as empty tables).
So, let's say you have a Person base table with a FullName attribute. And then you've non-destructively evolved to include FirstName, MiddleName, and LastName. The FullName table would probably continue to be useful until all code paths adopt First, Middle, and Last. At this point it becomes a sort of vestigial organ, to continue the evolution analogy.
Auditing (deleting) this table is also non-destructive. As a separate entity, the destruction of its lifetime does not interrupt the operation of any of the base or attribute tables.
So that's probably what the anchor model authors meant by destructive.
Destructive to uptime.