chase_algorithm

Chase (Algorithm)

Return to Algorithms, Chase, Databases, Database Design, Database Bibliography

The chase algorithm is an algorithm in database construction, to test if a decomposition is lossless

Snippet from Wikipedia: Chase (algorithm)

The chase is a simple fixed-point algorithm testing and enforcing implication of data dependencies in database systems. It plays important roles in database theory as well as in practice. It is used, directly or indirectly, on an everyday basis by people who design databases, and it is used in commercial systems to reason about the consistency and correctness of a data design. New applications of the chase in meta-data management and data exchange are still being discovered.

The chase has its origins in two seminal papers of 1979, one by Alfred V. Aho, Catriel Beeri, and Jeffrey D. Ullman and the other by David Maier, Alberto O. Mendelzon, and Yehoshua Sagiv.

In its simplest application the chase is used for testing whether the projection of a relation schema constrained by some functional dependencies onto a given decomposition can be recovered by rejoining the projections. Let t be a tuple in π S 1 ( R ) π S 2 ( R ) . . . π S k ( R ) {\displaystyle \pi _{S_{1}}(R)\bowtie \pi _{S_{2}}(R)\bowtie ...\bowtie \pi _{S_{k}}(R)} where R is a relation and F is a set of functional dependencies (FD). If tuples in R are represented as t1, ..., tk, the join of the projections of each ti should agree with t on π S i ( R ) {\displaystyle \pi _{S_{i}}(R)} where i = 1, 2, ..., k. If ti is not on π S i ( R ) {\displaystyle \pi _{S_{i}}(R)} , the value is unknown.

The chase can be done by drawing a tableau (which is the same formalism used in tableau query). Suppose R has attributes A, B, ... and components of t are a, b, .... For ti use the same letter as t in the components that are in Si but subscript the letter with i if the component is not in Si. Then, ti will agree with t if it is in Si and will have a unique value otherwise.

The chase process is confluent. There exist implementations of the chase algorithm, some of them are also open-source.

Algorithms: Big O Notation, Iterative method Chase algorithm, Grokking Algorithms, Edsger Dijkstra, Donald Knuth: The Art of Computer Programming (TAOCP), Analysis of algorithms. Algorithms GitHub. (navbar_algorithms)

navbar_Algorithms

Algorithms: Algorithms Fundamentals, Algorithms Inventor: Algorithms Language Designer: ZZZ on DATE, YEAR; Algorithms DevOps - Algorithms SRE, Cloud Native Algorithms (Algorithms on Kubernetes - Algorithms on AWS - Algorithms on Azure - Algorithms on GCP), Algorithms Microservices, Algorithms Containerization (Algorithms Docker - Algorithms on Docker Hub), Serverless Algorithms, Algorithms Data Science - Algorithms DataOps - Algorithms and Databases (Algorithms ORM), Algorithms ML - Algorithms DL, Functional Algorithms (1. Algorithms Immutability, 2. Algorithms Purity - Algorithms No Side-Effects, 3. Algorithms First-Class Functions - Algorithms Higher-Order Functions, Algorithms Lambdas - Algorithms Anonymous Functions - Algorithms Closures, Algorithms Lazy Evaluation, 4. Algorithms Recursion), Reactive Algorithms), Algorithms Concurrency - Algorithms Parallel Programming - Async Algorithms, Algorithms Networking, Algorithms Security - Algorithms DevSecOps - Algorithms OAuth, Algorithms Memory Allocation (Algorithms Heap - Algorithms Stack - Algorithms Garbage Collection), Algorithms CI/CD - Algorithms Dependency Management - Algorithms DI - Algorithms IoC - Algorithms Build Pipeline, Algorithms Automation - Algorithms Scripting, Algorithms Package Managers, Algorithms Modules - Algorithms Packages, Algorithms Installation (Algorithms Windows - Chocolatey Algorithms, Algorithms macOS - Homebrew Algorithms, Algorithms on Linux), Algorithms Configuration, Algorithms Observability (Algorithms Monitoring, Algorithms Performance - Algorithms Logging), Algorithms Language Spec - Algorithms RFCs - Algorithms Roadmap, Algorithms Keywords, Algorithms Operators, Algorithms Functions, Algorithms Data Structures - Algorithms Algorithms, Algorithms Syntax, Algorithms OOP (1. Algorithms Encapsulation - 2. Algorithms Inheritance - 3. Algorithms Polymorphism - 4. Algorithms Abstraction), Algorithms Design Patterns - Algorithms Best Practices - Algorithms Style Guide - Clean Algorithms - Algorithms BDD, Algorithms Generics, Algorithms I/O, Algorithms Serialization - Algorithms Deserialization, Algorithms APIs, Algorithms REST - Algorithms JSON - Algorithms GraphQL, Algorithms gRPC, Algorithms Virtualization, Algorithms Development Tools: Algorithms SDK, Algorithms Compiler - Algorithms Transpiler, Algorithms Interpreter - Algorithms REPL, Algorithms IDEs (JetBrains Algorithms, Algorithms Visual Studio Code), Algorithms Linter, Algorithms Community - Algorithmsaceans - Algorithms User, Algorithms Standard Library - Algorithms Libraries - Algorithms Frameworks, Algorithms Testing - Algorithms TDD, Algorithms History, Algorithms Research, Algorithms Topics, Algorithms Uses - List of Algorithms Software - Written in Algorithms - Algorithms Popularity, Algorithms Bibliography - Algorithms Courses, Algorithms Glossary - Algorithms Official Glossary, Algorithms GitHub, Awesome Algorithms. (navbar_Algorithms)


© 1994 - 2024 Cloud Monk Losang Jinpa or Fair Use. Disclaimers

SYI LU SENG E MU CHYWE YE. NAN. WEI LA YE. WEI LA YE. SA WA HE.


chase_algorithm.txt · Last modified: 2024/05/01 04:35 by 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki