Database Management Today: New
strategies and Technologies
Dr. S.L.JAYALAKSHMI
Assistant Professor Senior Grade-1
School of Computer Science and Engineering (SCOPE)
VIT University, Chennai Campus
1 18-06-2022
Outline
Database Management Systems (DBMS)
Databases that bridge SQL and NoSQL
Databases on the Cloud
AI in Database Management System
Augmented Database Management
Graph Database
Big Data
An Increased focus on Security
Current landscape for database management systems
Case study
2 18-06-2022
Database Management Systems (DBMS)
Data 18-06-2022
Database
Mini-world
Database management System (DBMS)
3
Basic Definitions
Data
Known facts that can be recorded and have an implicit
meaning.
Image Source: https://dev.to/salonix__/dbms-database-management-system-4mnf 18-06-2022
4
Basic Definitions
Database
• A database is a collection of related data
which represents some aspect of the real
world.
Image Source: https://images.app.goo.gl/SC9RsQtbHKLXfgPy5
5 18-06-2022
Basic Definitions
Image Source: https://images.app.goo.gl/bb5B1huyJH82G1Rk9 Mini-World
6 Some part of the real world about which data is
stored in a database. For example, student grades and
transcripts at a university.
18-06-2022
Basic Definitions
Database Management System
A software package/ system to facilitate the creation and maintenance of a
computerized database.
Image Source: https://images.app.goo.gl/NTjboXo3m5Urojj76 18-06-2022
7
Basics
More specifically, a DBMS is a general purpose software system facilitating
each of the following (with respect to a database):
Definition: specifying data types (and other constraints to which the
data must conform) and data organization
Construction: the process of storing the data on some medium (e.g.,
magnetic disk) that is controlled by the DBMS
Manipulation: querying, updating, report generation
Sharing: allowing multiple users and programs to access the database
"simultaneously"
System protection: preventing database from becoming corrupted
when hardware or software failures occur
Security protection: preventing unauthorized or malicious access to
database
8
Example of a Database
Mini-world for the example:
Part of a UNIVERSITY
environment.
Some mini-world entities:
STUDENTs
COURSEs
SECTIONs (of COURSEs)
(academic) DEPARTMENTs
INSTRUCTORs
9
Example of a Database
Some mini-world relationships:
SECTIONs are of specific COURSEs
STUDENTs take SECTIONs
COURSEs have prerequisite COURSEs
INSTRUCTORs teach SECTIONs
COURSEs are offered by DEPARTMENTs
STUDENTs major in DEPARTMENTs
10
Example of a Database
11
Image Source: Ramez Elmasri and Shamkant B. Navathe
Example of a Database
12
Image Source: Ramez Elmasri and Shamkant B. Navathe
Characteristics of
Database Approach
Self-describing nature of a database system:
A DBMS catalog stores the description of a particular
database (e.g. data structures, types, and constraints)
The description is called meta-data (Data
Dictionary).
This allows the DBMS software to work with different
database applications.
Iinmteagr1veieS3wousrce: https://www.quora.com/How-should-I-write-my-self-description-in-SSB-
Characteristics of Database
Approach
Insulation between programs and data:
Called program-data independence.
Allows changing data structures and storage
organization without having to change the DBMS
access programs.
Imag1e S4ource: https://www.indiamart.com/proddetail/insulation-tape-19584466491.html
Characteristics of Database Approach
Data Abstraction:
A data model is used to hide storage details and present the users with a
conceptual view of the database.
Programs refer to the data model constructs rather than data storage details.
Imag1e5Source: https://www.hitechnectar.com/blogs/data-abstraction-level/
Characteristics of Database Approach
Support of multiple views of the data:
Each user may see a different view of the database,
which describes only the data of interest to that user.
16
Characteristics of Database Approach
Sharing of data and multi-user transaction
processing:
Allowing a set of concurrent users to retrieve from and to
update the database.
Concurrency control within the DBMS guarantees that each
transaction is correctly executed or aborted
Recovery subsystem ensures each completed transaction has its
effect permanently recorded in the database
OLTP (Online Transaction Processing) is a major part of database
applications.This allows hundreds of concurrent transactions to
execute per second.
17
Popular DBMS Software 18-06-2022
MySQL
Microsoft Access
Oracle
PostgreSQL
dBASE
FoxPro
SQLite
IBM DB2
LibreOffice Base
MariaDB
Microsoft SQL Server etc.
18
Applications of DBMS
19 https://images.app.goo.gl/JK7jG7bk7itZ2DBN6 18-06-2022
Types of DBMS
20 18-06-2022
Structured Query Language (SQL)
SQL stands for Structured
Query Language.
Initially it was called as
SEQUEL (Structured Query
English Language)
The ANSI standard language
for the definition and
manipulation of relational
database.
Includes data definition
language (DDL), statements
that specify and modify
database schemas.
Includes a data
manipulation language
(DML), statements that
manipulate database
content.
21 https://images.app.goo.gl/EcKgscYnG1bAKqjD7 18-06-2022
Data Definition (Pillar of database architecture)
Metadata describes data about data.
Metadata clearly explains the low level structure
of data.
Metadata highly dominates while the creation of
database.
22 18-06-2022
DDL, DQL, DML & DCL
Data Definition Language
Data Query Language
Data Manipulation Language
Data Control Language
23 18-06-2022
DDL, DQL, DML & DCL
SQL Commands
DDL DQL DML DCL
CREATE SELECT INSERT GRANT
ALTER UPDATE REVOKE
DROP DELETE
TCL: RENAME
Commit; TRUNCATE
Rollback;
24 18-06-2022
DDL, DQL, DML & DCL
DDL Syntax :
*desc table_name; CREATE CREATE TABLE table_name (
column1 datatype,
ALTER column2 datatype,
DROP column3 datatype,
.... );
ALTER TABLE table_name
ADD column_name datatype;
DROPTABLE table_name;
25 18-06-2022
DDL, DQL, DML & DCL
DDL Syntax :
RENAME ALTER TABLE table_name
RENAME TO new_table_name;
TRUNCATE TABLE table_name;
TRUNCATE
26 18-06-2022
DDL, DQL, DML & DCL
DQL Syntax :
SELECT SELECT column1, column2, ...
FROM table_name;
DML Syntax :
INSERT INSERT INTO TABLE_NAME (column1,
column2, column3,...columnN)]
VALUES (value1, value2,
value3,...valueN);
27 18-06-2022
DDL, DQL, DML & DCL
DML Syntax (Cont.) :
UPDATE UPDATE table_name
SET column1 = value1,
column2 = value2, ...
WHERE condition;
DELETE DELETE FROM table_name
WHERE condition;
28 18-06-2022
DDL, DQL, DML & DCL
DCL Syntax :
GRANT GRANT privilege_name
ON object_name
TO {user_name |PUBLIC |role_name}
[WITH GRANT OPTION];
REVOKE REVOKE privilege_name
ON object_name
FROM {user_name |PUBLIC |role_name}
29 18-06-2022
NoSQL (Not Only SQL)
NoSQL Database is a non-relational Data Management
System, that does not require a fixed schema. It avoids joins,
and is easy to scale.
NoSQL is used for Big data and real-time web apps.
For example, companies like Twitter, Facebook and Google
collect terabytes of user data every single day.
Traditional RDBMS uses SQL syntax to store and retrieve
data for further insights.
Instead, a NoSQL database system encompasses a wide range
of database technologies that can store structured, semi-
structured, unstructured and polymorphic data.
30 18-06-2022
NoSQL (Not Only SQL) 18-06-2022
It falls under four main categories
1. Key-value
2. Document
3. Column oriented
4. Graph
31
Key Value Pair Based
Data is stored in key/value pairs. It KEY VALUE
is designed in such a way to handle Name xyz
lots of data and heavy load. Age 42
occupation Manager
Key-value pair databases store data
as a hash table where each key is 18-06-2022
unique, and the value can be a
JSON, BLOB(Binary Large
Objects), string, etc.
For example, a key-value pair may
contain a key like "Website"
associated with a value like
“Google.com".
32
Document based
Document-Oriented NoSQL DB stores and retrieves data as
a key value pair but the value part is stored as a document.
The document is stored in JSON or XML formats.The value
is understood by the DB and can be queried.
33 18-06-2022
Document based
The document type is mostly used for Content Management
systems(CMS), blogging platforms, real-time analytics & e-
commerce applications. It should not use for complex
transactions which require multiple operations or queries
against varying aggregate structures.
Amazon SimpleDB, CouchDB, MongoDB, Riak, Lotus
Notes, are popular Document oriented DBMS systems.
34 18-06-2022
Column-based
Column-oriented databases work on columns
Every column is treated separately.Values of single column
databases are stored contiguously.
35 18-06-2022
Column-based
They deliver high performance on aggregation queries like
SUM, COUNT, AVG, MIN etc. as the data is readily available
in a column.
Column-based NoSQL databases are widely used to manage
data warehouses, business intelligence, CRM(Customer
Relationship Management), and Library card catalogs,
HBase, Cassandra, Hypertable are NoSQL query examples of
column based database.
36 18-06-2022
Graph-based
A graph type database stores entities as well the relations
amongst those entities.The entity is stored as a node with the
relationship as edges.
An edge gives a relationship between nodes. Every node and
edge has a unique identifier.
37 18-06-2022
Graph-based
Graph base database mostly used for social networks,
logistics, spatial data.
Neo4J, Infinite Graph, OrientDB, FlockDB are some popular
graph-based databases.
38 18-06-2022
CAP THEOREM
What is the CAP Theorem?
CAP theorem is also called brewer's theorem. It states that is
impossible for a distributed data store to offer more than two
out of three guarantees
Consistency
Availability
PartitionTolerance
Eventual Consistency
To have copies of data on multiple machines to get high
availability and scalability.
changes made to any data item on one machine has to be
propagated to other replicas.
39 18-06-2022
SQL Vs NoSQL
40 18-06-2022
SQL Vs NoSQL
41 https://www.guru99.com/nosql-tutorial.html 18-06-2022
SQL Vs NoSQL
42 18-06-2022
43 18-06-2022
SQL vs NoSQL
44 18-06-2022
Comparison of No SQL databases
45 18-06-2022
Databases that bridge between SQL
and NoSQL
NewSQL databases
attempt to provide enterprises with the top benefits of
both relational and NoSQL databases on one platform.
NewSQL databases attempt to combine the data consistency
benefits of traditional relational databases with the scalability of
NoSQL platforms.
46 18-06-2022
Example: NewSQL
Google Cloud Spanner. Google describes Cloud
Spanner as "the only enterprise-grade, globally
distributed and strongly consistent database service
built for the cloud specifically to combine the benefits
of relational database structure with non-relational
horizontal scale.
CockroachDB. Although it may not be the most
endearing product name, many industry experts
include CockroachDB in their lists of leading NewSQL
products. CockroachDB provides ACID-compliant
transactions, automatic sharding and a globally scalable
architecture.
47 18-06-2022
Example: NewSQL
NuoDB. NuoDB is a popular NewSQL product that offers
a distributed database architecture based on its own, SQL-
based ACID-compliant DBMS engine. NuoDB's website
includes a page that provides a well-thought-out decision
tree that will help you choose a DB product based on
application needs.
VoltDB. It is an ACID-compliant, shared-nothing, in-
memory database cluster. It's shared-nothing architecture
means it runs in memory across clusters to enable large
scalability levels.VoltDB is known for its speedy throughput
and was designed to avoid most of the operations that can
drive processing overhead in most relational databases.
48 18-06-2022
Databases on the Cloud
Cloud computing is the delivery of on demand computer
system resources, requiring no active management and
usually includes applications such as storage and processing
power.
49 18-06-2022
Database as a Service (DBaaS)
A DBaaS is a database cloud service that takes over the
management of the underlying infrastructure and resources cloud
databases require.
As the cloud market leaders, AWS, Azure and Google Cloud all
offer DBaaS services in a variety of flavors.
The database as a service AWS offerings include Amazon Relational
Database Service (RDS) and Amazon Aurora.
NoSQL databases such as Hadoop or MongoDB, etc.
Azure database as a services include Azure Database for
MySQL, Azure Database for PostgreSQL, and Azure SQL Database.
Google Cloud offers Cloud SQL and Cloud Spanner for relational
databases and Cloud Bigtable, Cloud Firestore, and more for NoSQL.
50 18-06-2022