Google Interview Question Preparation
Google Interview Question Preparation
The relational model represents the database as a collection of relations. A relation is nothing
but a table of values. Every row in the table represents a collection of related data values.
These rows in the table denote a real-world entity or relationship.
The table name and column names are helpful to interpret the meaning of values in each row.
The data are represented as a set of relations. In the relational model, data are stored as
tables. However, the physical storage of the data is independent of the way the data are
logically organized.
Attribute: Each column in a Table. Attributes are the properties which define a relation.
e.g., Student_Rollno, NAME,etc.
Tables – In the Relational model the, relations are saved in the table format. It is stored
along with its entities. A table has two properties rows and columns. Rows represent
records and columns represent attributes.
Tuple – It is nothing but a single row of a table, which contains a single record.
Relation Schema: A relation schema represents the name of the relation with its
attributes.
Degree: The total number of attributes which in the relation is called the degree of the
relation.
Cardinality: Total number of rows present in the Table.
Column: The column represents the set of values for a specific attribute.
Relation instance – Relation instance is a finite set of tuples in the RDBMS system.
Relation instances never have duplicate tuples.
Relation key - Every row has one, two or multiple attributes, which is called relation key.
Attribute domain – Every attribute has some pre-defined value and scope which is known
as attribute domain.
Relational Integrity constraints
Relational Integrity constraints is referred to conditions which must be present for a valid
relation. These integrity constraints are derived from the rules in the mini-world that the
database represents.
There are many types of integrity constraints. Constraints on the Relational database
management system is mostly divided into three main categories are:
Domain constraints
Key constraints
Referential integrity constraints
Domain Constraints
Domain constraints can be violated if an attribute value is not appearing in the
corresponding domain or it is not of the appropriate data type.
Domain constraints specify that within each tuple, and the value of each attribute must be
unique. This is specified as data types which include standard data types integers, real
numbers, characters, Booleans, variable length strings, etc.
Example:
Key constraints
An attribute that can uniquely identify a tuple in a relation is called the key of the table.
The value of the attribute for different tuples in the relation has to be unique.
Example:
In the given table, CustomerID is a key attribute of Customer Table. It is most likely to
have a single key for one customer, CustomerID =1 is only for the CustomerName ="
Google".
Example:
Simplicity: A relational data model is simpler than the hierarchical and network model.
Structural Independence: The relational database is only concerned with data and not
with a structure. This can improve the performance of the model.
Easy to use: The relational model is easy as tables consisting of rows and columns is
quite natural and simple to understand
Query capability: It makes possible for a high-level query language like SQL to avoid
complex database navigation.
Data independence: The structure of a database can be changed without having to change
any application.
Scalable: Regarding a number of records, or rows, and the number of fields, a database
should be enlarged to enhance its usability.
Few relational databases have limits on field lengths which can't be exceeded.
Relational databases can sometimes become complex as the amount of data grows, and
the relations between pieces of data become more complicated.
Complex relational database systems may lead to isolated databases where the
information cannot be shared from one system to another.