Concurrency Control & NoSQL Systems – Key Vocabulary

0.0(0)
studied byStudied by 0 people
full-widthCall with Kai
GameKnowt Play
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/75

flashcard set

Earn XP

Description and Tags

A comprehensive set of vocabulary flashcards covering key terms in database concurrency control techniques and modern NOSQL data-management concepts.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

76 Terms

1
New cards

Concurrency Control

Techniques that manage simultaneous transaction execution to preserve isolation and consistency.

2
New cards

Isolation

ACID property ensuring each transaction appears to run alone despite concurrent execution.

3
New cards

Consistency (DB)

State in which all database integrity constraints are satisfied before and after a transaction.

4
New cards

Read–Write Conflict

Situation where one transaction reads a data item that another concurrently writes.

5
New cards

Write–Write Conflict

Situation where two transactions concurrently attempt to write the same data item.

6
New cards

Binary Lock

Lock with two states—locked (1) or unlocked (0)—enforcing mutual exclusion on a data item.

7
New cards

Shared (Read) Lock

Lock mode allowing multiple transactions to read a data item but not write it.

8
New cards

Exclusive (Write) Lock

Lock mode that grants a single transaction both read and write access to a data item.

9
New cards

Lock Table

System structure that stores the lock status and waiting queues for each data item.

10
New cards

lock_item(X)

Operation that requests a lock on data item X; the transaction may wait if X is already locked.

11
New cards

unlock_item(X)

Operation that releases a lock on data item X and wakes one waiting transaction.

12
New cards

Two-Phase Locking (2PL)

Protocol in which all lock requests precede the first unlock, producing serializable schedules.

13
New cards

Growing Phase

First phase of 2PL where a transaction may obtain new locks but cannot release any.

14
New cards

Shrinking Phase

Second phase of 2PL where a transaction releases locks but cannot obtain new ones.

15
New cards

Lock Conversion

Process of upgrading a shared lock to exclusive or downgrading exclusive to shared under rules.

16
New cards

Basic 2PL

Standard two-phase locking without extra restrictions; guarantees serializability but not recoverability.

17
New cards

Conservative (Static) 2PL

Variant where a transaction locks all required items before execution, preventing deadlocks.

18
New cards

Strict 2PL

Variant that holds exclusive locks until commit or abort, yielding strict (recoverable) schedules.

19
New cards

Rigorous 2PL

Stronger form keeping both shared and exclusive locks until commit/abort; easy to implement.

20
New cards

Deadlock

Condition where each transaction in a set waits indefinitely for locks held by others in the set.

21
New cards

Starvation

Indefinite delay of a transaction because it never gains the needed locks while others proceed.

22
New cards

Wait-For Graph

Directed graph whose nodes are transactions and edges show waiting; cycles indicate deadlock.

23
New cards

Deadlock Prevention

Protocols that order resource acquisition or use timestamps to avoid cyclic waits.

24
New cards

Deadlock Detection

Technique that periodically checks the wait-for graph for cycles and aborts a victim.

25
New cards

Wait-Die Protocol

Timestamp scheme where an older transaction waits; younger conflicting one aborts (dies).

26
New cards

Wound-Wait Protocol

Timestamp scheme where an older transaction aborts (wounds) a younger holder; otherwise waits.

27
New cards

No Waiting (NW)

Deadlock-free protocol that immediately aborts a transaction if its lock request cannot be granted.

28
New cards

Cautious Waiting (CW)

Protocol allowing waiting only if the lock-holder is not itself blocked; else aborts requester.

29
New cards

Timeout (Deadlock)

Simple scheme that aborts a transaction if it waits longer than a preset period.

30
New cards

Timestamp

Unique, usually increasing, identifier representing a transaction’s start time.

31
New cards

Timestamp Ordering (TO)

Concurrency control that orders conflicting operations by transaction timestamps to ensure serializability without locks.

32
New cards

read_TS(X)

Largest timestamp of any transaction that successfully read item X.

33
New cards

write_TS(X)

Largest timestamp of any transaction that successfully wrote item X.

34
New cards

Strict Timestamp Ordering

TO variant delaying a read/write on X until the transaction that last wrote X commits or aborts, yielding strict schedules.

35
New cards

Cascading Rollback

Series of transaction aborts triggered when a transaction that wrote data later read by others is aborted.

36
New cards

Multiversion Concurrency Control (MVCC)

