Please enable JavaScript.
Coggle requires JavaScript to display documents.
nosql for mere mortals - Coggle Diagram
nosql for mere mortals
Early Database Management Systems before relational databases
Flat File Data Management Systems
Limitations
• It is inefficient to access data in any way other than by the way data is organized in
the file; for example, by customer ID.
Changes to file structure require changes to program
Different kinds of data have different security requirements
Data may be stored in multiple files, making it difficult to maintain consistent sets of
data
is an organized set of data stored on a long-term storage medium such as a disk or,
at the time, magnetic tape
Hierarchical Data Model Systems
pros
work well when the entities you are managing can be organized into parent-child relationships, specifically, one parent to one or more children
limitations
have to duplicate data when a parent needs a node that is already using by another parent
A hierarchy starts with a root node that links to the top layer of data nodes or records
Network Data Management Systems
A network data model is like a hierarchical data model in that it uses links between
records
two essential components
schema
shows which entities can link to other entities.
database itself
pros
allows for multiple parents
can also
represent two customers with two loans without duplicating data
cannot have cycles in the graph
Graphs that have directed edges and no cycles are known
as directed acyclic graphs
cons
a program may need to traverse a large
number of links to get to the node with the needed data
As data models become more complex, the number of links and the length of paths can become substantially longer
Adding nodes to the schema and the database changes the paths that programs
must traverse to get to particular nodes.
nefficient searching
disadvantages
duplicate data
difficulty implementing security
inefficient searching,
difficulty maintaining program
code to access databases
Organization of Relational Database Management Systems (RDMS)
core components
Storage management programs
keep track of the
location of data
optimize the placement of data on disks
compress data to
save storage
make copies of data blocks so data is not lost in case a data block on a
disk goes bad
Memory management programs
responsible for bringing and keeping data in memory as long as it is needed and deleting it when it is no longer needed or to make space for additional data
Data dictionary
Query language