14
votes
What does this definition of a Primary key mean?
Note how $K$ can be a set of columns. Irreducibility means that you have to pick minimal sets of columns.
Nota bene: They should require $K \neq \emptyset$.
For instance, consider this relation.
<...
9
votes
Accepted
Confused between 2 phase locking and 2 phase commit
These are two different things that have two different goals.
The two-phase locking protocol is designed to guarantee serializability for transactions that access concurrently a single, centralized ...
8
votes
Accepted
6
votes
Accepted
Can databases use data structures/algorithms to respond to arbitrary queries?
Full disclosure: I've written the sort subsystem for a commercial database server, albeit not a SQL one.
Database servers will use every trick you can think of, and a lot you haven't thought of, to ...
5
votes
Accepted
Time Complexity of Sort-Merge Join
You are absolutely correct. Wikipedia has an error -- or perhaps, if we are feeling more charitable, we could call it an oversimplification.
It is not true that the running time is at most $O(|R|+|S|...

D.W.♦
- 156k
5
votes
Accepted
Armstrong's axioms more precisely 'inference rules': what's the distinction?
First, terminologically, "axiom" and "inference rule" are often used as roughly interchangeable as they tend to serve similar purposes. There are technical distinctions, which themselves can vary ...
5
votes
Accepted
Is "Query Equivalence" decidable?
Suppose the abstract SQL you're considering has support for infinite-precision "big" integers that can store any integer values, and that these support *, ...
4
votes
Accepted
When should you use the existential and universal quantifiers for Relational Calculus?
This question is related to the very basics of database theory, finite model theory and logics. I would strongly suggest Abiteboul's book on Foundations of Databases, or Libkin's book on Finite Model ...
4
votes
Accepted
What is the difference between F+ (closure of F) and F* (cover of F) for Functional Dependencies?
Closure and cover are two completely different things.
The closure of a set of attributes or a functional dependency $f$ is a set of relation schemes that can be implied by $f$. In order to find the ...
4
votes
Accepted
Measuring availability from CAP theorem
This is indeed a concern for those building real-world applications - how does one measure "availability" - not the binary property discussed in the CAP theorem, but the experience for users of the ...
4
votes
Does 1NF require that there can be no duplicate rows?
What was called 1NF in the past is considered nowadays part of the definition of the Relational Data Model itself: each attribute must be a single value, neither composed, nor repeated. When we talk ...
4
votes
Accepted
Find candidate keys given functional dependencies
Assuming that the three dependencies are a cover of the dependencies of the relation schema R, to find all the candidate keys we could start from a canonical cover of the FDs, for instance the ...
4
votes
Is relational algebra a procedural, imperative, and/or declarative language?
The terminology used in the database area calls the relational algebra “procedural” to contrast it with the languages based on “calculus”, since an algebraic expression describes an ordered set of ...
3
votes
Relational query for universally quantified formula
SQL does not have a universal quantifier, but an equivalent can be constructed from the existential one, through a normalization process similar to Skolemization: $$\forall x P(x) \iff \nexists x \neg ...
3
votes
Accepted
How to evaluate relations in a DAG?
Excellent question. This is known as the problem of answering reachability queries in a graph, and in particular, in a directed acyclic graph (dag). Basically, you want to know whether y is ...

D.W.♦
- 156k
3
votes
Combine the following IP Addresses into a single block
An ip address has two parts: the address and the netmask.
The address is just a 32-bit binary number. E.g. yours:
...
3
votes
Does 2NF require 1NF?
I will focus on questions 2 and 3, mainly by recalling a little bit of history of the Relational Data Model.
The first foundamental paper on the Relational Model was published in 1970 by the Turing ...
3
votes
Accepted
Meaning of "pushing x down" and "pulling x up" in database query handling
I would normally say "pushing inward"/"pulling outward", but "down"/"up" make sense if you are thinking in terms of syntax trees and, being a computer scientist, your trees grow downward.
In (...
3
votes
Why checking if tuple belongs to join of two tables is NP-complete?
If the claim is:
for instance, given a join query $Q$ and a relational database $D$, checking if $Q(D)$ returns a tuple is NP-complete as well
the NP-completness is about the decision if that join ...
3
votes
Accepted
Did Date and Darwen's "Third Manifesto" have a lasting impact?
Hmm, before some moderator closes this q as being a matter of opinion, not substance ...
I think you need to consider whether the first two manifestos (to which TTM was a response) had any impact? I'...
3
votes
Accepted
How to model references in an ontology
If you want to say something about an RDF triple (i.e., an rdf:Statement), you can use reification:
...
3
votes
Is persistence a property of a database?
The databases I've seen are persistent. But rather than trying to figure out the "one true meaning" of the word database, if this aspect matters in a specific context, then I suggest you ...

D.W.♦
- 156k
3
votes
Accepted
Using B+Tree to implement index, when the index-key size and the data-block size are of the same order
Note: In what follows, I'm going to use the term "B-tree" to refer to the general idea of B-trees regardless of the variant, and "B+-trees" to refer specifically to B+-trees.
You'...
2
votes
Clustered index is dense or sparse?
Clustered indexing can be both dense and sparse. Lets see how
Quick recap: clustered indexing is done on non key attributes and it is sorted according to that attribute. Idea behind clustered ...
2
votes
Why is the Mean Time To Failure of multiple disks calculated via division and not multiplication?
I think this problem is interesting. So I want to provide a explanation, and I think it will help me understand it better.
The die example Yuval provides is interesting. Because the distribution is ...
2
votes
What is the difference between "strict schedule" and "cascadeless schedule"?
Definitions from the books by Korth et. al. and Elmasri et al.:
Cascadeless schedule
A cascadeless schedule is one where, for each pair of transactions Ti and Tj such that Tj reads a data item ...
2
votes
Accepted
Does the conservative two phase locking protocol produce cascadeless schedules?
Yes, the conservative 2PL does not garantuee cascadelessness. Requesting all locks at the beginning of the transaction is used to prevent deadlocks.
If you want to prevent cascading rollbacks, you ...
2
votes
Accepted
Does the following modified Two-Phase Locking protocol ensure serializability and freedom from deadlock?
The question is not clear about the details, but assuming said resources are always locked-then-accessed sequentially, then a deadlock is not possible to occur. Since the locks are always obtained in ...
2
votes
Restricting capabilities of admin role in database schema
Audit trails can provide a mean to accomplish that kind of security-related objective (individual accountability / reconstruction of event).
Users (not only administrator) are less likely to attempt ...
2
votes
Accepted
Restricting capabilities of admin role in database schema
Generally, you cannot prevent administrators from making any change they want to the database. Many administrator actions require privileges that give them a lot of control over the database. For ...

D.W.♦
- 156k
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
database-theory × 265databases × 103
relational-algebra × 47
data-structures × 31
concurrency × 16
normal-forms × 15
algorithms × 11
relational-calculus × 9
distributed-systems × 8
trees × 7
graphs × 6
terminology × 6
functional-dependencies × 6
reference-request × 5
storage × 5
tuple-relational-calculus × 5
complexity-theory × 4
time-complexity × 4
computer-architecture × 4
search-algorithms × 4
sets × 4
filesystems × 4
knowledge-representation × 4
database-concurrency × 4
optimization × 3