Techniques that keep multiple committed versions of data items, letting readers access old versions to increase concurrency.

37
New cards

Version

Distinct stored value of a data item, each tagged with readTS and writeTS.

38
New cards

Certify Lock

Special lock mode in multiversion 2PL used to finalize writes during commit (certification).

39
New cards

Optimistic (Validation) Control

Method that defers conflict checking until transaction end; uses read, validation, and write phases.

40
New cards

Validation Phase

Stage in optimistic control that tests whether a transaction can commit without violating serializability.

41
New cards

Granularity

Size of data items chosen for locking, ranging from field to whole database.

42
New cards

Fine Granularity

Locking on small items (e.g., records) allowing high concurrency but many locks.

43
New cards

Coarse Granularity

Locking on large items (e.g., files) reducing lock overhead but limiting concurrency.

44
New cards

Intention Lock

Lock type (IS, IX, SIX) placed at higher-level nodes to declare forthcoming lower-level locks in multiple-granularity schemes.

45
New cards

IS (Intention Shared)

Intent lock indicating forthcoming shared locks on descendants.

46
New cards

IX (Intention Exclusive)

Intent lock indicating forthcoming exclusive locks on descendants.

47
New cards

SIX (Shared-Intention Exclusive)

Lock holding shared access on a node while permitting exclusive locks below it.

48
New cards

Multiple Granularity Locking (MGL)

Protocol that coordinates IS, IX, SIX, S, X locks along a hierarchy of data items.

49
New cards

Replication

Storing copies of data on multiple nodes to improve availability and read performance.

50
New cards

Master-Slave Replication

Model where all writes occur at the master copy and propagate to read-only slave copies.

51
New cards

Master-Master Replication

Model permitting writes at any replica, requiring conflict resolution to reconcile versions.

52
New cards

Horizontal Scalability

Ability to increase system capacity by adding more nodes (scale-out).

53
New cards

Vertical Scalability

Increasing capacity by upgrading existing hardware resources (scale-up).

54
New cards

Shard

Horizontal partition of a dataset distributed across nodes for load balancing.

55
New cards

Shard Key

Field whose value determines the shard on which a document or record is stored.

56
New cards

Eventual Consistency

Weak consistency model where replicas converge to the same state if no new updates occur.

57
New cards

CAP Theorem

Principle stating a distributed system cannot simultaneously guarantee Consistency, Availability, and Partition tolerance.

58
New cards

Consistency (CAP)

All nodes see the same data at the same time after a write completes.

59
New cards

Availability (CAP)

Every request receives a response—success or failure—without guarantee of latest data.

60
New cards

Partition Tolerance

System continues to operate despite network partitions separating nodes.

61
New cards

Document Store

NOSQL database that stores self-describing documents (e.g., JSON) accessed by document id.

62
New cards

Key-Value Store

NOSQL model storing (key, value) pairs for fast lookup by unique key.

63
New cards

Column-Family (Wide Column) Store

NOSQL system that groups columns into families and stores them separately; supports sparse rows and versioning.

64
New cards

Graph Database

Database that represents data as nodes and relationships, enabling graph traversal queries.

65
New cards

MongoDB

Popular open-source document store using BSON, replica sets, and sharding.

66
New cards

DynamoDB

Amazon cloud key-value store offering hash and range keys, auto-scaling, and eventual consistency.

67
New cards

BigTable

Google’s proprietary wide-column store underpinning services like Gmail and Maps.

68
New cards

HBase

Apache open-source wide-column store modeled after BigTable and built on Hadoop HDFS.

69
New cards

Cassandra

Distributed NOSQL database blending key-value and column-family features with tunable consistency.

70
New cards

Redis

In-memory key-value database supporting persistence, replication, and rich data structures.

71
New cards

Voldemort

Open-source key-value store using consistent hashing, versioning with vector clocks, and eventual consistency.

72
New cards

Replica Set (MongoDB)

Group of MongoDB nodes with one primary and multiple secondary copies for high availability.

73
New cards

Consistent Hashing

Data distribution technique that evenly maps keys to nodes and minimizes reallocation when nodes join or leave.

74
New cards

Vector Clock

Metadata list tracking causality among versions in distributed version control.

75
New cards

JSON

Lightweight text format for structured data, widely used in NOSQL document stores.

76
New cards

BSON

Binary JSON format used internally by MongoDB to store documents efficiently.