Beruflich Dokumente
Kultur Dokumente
RDBMS
A relational database is a database that conforms to relational model theory. The software used to manage relational database is called a relational database management system.
A relation is defined as a set of tuples that have the same attributes. An attribute is a specification that defines a property of an object. Collection of related attributes in a relation is a tuple.
DATABASE
Database contains one or more relations. A database is an organized collection of data, today typically in digital form. Databases are usually too expensive. Thus at any point in time most of their content resides in nonvolatile storage. Even if for operational reason very large portions of them reside in volatile storage.
The content resides in file which is non volatile which cannot be used for efficient retrieval and management. For efficient retrieval and management, databases may store data in many data structure such as B+ Trees, Hash Tables and Heaps.
This is a relation. This structure is not permanent. All the data are stored only in files, for user convenience a relation is created.
INTERNAL OF DB
Linked lists forms the basis for the internal design of database. The structure of the attributes differ from one to another to link all these we require Heterogeneous Linked Lists. Heterogeneous Linked List is a linked list datastructure that is capable of storing data of different structures. void pointer is basically used in these types of linked list as we are not sure of which type of data needs to be stored. Void pointer is capable of storing pointer to any type as it is a generic pointer type.
INVERTED FILE
inverted index (inverted file) is an index data structure storing a mapping from content, such as words or numbers, to its locations in a database file, or in a document or a set of documents. The purpose of an inverted index is to allow fast searches, which is used in DBMS for query processing.
A SAMPLE DB DESIGN
All the tables in a database are stored in files and it is loaded into memory for efficient manipulation and retrieval. A relation contains the set of tuples of same attributes.
Attributes can be dynamically included as well as deleted. So the tuple cannot be a node with multiple data. Each attributes forms a node.
Database Name
Pointer to Relation
Value
Table Name
No of attributes in a tuple
Pointer to Pointer to last attribute first attribute of last tuple of first tuple
Row-ID
Table Name
DATABASE SECURITY
Database Security - protection from malicious attempts to steal (view) or modify data.
Authentication
User connects to the RDBMS
Authorization
User gets access to the database or database schema objects to perform certain actions, based on the set of privileges assigned to the user.
Auditing
For monitoring suspicious (and otherwise) activity.
ENCRYPTION
Encryption provides an additional security layer, protecting the data from unauthorized viewing. Even if access to the database is obtained, it will not be easy to decipher encrypted data into a human readable form.
PHYSICAL/OS SECURITY
Physical level
SECURITY (CONT.)
unauthorized reading of
messages Masquerading:
pretending
to be an authorized user or legitimate site, or sending messages supposedly from authorized users
NETWORK SECURITY
Must prevent person-in-the-middle attacks Encrypting messages alone doesnt solve this problem More on this in next slide
INJECTION ATTACKS
Attacks targeting the database servers through malicious SQL queries is collectively known as injection attacks
THANK U