Decision Making Concepts

Decision-making is a cognitive process that results in the selection of a course of action among several alternative scenarios.

Decision-making is a daily activity for any human being. There is no exception about that. When it comes to business organizations, decision-making is a habit and a process as well.

Effective and successful decisions result in profits, while unsuccessful ones cause losses. Therefore, corporate decision-making is the most critical process in any organization.

In a decision-making process, we choose one course of action from a few possible alternatives. In the process of decision-making, we may use many tools, techniques, and perceptions.

In addition, we may make our own private decisions or may prefer a collective decision.

Usually, decision-making is hard. Majority of corporate decisions involve some level of dissatisfaction or conflict with another party.

Decision-Making Process

Following are the important steps of the decision-making process. Each step may be supported by different tools and techniques.

Step 1: Identification of the Purpose of the Decision

In this step, the problem is thoroughly analyzed. There are a couple of questions one should ask when it comes to identifying the purpose of the decision.

  • What exactly is the problem?
  • Why the problem should be solved?
  • Who are the affected parties of the problem?
  • Does the problem have a deadline or a specific time-line?

Step 2: Information Gathering

A problem of an organization will have many stakeholders. In addition, there can be dozens of factors involved and affected by the problem.

In the process of solving the problem, you will have to gather as much as information related to the factors and stakeholders involved in the problem. For the process of information gathering, tools such as ‘Check Sheets’ can be effectively used.

Step 3: Principles for Judging the Alternatives

In this step, the baseline criteria for judging the alternatives should be set up. When it comes to defining the criteria, organizational goals as well as the corporate culture should be taken into consideration.

As an example, profit is one of the main concerns in every decision making process. Companies usually do not make decisions that reduce profits, unless it is an exceptional case. Likewise, baseline principles should be identified related to the problem in hand.

Step 4: Brainstorm and Analyze the Choices

For this step, brainstorming to list down all the ideas is the best option. Before the idea generation step, it is vital to understand the causes of the problem and prioritization of causes.

For this, you can make use of Cause-and-Effect diagrams and Pareto Chart tool. Cause-and-Effect diagram helps you to identify all possible causes of the problem and Pareto chart helps you to prioritize and identify the causes with the highest effect.

Then, you can move on generating all possible solutions (alternatives) for the problem in hand.

Step 5: Evaluation of Alternatives

Use your judgment principles and decision-making criteria to evaluate each alternative. In this step, experience and effectiveness of the judgment principles come into play. You need to compare each alternative for their positives and negatives.

Step 6: Select the Best Alternative

Once you go through from Step 1 to Step 5, this step is easy. In addition, the selection of the best alternative is an informed decision since you have already followed a methodology to derive and select the best alternative.

Step 7: Execute the decision

Convert your decision into a plan or a sequence of activities. Execute your plan by yourself or with the help of subordinates.

Step 8: Evaluate the Results

Evaluate the outcome of your decision. See whether there is anything you should learn and then correct in future decision making. This is one of the best practices that will improve your decision-making skills.

Process and Modeling in Decision-Making

There are two basic models in decision-making:

  • Rational models
  • Normative model

(i) Rational models

The rational models are based on cognitive judgments and help in selecting the most logical and sensible alternative. Examples of such models include – decision matrix analysis, Pugh matrix, SWOT analysis, Pareto analysis and decision trees, selection matrix, etc.

A rational decision making model takes the following steps −

  • Identifying the problem,
  • Identifying the important criteria for the process and the result,
  • Considering all possible solutions,
  • Calculating the consequences of all solutions and comparing the probability of satisfying the criteria,
  • Selecting the best option.

(ii) Normative model

The normative model of decision-making considers constraints that may arise in making decisions, such as time, complexity, uncertainty, and inadequacy of resources.

According to this model, decision-making is characterized by −

  • Limited information processing – A person can manage only a limited amount of information.
  • Judgmental heuristics – A person may use shortcuts to simplify the decision making process.
  • Satisfying – A person may choose a solution that is just “good enough”.

Dynamic Decision-Making

Dynamic decision-making (DDM) is synergetic decision-making involving interdependent systems, in an environment that changes over time either due to the previous actions of the decision-maker or due to events that are outside of the control of the decision-maker.

These decision-makings are more complex and real-time.

Dynamic decision-making involves observing how people used their experience to control the system’s dynamics and noting down the best decisions taken thereon.

Sensitivity Analysis

Sensitivity analysis is a technique used for distributing the uncertainty in the output of a mathematical model or a system to different sources of uncertainty in its inputs.

From business decision perspective, the sensitivity analysis helps an analyst to identify cost drivers as well as other quantities to make an informed decision. If a particular quantity has no bearing on a decision or prediction, then the conditions relating to quantity could be eliminated, thus simplifying the decision making process.

Sensitivity analysis also helps in some other situations, like −

  • Resource optimization
  • Future data collections
  • Identifying critical assumptions
  • To optimize the tolerance of manufactured parts

Static and Dynamic Models

Static models

  • Show the value of various attributes in a balanced system.
  • Work best in static systems.
  • Do not take into consideration the time-based variances.
  • Do not work well in real-time systems however, it may work in a dynamic system being in equilibrium
  • Involve less data.
  • Are easy to analyze.
  • Produce faster results.

Dynamic models

  • Consider the change in data values over time.
  • Consider effect of system behavior over time.
  • Re-calculate equations as time changes.
  • Can be applied only in dynamic systems.

Simulation Techniques

Simulation is a technique that imitates the operation of a real-world process or system over time. Simulation techniques can be used to assist management decision making, where analytical methods are either not available or cannot be applied.

Some of the typical business problem areas where simulation techniques are used are –

  • Inventory control
  • Queuing problem
  • Production planning

Operations Research Techniques

Operational Research (OR) includes a wide range of problem-solving techniques involving various advanced analytical models and methods applied. It helps in efficient and improved decision-making.

It encompasses techniques such as simulation, mathematical optimization, queuing theory, stochastic-process models, econometric methods, data envelopment analysis, neural networks, expert systems, decision analysis, and the analytic hierarchy process.

OR techniques describe a system by constructing its mathematical models.

Heuristic Programming

Heuristic programming refers to a branch of artificial intelligence. It consists of programs that are self-learning in nature.

However, these programs are not optimal in nature, as they are experience-based techniques for problem solving.

Most basic heuristic programs would be based on pure ‘trial-error’ methods.

Heuristics take a ‘guess’ approach to problem solving, yielding a ‘good enough’ answer, rather than finding a ‘best possible’ solution.

Group Decision-Making

In group decision-making, various individuals in a group take part in collaborative decision-making.

Group Decision Support System (GDSS) is a decision support system that provides support in decision making by a group of people. It facilitates the free flow and exchange of ideas and information among the group members. Decisions are made with a higher degree of consensus and agreement resulting in a dramatically higher likelihood of implementation.

Following are the available types of computer based GDSSs −

(i) Decision Network

This type helps the participants to communicate with each other through a network or through a central database. Application software may use commonly shared models to provide support.

(ii) Decision Room

Participants are located at one place, i.e. the decision room. The purpose of this is to enhance participant’s interactions and decision-making within a fixed period of time using a facilitator.

(iii) Teleconferencing

Groups are composed of members or sub groups that are geographically dispersed; teleconferencing provides interactive connection between two or more decision rooms. This interaction will involve transmission of computerized and audio visual information.

MIS as Technique for Programmed Decision

A programmed decision is used to solve routine, repetitive but complex problems. These techniques are also called as Quantitative Techniques. The managers working at lower-level of management make these decisions.

Various Approaches or Techniques for making programmed decisions are:

  1. Linear Programming

Linear Programming is a quantitative technique. It is used to decide how to distribute the limited resources for achieving the objectives. Here, linear, means the relationship between variables, and programming means taking decisions systematically. Linear programming is used when two or more activities are competing for limited resources. For e.g. product mix decisions, inventory management decisions, etc. Linear programing is used for Agriculture, Industry, Contract biding and Evaluation of tenders.

  1. Decision Tree

A decision tree is a diagram which shows all the possible alternatives of a decision. All this information can be seen at one glance. It is also easy to understand. A decision tree is like a horizontal tree. The base of the tree is called the Decision Point. From this point, the different alternatives and sub-alternatives are shown as branches and sub-branches. The manager must study all the alternatives very carefully and select the best alternative.

  1. Game Theory

A game is a situation involving at least two people. Each persons decision is based on what he expects the other to do. Game theory is used for deciding about competitive pricing. For e.g. A company may increase the price of its product when it feels that the competitor may also increase the price. For e.g. Pepsi will increase its price if it feels that Coca Cola will also increase its price. Here, both decisions- makers adapt to each other’s decisions.

  1. Simulation

Simulation technique is used to decide about complex problems. The effect of the decision is observed in a simulated situation and not in a real situation. For e.g. A company can find out the effectiveness of its new advertisement by first showing it to few people before telecasting it on TV.

  1. Queueing Theory

This technique is used to find solutions to the waiting list problems in case of airline reservations, railway reservations, college admissions, etc. Queueing theory helps to find out the optimum number of service facilities required and the cost of these services. For e.g. A transport company may introduce more vehicles to carry the passengers in the waiting list. This will prevent the passengers from going to the competitor’s company.

  1. Network Techniques

Managers use network techniques like PERT (Program Evaluation Review Technique) and CPM (Critical Path Method) for complex projects, where many activities have to be completed. With the help of these techniques, complex projects can be completed as per the schedule. Network techniques save time and cost.

  1. Probability Decision Theory

Probability Decision theory is based on the assumption that the future is uncertain. There is a chance that a certain event may or may not take place. Based on available data and subjective judgement of the manager, various probabilities are assigned (given) to alternative courses of action (decision). The likely / possible outcomes of different alternatives are evaluated, and the most likely alternative is selected.

  1. Payoff Matrix

Payoff matrix is a statistical technique, which helps managers to choose the best alternative. A payoff is the return or reward for selecting the best alternative. The best alternative can be a combination of many alternatives or a single alternative. For e.g. A manager may decide to increase sales and profit by increasing advertising, improving quality of the product, reducing the price, etc. Each alternative or a combination of alternatives may provide an expected reward.

Database Concepts

A database intends to have a collection of data stored together to serve multiple applications as possible. Hence a database is often conceived of as a repository of information needed for running certain functions in a corporation or organization. Such a database would permit not only the retrieval of data but also the continuous modification of data needed for control of operations. It may be possible to search the database to obtain answers to queries or information for planning purposes.

Purpose of Database

A database should be a repository of data needed for an organization’s data processing. That data should be accurate, private, and protected from damage. It should be accurate so that diverse applications with different data requirements can employ the data. Different application programmers and various end-users have different views upon data, which must be derived from a common overall data structure. Their methods of searching and accessing of data will be different.

Advantage of Using Database

  • Database minimizes data redundancy to a great extent.
  • The database can control the inconsistency of data to a large extent.
  • Sharing of data is also possible using the database.
  • Database enforce standards.
  • The use of Databases can ensure data security.
  • Integrity can be managed using the database.

Various Levels of Database Implementation

The database is implemented through three general levels. These levels are:

  • Internal Level or Physical level
  • Conceptual Level
  • External Level or View Level

The Concept of Data Independence

As the database may be viewed through three levels of abstraction, any change at any level can affect other levels’ schemas. Since the database keeps on growing, then there may be frequent changes at times. This should not lead to redesigning and re-implementation of the database. The concepts of data independence prove beneficial in such types of contexts.

  • Physical data independence
  • Logical data independence

Basic Terminologies Related to Database and SQL

(i) Relation

In general, a relation is a table, i.e., data is arranged in rows and columns. A relation has the following properties:

  • In any given column of a table, all the items are of the same kind, whereas items in different columns may not be of the same kind.
  • For a row, each column must have an atomic value, and also for a row, a column cannot have more than one value.
  • All rows of a relation are distinct.
  • The ordering of rows in a relationship is immaterial.
  • The column of a relation are assigned distinct names, and the ordering of these columns is immaterial.

(ii) Tuple

The rows of tables in a relationship are generally termed as Tuples.

(iii) Attributes

The columns or fields of a table is termed as Attributes.

(iv) Degree

The number of attributes in a relation determines the degree of relation.  A relation having three attributes is said to have a relation of degree 3.

(v) Cardinality: The number of tuples or rows in a relation is termed as cardinality.

Type of Databases

Databases are structured collections of data used to store, retrieve, and manage information efficiently. They are essential in modern computing, supporting applications in business, healthcare, finance, and more. Different types of databases cater to various needs, ranging from structured tabular data to unstructured multimedia content.

  • Relational Database (RDBMS)

Relational Database stores data in structured tables with predefined relationships between them. Each table consists of rows (records) and columns (attributes), and data is accessed using Structured Query Language (SQL). Relational databases ensure data integrity, normalization, and consistency, making them ideal for applications requiring structured data storage, such as banking, inventory management, and enterprise resource planning (ERP) systems. Popular relational databases include MySQL, PostgreSQL, Microsoft SQL Server, and Oracle Database. However, they may struggle with handling unstructured or semi-structured data, requiring additional tools for scalability and performance optimization.

  • NoSQL Database

NoSQL (Not Only SQL) databases are designed for scalability and flexibility, handling unstructured and semi-structured data. NoSQL databases do not use fixed schemas or tables; instead, they follow different data models such as key-value stores, document stores, column-family stores, and graph databases. These databases are widely used in big data applications, real-time analytics, social media platforms, and IoT. Popular NoSQL databases include MongoDB (document-based), Cassandra (column-family), Redis (key-value), and Neo4j (graph-based). They offer high availability and horizontal scalability but may lack ACID (Atomicity, Consistency, Isolation, Durability) compliance found in relational databases.

  • Hierarchical Database

Hierarchical Database organizes data in a tree-like structure, where each record has a parent-child relationship. This model is efficient for fast data retrieval but can be rigid due to its strict hierarchy. Commonly used in legacy systems, telecommunications, and geographical information systems (GIS), hierarchical databases work well when data relationships are well-defined. IBM’s Information Management System (IMS) is a well-known hierarchical database. However, its inflexibility and difficulty in modifying hierarchical structures make it less suitable for modern, dynamic applications. Navigating complex relationships in hierarchical models can be challenging, requiring specific querying techniques like XPath in XML databases.

  • Network Database

Network Database extends the hierarchical model by allowing multiple parent-child relationships, forming a graph-like structure. This improves flexibility by enabling many-to-many relationships between records. Network databases are used in supply chain management, airline reservation systems, and financial record-keeping. The CODASYL (Conference on Data Systems Languages) database model is a well-known implementation. While faster than relational databases in certain scenarios, network databases require complex navigation methods like pointers and set relationships. Modern graph databases, such as Neo4j, have largely replaced traditional network databases, offering better querying capabilities using graph traversal algorithms.

  • Object-Oriented Database (OODBMS)

An Object-Oriented Database (OODBMS) integrates database capabilities with object-oriented programming (OOP) principles, allowing data to be stored as objects. This model is ideal for applications that use complex data types, multimedia files, and real-world objects, such as computer-aided design (CAD), engineering simulations, and AI-driven applications. Unlike relational databases, OODBMS supports inheritance, encapsulation, and polymorphism, making it more aligned with modern programming paradigms. Popular object-oriented databases include db4o and ObjectDB. However, OODBMS adoption is lower due to its complexity, lack of standardization, and limited compatibility with SQL-based systems.

  • Graph Database

Graph Database is designed to handle data with complex relationships using nodes (entities) and edges (connections). Unlike traditional relational databases, graph databases efficiently represent and query interconnected data, making them ideal for social networks, fraud detection, recommendation engines, and knowledge graphs. Neo4j, Amazon Neptune, and ArangoDB are popular graph databases that support graph traversal algorithms like Dijkstra’s shortest path. They excel at handling dynamic and interconnected datasets but may require specialized query languages like Cypher instead of standard SQL. Their scalability depends on graph size, and managing large graphs can be computationally expensive.

  • Time-Series Database

Time-Series Database (TSDB) is optimized for storing and analyzing time-stamped data, such as sensor readings, financial market data, and IoT device logs. Unlike relational databases, TSDBs efficiently handle high-ingestion rates and time-based queries, enabling real-time analytics and anomaly detection. Popular time-series databases include InfluxDB, TimescaleDB, and OpenTSDB. They offer fast retrieval of historical data, downsampling, and efficient indexing mechanisms. However, their focus on time-stamped data limits their use in general-purpose applications. They are widely used in stock market analysis, predictive maintenance, climate monitoring, and healthcare (e.g., ECG data storage and analysis).

  • Cloud Database

Cloud Database is hosted on a cloud computing platform, offering on-demand scalability, high availability, and managed infrastructure. Cloud databases eliminate the need for on-premise hardware, reducing maintenance costs and operational complexity. They can be relational (SQL-based) or NoSQL-based, depending on the application’s needs. Examples include Amazon RDS (Relational), Google Cloud Spanner (Hybrid SQL-NoSQL), and Firebase (NoSQL Document Store). Cloud databases enable global accessibility, automated backups, and seamless integration with AI and analytics tools. However, concerns about data security, vendor lock-in, and latency exist, especially when handling sensitive enterprise data.

Database Design

Database design is the organization of data according to a database model. The designer determines what data must be stored and how the data elements interrelate. With this information, they can begin to fit the data to the database model. Database management system manages the data accordingly.

Database design involves classifying data and identifying interrelationships. This theoretical representation of the data is called an ontology. The ontology is the theory behind the database’s design.

A design process suggestion for Microsoft Access

(i) Determine the purpose of the database

This helps prepare for the remaining steps.

(ii) Find and organize the information required

Gather all of the types of information to record in the database, such as product name and order number.

(iii) Divide the information into tables

Divide information items into major entities or subjects, such as Products or Orders. Each subject then becomes a table.

(iv) Turn information items into columns

Decide what information needs to be stored in each table. Each item becomes a field, and is displayed as a column in the table. For example, an Employees table might include fields such as Last Name and Hire Date.

(v) Specify primary keys

Choose each table’s primary key. The primary key is a column, or a set of columns, that is used to uniquely identify each row. An example might be Product ID or Order ID.

(vi) Set up the table relationships

Look at each table and decide how the data in one table is related to the data in other tables. Add fields to tables or create new tables to clarify the relationships, as necessary.

(vii) Refine the design

Analyze the design for errors. Create tables and add a few records of sample data. Check if results come from the tables as expected. Make adjustments to the design, as needed.

(viii) Apply the normalization rules

Apply the data normalization rules to see if tables are structured correctly. Make adjustments to the tables, as needed.

Determining data to be stored

In a majority of cases, a person who is doing the design of a database is a person with expertise in the area of database design, rather than expertise in the domain from which the data to be stored is drawn e.g. financial information, biological information etc. Therefore, the data to be stored in the database must be determined in cooperation with a person who does have expertise in that domain, and who is aware of what data must be stored within the system.

This process is one which is generally considered part of requirements analysis, and requires skill on the part of the database designer to elicit the needed information from those with the domain knowledge. This is because those with the necessary domain knowledge frequently cannot express clearly what their system requirements for the database are as they are unaccustomed to thinking in terms of the discrete data elements which must be stored. Data to be stored can be determined by Requirement Specification.

Determining data relationships

Once a database designer is aware of the data which is to be stored within the database, they must then determine where dependency is within the data. Sometimes when data is changed you can be changing other data that is not visible. For example, in a list of names and addresses, assuming a situation where multiple people can have the same address, but one person cannot have more than one address, the address is dependent upon the name. When provided a name and the list the address can be uniquely determined; however, the inverse does not hold – when given an address and the list, a name cannot be uniquely determined because multiple people can reside at an address. Because an address is determined by a name, an address is considered dependent on a name.

(NOTE: A common misconception is that the relational model is so called because of the stating of relationships between data elements therein. This is not true. The relational model is so named because it is based upon the mathematical structures known as relations.)

Logically structuring data

Once the relationships and dependencies amongst the various pieces of information have been determined, it is possible to arrange the data into a logical structure which can then be mapped into the storage objects supported by the database management system. In the case of relational databases the storage objects are tables which store data in rows and columns. In an Object database the storage objects correspond directly to the objects used by the Object-oriented programming language used to write the applications that will manage and access the data. The relationships may be defined as attributes of the object classes involved or as methods that operate on the object classes.

The way this mapping is generally performed is such that each set of related data which depends upon a single object, whether real or abstract, is placed in a table. Relationships between these dependent objects is then stored as links between the various objects.

Each table may represent an implementation of either a logical object or a relationship joining one or more instances of one or more logical objects. Relationships between tables may then be stored as links connecting child tables with parents. Since complex logical relationships are themselves tables they will probably have links to more than one parent.

Relational Database Management System (RDBMS)

A relational database management system (RDBMS) is a collection of programs and capabilities that enable IT teams and others to create, update, administer and otherwise interact with a relational database. RDBMS store data in the form of tables, with most commercial relational database management systems using Structured Query Language (SQL) to access the database. However, since SQL was invented after the initial development of the relational model, it is not necessary for RDBMS use.

The RDBMS is the most popular database system among organizations across the world. It provides a dependable method of storing and retrieving large amounts of data while offering a combination of system performance and ease of implementation.

RDBMS vs. DBMS

In general, databases store sets of data that can be queried for use in other applications. A database management system supports the development, administration and use of database platforms.

An RDBMS is a type of database management system (DBMS) that stores data in a row-based table structure which connects related data elements. An RDBMS includes functions that maintain the security, accuracy, integrity and consistency of the data. This is different than the file storage used in a DBMS.

Other differences between database management systems and relational database management systems include:

  • Number of allowed users. While a DBMS can only accept one user at a time, an RDBMS can operate with multiple users.
  • Hardware and software requirements. A DBMS needs less software and hardware than an RDBMS.
  • Amount of data. RDBMSes can handle any amount of data, from small to large, while a DBMS can only manage small amounts.
  • Database structure. In a DBMS, data is kept in a hierarchical form, whereas an RDBMS utilizes a table where the headers are used as column names and the rows contain the corresponding values.
  • ACID implementation. DBMSes do not use the atomicity, consistency, isolation and durability (ACID) model for storing data. On the other hand, RDBMSes base the structure of their data on the ACID model to ensure consistency.
  • Distributed databases. While an RDBMS offers complete support for distributed databases, a DBMS will not provide support.
  • Types of programs managed. While an RDBMS helps manage the relationships between its incorporated tables of data, a DBMS focuses on maintaining databases that are present within the computer network and system hard disks.
  • Support of database normalization. An RDBMS can be normalized, but a DBMS cannot.

Features of relational database management systems

Elements of the relational database management system that overarch the basic relational database are so intrinsic to operations that it is hard to dissociate the two in practice.

The most basic RDBMS functions are related to create, read, update and delete operations — collectively known as CRUD. They form the foundation of a well-organized system that promotes consistent treatment of data.

The RDBMS typically provides data dictionaries and metadata collections that are useful in data handling. These programmatically support well-defined data structures and relationships. Data storage management is a common capability of the RDBMS, and this has come to be defined by data objects that range from binary large object — or blob — strings to stored procedures. Data objects like this extend the scope of basic relational database operations and can be handled in a variety of ways in different RDBMS.

The most common means of data access for the RDBMS is SQL. Its main language components comprise data manipulation language and data definition language statements. Extensions are available for development efforts that pair SQL use with common programming languages, such as the Common Business-Oriented Language (COBOL), Java and .NET.

RDBMS use complex algorithms that support multiple concurrent user access to the database while maintaining data integrity. Security management, which enforces policy-based access, is yet another overlay service that the RDBMS provides for the basic database as it is used in enterprise settings.

RDBMS support the work of database administrators (DBAs) who must manage and monitor database activity. Utilities help automate data loading and database backup. RDBMS manage log files that track system performance based on selected operational parameters. This enables measurement of database usage, capacity and performance, particularly query performance. RDBMS provide graphical interfaces that help DBAs visualize database activity.

While not limited solely to the RDBMS, ACID compliance is an attribute of relational technology that has proved important in enterprise computing. These capabilities have particularly suited RDBMS for handling business transactions.

As RDBMS have matured, they have achieved increasingly higher levels of query optimization, and they have become key parts of reporting, analytics and data warehousing applications for businesses as well. RDBMS are intrinsic to operations of a variety of enterprise applications and are at the center of most master data management systems.

How RDBMS works?

As mentioned before, an RDBMS will store data in the form of a table. Each system will have varying numbers of tables with each table possessing its own unique primary key. The primary key is then used to identify each table.

Within the table are rows and columns. The rows are known as records or horizontal entities; they contain the information for the individual entry. The columns are known as vertical entities and possess information about the specific field.

Before creating these tables, the RDBMS must check the following constraints:

  • Primary keys: This identifies each row in the table. One table can only contain one primary key. The key must be unique and without null values.
  • Foreign keys: This is used to link two tables. The foreign key is kept in one table and refers to the primary key associated with another table.
  • Not null: This ensures that every column does not have a null value, such as an empty cell.
  • Check: This confirms that each entry in a column or row satisfies a precise condition and that every column holds unique data.
  • Data integrity: The integrity of the data must be confirmed before the data is created.

Assuring the integrity of data includes several specific tests, including entity, domain, referential and user-defined integrity. Entity integrity confirms that the rows are not duplicated in the table. Domain integrity makes sure that data is entered into the table based on specific conditions, such as file format or range of values. Referential integrity ensures that any row that is re-linked to a different table cannot be deleted. Finally, user-defined integrity confirms that the table will satisfy all user-defined conditions.

Advantages of relational database management system

The use of an RDBMS can be beneficial to most organizations; the systematic view of raw data helps companies better understand and execute the information while enhancing the decision-making process. The use of tables to store data also improves the security of information stored in the databases. Users are able to customize access and set barriers to limit the content that is made available. This feature makes the RDBMS particularly useful to companies in which the manager decides what data is provided to employees and customers.

Furthermore, RDBMS make it easy to add new data to the system or alter existing tables while ensuring consistency with the previously available content.

Other advantages of the RDBMS include:

  • Flexibility: Updating data is more efficient since the changes only need to be made in one place.
  • Maintenance: Database administrators can easily maintain, control and update data in the database. Backups also become easier since automation tools included in the RDBMS automate these tasks.
  • Data structure: The table format used in RDBMS is easy to understand and provides an organized and structural manner through which entries are matched by firing queries.

On the other hand, relational database management systems do not come without their disadvantages. For example, in order to implement an RDBMS, special software must be purchased. This introduces an additional cost for execution. Once the software is obtained, the setup process can be tedious since it requires millions of lines of content to be transferred into the RDBMS tables. This process may require the additional help of a programmer or a team of data entry specialists. Special attention must be paid to the data during entry to ensure sensitive information is not placed into the wrong hands.

Some other drawbacks of the RDBMS include the character limit placed on certain fields in the tables and the inability to fully understand new forms of data — such as complex numbers, designs and images.

Furthermore, while isolated databases can be created using an RDBMS, the process requires large chunks of information to be separated from each other. Connecting these large amounts of data to form the isolated database can be very complicated.

Uses of RDBMS

Relational database management systems are frequently used in disciplines such as manufacturing, human resources and banking. The system is also useful for airlines that need to store ticket service and passenger documentation information as well as universities maintaining student databases.

Some examples of specific systems that use RDBMS include IBM, Oracle, MySQL, Microsoft SQL Server and Postgre SQL.

RDBMS product history

Many vying relational database management systems arose as news spread in the early 1970s of the relational data model. This and related methods were originally theorized by IBM researcher E.F. Codd, who proposed a database schema, or logical organization, that was not directly associated with physical organization, as was common at the time.

Codd’s work was based around a concept of data normalization, which saved file space on storage disk drives at a time when such machinery could be prohibitively expensive for businesses.

File systems and database management systems preceded what could be called the RDBMS era. Such systems ran primarily on mainframe computers. While RDBMS also ran on mainframes — IBM’s DB2 being a pointed example — much of their ascendance in the enterprise was in UNIX midrange computer deployments. The RDBMS was a linchpin in the distributed architecture of client-server computing, which connected pools of stand-alone personal computers to file and database servers.

Numerous RDBMS arose along with the use of client-server computing. Among the competitors were Oracle, Ingres, Informix, Sybase, Unify, Progress and others. Over time, three RDBMS came to dominate in commercial implementations. Oracle, IBM’s DB2 and Microsoft’s SQL Server, which was based on a design originally licensed from Sybase, found considerable favor throughout the client-server computing era, despite repeated challenges by competing technologies.

As the 20th century drew to an end, lower-cost, open source versions of RDBMS began to find use, particularly in web applications.

Eventually, as distributed computing took greater hold, and as cloud architecture became more prominently employed, RDBMS met competition in the form of No SQL systems. Such systems were often specifically designed for massive distribution and high scalability in the cloud, sometimes forgoing SQL-style full consistency for so-called eventual consistency of data. But, even in the most diverse and complex cloud systems, the need for some guaranteed data consistency requires RDBMS to appear in some way, shape or form. Moreover, versions of RDBMS have been significantly restructured for cloud parallelization and replication.

ORACLE

Oracle database (Oracle DB) is a relational database management system (RDBMS) from the Oracle Corporation. Originally developed in 1977 by Lawrence Ellison and other developers, Oracle DB is one of the most trusted and widely-used relational database engines.

The system is built around a relational database framework in which data objects may be directly accessed by users (or an application front end) through structured query language (SQL). Oracle is a fully scalable relational database architecture and is often used by global enterprises, which manage and process data across wide and local area networks. The Oracle database has its own network component to allow communications across networks.

Oracle DB rivals Microsoft’s SQL Server in the enterprise database market. There are other database offerings, but most of these command a tiny market share compared to Oracle DB and SQL Server. Fortunately, the structures of Oracle DB and SQL Server are quite similar, which is a benefit when learning database administration.

Oracle DB runs on most major platforms, including Windows, UNIX, Linux and Mac OS. Different software versions are available, based on requirements and budget. Oracle DB editions are hierarchically broken down as follows:

  • Enterprise Edition: Offers all features, including superior performance and security, and is the most robust
  • Standard Edition: Contains base functionality for users that do not require Enterprise Edition’s robust package
  • Express Edition (XE): The lightweight, free and limited Windows and Linux edition
  • Oracle Lite: For mobile devices

A key feature of Oracle is that its architecture is split between the logical and the physical. This structure means that for large-scale distributed computing, also known as grid computing, the data location is irrelevant and transparent to the user, allowing for a more modular physical structure that can be added to and altered without affecting the activity of the database, its data or users. The sharing of resources in this way allows for very flexible data networks whose capacity can be adjusted up or down to suit demand, without degradation of service. It also allows for a robust system to be devised as there is no single point at which a failure can bring down the database, as the networked schema of the storage resources means that any failure would be local only.

Network Topology

Network Topology refers to the arrangement or layout of different elements (such as nodes, links, and devices) in a computer network. It defines how devices are connected and how data flows within the network. Common network topologies include bus, star, ring, mesh, tree, and hybrid. Each topology has its own advantages and disadvantages in terms of cost, scalability, reliability, and performance. The choice of network topology impacts the network’s efficiency, fault tolerance, and ease of maintenance. A well-designed topology is crucial for optimizing network performance and ensuring smooth communication.

Types of Network Topology:

The arrangement of a network which comprises of nodes and connecting lines via sender and receiver is referred as network topology. The various network topologies are:-

  1. Mesh Topology

In mesh topology, every device is connected to another device via particular channel.

Every device is connected with another via dedicated channels. These channels are known as links.

  • If suppose, N number of devices are connected with each other in mesh topology, then total number of ports that is required by each device is ​ N-1. In the Figure 1, there are 5 devices connected to each other, hence total number of ports required is 4.
  • If suppose, N number of devices are connected with each other in mesh topology, then total number of dedicated links required to connect them is NC2 i.e. N(N-1)/2. In the Figure 1, there are 5 devices connected to each other, hence total number of links required is 5*4/2 = 10.

Advantages of Mesh Topology

  • It is robust.
  • Fault is diagnosed easily. Data is reliable because data is transferred among the devices through dedicated channels or links.
  • Provides security and privacy.

Problems with Mesh Topology

  • Installation and configuration is difficult.
  • Cost of cables are high as bulk wiring is required, hence suitable for less number of devices.
  • Cost of maintenance is high.
  1. Star Topology

​ In star topology, all the devices are connected to a single hub through a cable. This hub is the central node and all others nodes are connected to the central node. The hub can be passive ​in nature i.e. not intelligent hub such as broadcasting devices, at the same time the hub can be intelligent known as active ​hubs. Active hubs have repeaters in them.

A star topology having four systems connected to single point of connection i.e. hub.

Advantages of Star Topology

  • If N devices are connected to each other in star topology, then the number of cables required to connect them is N. So, it is easy to set up.
  • Each device require only 1 port i.e. to connect to the hub.

Problems with Star Topology

  • If the concentrator (hub) on which the whole topology relies fails, the whole system will crash down.
  • Cost of installation is high.
  • Performance is based on the single concentrator i.e. hub.
  1. Bus Topology

​ Bus topology is a network type in which every computer and network device is connected to single cable. It transmits the data from one end to another in single direction. No bi-directional feature is in bus topology.

A bus topology with shared backbone cable. The nodes are connected to the channel via drop lines.

Advantages of Bus Topology

  • If N devices are connected to each other in bus topology, then the number of cables required to connect them is 1 ​which is known as backbone cable and N drop lines are required.
  • Cost of the cable is less as compared to other topology, but it is used to built small networks.

Problems with Bus Topology

  • If the common cable fails, then the whole system will crash down.
  • If the network traffic is heavy, it increases collisions in the network. To avoid this, various protocols are used in MAC layer known as Pure Aloha, Slotted Aloha, CSMA/CD etc.
  1. Ring Topology

​ In this topology, it forms a ring connecting a devices with its exactly two neighbouring devices.

A ring topology comprises of 4 stations connected with each forming a ring..

The following operations takes place in ring topology are:-

One station is known as monitor station which takes all the responsibility to perform the operations.

To transmit the data, station has to hold the token. After the transmission is done, the token is to be released for other stations to use.

When no station is transmitting the data, then the token will circulate in the ring.

There are two types of token release techniques: Early token release releases the token just after the transmitting the data and Delay token release releases the token after the acknowledgement is received from the receiver.

Advantages of Ring topology

  • The possibility of collision is minimum in this type of topology.
  • Cheap to install and expand.

Problems with Ring topology

  • Troubleshooting is difficult in this topology.
  • Addition of stations in between or removal of stations can disturb the whole topology.
  1. Hybrid Topology

​This topology is a collection of two or more topologies which are described above. This is a scalable topology which can be expanded easily. It is reliable one but at the same it is a costly topology.

A hybrid topology which is a combination of ring and star topology.

Local Area Network (LAN)

A local area network (LAN) is a collection of devices connected together in one physical location, such as a building, office, or home. A LAN can be small or large, ranging from a home network with one user to an enterprise network with thousands of users and devices in an office or school.

Regardless of size, a LAN’s single defining characteristic is that it connects devices that are in a single, limited area. In contrast, a wide area network (WAN) or metropolitan area network (MAN) covers larger geographic areas. Some WANs and MANs connect many LANs together.

A LAN comprises cables, access points, switches, routers, and other components that enable devices to connect to internal servers, web servers, and other LANs via wide area networks.

The rise of virtualization has also fueled the development of virtual LANs, which enable network administrators to logically group network nodes and partition their networks without a need for major infrastructure changes.

For example, in an office with multiple departments, such as accounting, IT support, and administration, each department’s computers could be logically connected to the same switch but segmented to behave as if they are separate.

Types of LAN

Ethernet is the most common type of LAN. Different Lan can be differentiated on the behalf of following characteristics.

  • Topology: The topology is the geometric arrangement of a network elements. For example, Network devices can be interconnected in a ring topology or in a bus topology or linear bus.
  • Protocols: It is a guidelines for communicating data between two devices. The protocols also determine type of error and data compression.
  • Media: The cable used in Lan to connect devices are twisted-pair wire, coaxial cables, or fiber optic.

Benefits of a LAN

The advantages of a LAN are the same as those for any group of devices networked together. The devices can use a single Internet connection, share files with one another, print to shared printers, and be accessed and even controlled by one another.

LANs were developed in the 1960s for use by colleges, universities, and research facilities (such as NASA), primarily to connect computers to other computers. It wasn’t until the development of Ethernet technology (1973, at Xerox PARC), its commercialization (1980), and its standardization (1983) that LANs started to be used widely.

While the benefits of having devices connected to a network have always been well understood, it wasn’t until the wide deployment of Wi-Fi technology that LANs became commonplace in nearly every type of environment. Today, not only do businesses and schools use LANs, but also restaurants, coffee shops, stores, and homes.

Wireless connectivity has also greatly expanded the types of devices that can be connected to a LAN. Now, nearly everything imaginable can be “connected,” from PCs, printers, and phones to smart TVs, stereos, speakers, lighting, thermostats, window shades, door locks, security cameras–and even coffeemakers, refrigerators, and toys.

The Evolution of LAN

As there is a tremendous use of PC or desktop computers in the office environment, it became apparent that attaching a printer or FAX machine to each and every computer is highly expensive. Further, copying files to a disk and moving from one computer to another to print the file is also time consuming. Connecting computers so that they could share a printer and share files translated into big savings.

In 1982, 10 Mbps Ethernet cards came into existence and they were very expensive. By 1988, 10 Mbps Ethernet had acceptable performance for large LANs and was still good for small installations. By 1990, large installations were beginning to see congestion. Hence, alternatives to 10 Mbps cards were becoming popular. One of these alternatives was to install a switched architecture, rather than constructing architecture with hubs.

In 1996, 10Mbps switched LANs were providing acceptable service for smaller installations. The awesome technology at this point was 100Mbps shared Ethernet. By 1998 switched 10Mbps Ethernet was common in small LANs and switched 100 Mbps Ethernet was common in large LANs. Large LANs are beginning to see limitations of 100 Mbps when everyone on the LAN starts doing video conferencing.

Now, Gigabyte Ethernet cards are available for sale. The 10 Mbps cards are not used anymore. Now-i-days 10/100, 10/100/1000 auto-sensing cards are available in the market. Everything is moving to dual mode auto-sensing technology. Even though Gigabyte Ethernet is getting more popular now-a-days, Gigabyte LANs are 10 times faster than a 100Mbps LAN. Ethernet was evolved from a protocol called ALOHA. ALOHA was mainly used in packet radio network which communicate using satellites. In brief, an earth station sends some data, as soon as the data is ready it waits for an acknowledgement (ACK). If it fails to get an ACK, it would time out and sends the same thing again. The sender keeps trying until the transmission is successful. The lesson to be learned here is that it is important to limit the number of users on a shared network medium. Traffic analysis can help determine the maximum number of users to ensure a reasonable Quality of Service (QOS).

LAN Advantages and Services

A LAN has the following advantages:

  • They work on higher operating speed than WAN and MAN.
  • They suit the requirements of a specific organization.
  • They are easy to install and maintain.
  • They exist as connected (wired) and wireless configurations.

LAN can provide the following services. They are:

(i) File-based service

Transfer of files from one node to another within the LAN area. For example, in a typical LAN used for local banking, the file containing the detailed transactions of a specific customer is transferred form sever to the client, whenever new transactions are made on behalf of the customer. It also provides efficient ways of storing and retrieving the data. When multiple copies of the same file exist, it provides necessary synchronization in updating the files. LAN also provides backup for the critical data so that safe recovery is possible when a failure occurs. It also provides data encryption facility to control the access to certain data to only selected persons.

(ii) Print services

There can be one or more printers, modems, and fax machines attached to a LAN and used by applications. A number of clients can share these devices. Print services allow many clients to safely share printers and other such devices. All modem LANs provide these services.

(iii) Application-based services

Applications run on a client may require higher computational capabilities. Servers are more powerful than the clients. In a LAN, more than one client can share the computational power of a server. Application servers are good examples for this.

(iv) Mail and message-based services

Electronic-mail is an important service used for exchanging information between people on a network. Mails can be stored or forwarded to another user. Many free mail servers are available on the Internet to provide free mail services to its clients.

(v) Database services

Storing and retrieving of data in databases is another requirement of a client to control and manipulate the data. Database servers are the most popular ones that service the need of clients.

(vi) Distributed data services

When data is distributed, it is possible for more than one client system to share the data. Though the databases appear physically distributed, there is a single logical view given by the database server. There are so many issues involved in sharing a single file by more than one client. Consistency issue is very seriously tackled when updating shared files.

(vii) Remote services

Linking a LAN with a remote computer or a mainframe is another service required. This feature is used to access remote databases available in large mainframes.

Characteristics of a LAN

A LAN can be characterized by means of hardware and software components and a set of protocols.

Hardware components of a LAN are:

  1. The Server

Server is a computer that provides services to other computers (workstations or clients) on the network. The primary goal of a LAN server is data management. It stores, retrieves, and protects the data. A server also sends data to the requesters on the network and also to authorized remote users. The type and configurations needed for the server, depends mainly on the purpose for which the LAN is being constructed. Servers may be classified, based on the type of service they provide. A single server may provide a number of services also. The following are the list of servers categorized, based on the type of service.

(i) File server and disk server

A file server makes the disk storage space (in the order of several Gigabytes), to various client PCs. The file server satisfies the request for data from application programs running in client workstations. It also keeps the consistency of data when more than one client makes simultaneous data requests. In a LAN, working with a file server, all application running in a workstation may request for a file with involving the local operating system. The workstation sends its file request to the server and the server processes the request and sends the required file directly to the workstation.

(ii) Disk servers

Disk servers are similar to file servers. The difference is that, in a file server when an application running in a workstation requests for a specific file, the local operating system, running on the workstation interacts with the file server and gets the information required. In a disk server, the application can directly access the required file without the intervention of the local operating system.

(iii) Database server

These servers are a subset of the file server category. They provide access to huge databases for clients. Database information is stored in hard disk storage or CD ROM or optical disk drives. It contains the DBMS, which is more sophisticated than the basic file I/O access method. DBMS eliminates data redundancy and allows the user, transparent data distribution. The database server extracts only the relevant data and passes it to the requesting client, rather than passing the entire file like a file server.

(iv) Print server

Every LAN has one or more printers shared by all the nodes or workstations. The role of a print server is to collect the information from several workstations, store them on the disk and send it to the printer. This processing is known as print spooling. Print services become a part of the file server nowadays. In many LAN architectures, any PC on the LAN can act as a print server.

(v) Backup server

Such servers provide backup in case the main server fails. Every network must have a back up server to keep all the information safe. Periodically, these servers must be updated so that reliability can be improved.

(vi) Gateway server

A gateway server is used to provide connectivity to other networks. The GIAS (Gateway server of VSNL, India) is a gateway server, which provides connectivity to all other networks on the Internet for the Indian segment of the Internet. A gateway server also provides connectivity to dissimilar networks.

(vii) Communication server

Communication servers are more diverse than the other servers. The main functions of a communication server are linking client workstations on the LAN with mainframe computers, sharing a pool of modems among the client stations, and communicating with other LANs as well.

Examples of the most popular LAN servers are Novell Netware LAN Server, Microsoft Windows NT Server or Windows 2000, IBMOS2 Server, etc.

  1. Workstations

Workstations or nodes are the clients that use the services provided by the network server. Workstations are loaded with special software to interact with the server to access the services. Examples of workstations include the Microsoft Windows NT workstation, Windows 2000 workstation, IBM workstation, Sun workstation, etc.

  1. The Transmission Media for LAN

Various transmission media are used for constructing a LANs. The most popular among them are twisted pair, coaxial cable, or optical fibers. LANs operated with any such transmission media is known as wired LAN. LANs can also be constructed without a transmission media or cable. Such LANs are known as wireless LANs.

  1. Communication Equipments

(i) Repeater

A repeater operates at layer-I. It has just enough intelligence to find out the layer-l incoming signals are and then send out a clean stream of signals built from scratch. Noise is eliminated from the signals in this manner. A repeater has one incoming and one outgoing line. It extends the distance that a signal may be sent over a transmission media.

(ii) Hub

A hub is a multi-port repeater. Any incoming signal is repeated on all other outgoing lines. A hub functions at layer-I.

(iii) Bridge

A bridge has more intelligence than a hub or repeater. This device separates two segments of a single LAN. A bridge operates at layer-2 by looking at the destination address in the frame header. Consulting a table, the bridge will determine if the frame needs to pass on to the other segment. Only certain frames may pass those with the correct MAC address.

(iv) Switch

A switch is a multi-port bridge. It performs its functions at layer two. It looks at MAC layer addresses just like a bridge, consults a table, and determines if a frame needs to be sent on one of the attached lines. Multiple connections can occur through a switch simultaneously as long as they don’t compete for the same line. A switch, just like a bridge, does not divide a LAN into two LANs. It merely reduces unnecessary traffic on LAN segments.

(v) Router

A router is more intelligent than bridges and switches. It functions at layer-3. At layer-2 all incoming frames are checked for errors and then they are delivered to layer-3. A layer-3 datagram has an address that permits it to be sent across internet works (interconnected networks). This requires a single global addressing scheme. The router finds the layer-3 address and consults a table that it keeps. There the router will learn which attached line to send the datagram on. A router provides facilities to the stations on the LAN, to access other networks.

Wide Area Network (WAN)

A WAN is a network that uses various links – private lines, Multiprotocol Label Switching (MPLS), virtual private networks (VPNs), wireless (cellular), the Internet  to connect smaller metropolitan and campus networks in diverse locations into a single, distributed network. The sites they connect could be a few miles apart or halfway around the globe. In an enterprise, the purposes of a WAN could include connecting branch offices or even individual remote workers with headquarters or the data center, in order to share corporate resources and communications.

A wide area network (WAN) is a network that exists over a large-scale geographical area. A WAN connects different smaller networks, including local area networks (LANs) and metro area networks (MANs). This ensures that computers and users in one location can communicate with computers and users in other locations. WAN implementation can be done either with the help of the public transmission system or a private network.

A WAN connects more than one LAN and is used for larger geographical areas. WANs are similar to a banking system, where hundreds of branches in different cities are connected with each other in order to share their official data.

A WAN works in a similar fashion to a LAN, just on a larger scale. Typically, TCP/IP is the protocol used for a WAN in combination with devices such as routers, switches, firewalls and modems.

WAN architecture

Initially, WANs were built with meshed webs of private lines bought from telecommunications carriers, but WAN architectures have advanced to include packet-switched services such as frame relay and ATM as well as MPLS. With these services, a single connection to a site can be connected to many others via switching within service-provider networks. For certain types of traffic, the Internet can also be woven into the mix to provide less expensive WAN connections.

History of WANs

WANs have been around since the early days of computing networks. The first examples of WANs included circuit-switched telephone lines, but advances in technologies now include wireless transmissions and fiber-optic transmissions. Data can also be moved via leased lines, or even via satellite transmission.

As technologies changed, so did transmission rates. The early days of 2400 bps modems evolved to 40 Gbps and 100 Gbps connectivity today. These speed increases have allowed more devices to connect to networks, witnessed by the explosion of computers, phones, tablets and smaller Internet of Things devices.

In addition, speed improvements have allowed applications to utilize larger amounts of bandwidth that can travel across WANs at super-high speed. This has allowed enterprises to implement applications such as videoconferencing and large-file data backup. Nobody would have considered conducting a videoconference across a 28K bps modem, but now workers can sit in a cubicle and participate in a global company meeting via video.

Many WAN links are supplied via carrier services in which customers’ traffic rides over facilities shared by other customers. Customers can also buy dedicated links that nail up circuits point-to-point and are used for just one customer’s traffic. These are typically used for top-priority traffic or delay-sensitive applications that have high-bandwidth needs such as videoconferencing.

Connections between WAN sites may be protected by virtual private networking (VPN) technology that overlays security functions including authentication, encryption, confidentiality and non-repudiation.

WAN Management and optimization

Because data transmission is still reliant on the rules of physics, the greater the distance between two devices, the longer it will take for data to travel between them. The greater the distance, the greater the delay. Network congestion and dropped packets can also introduce performance problems.

Some of this can be addressed using WAN optimization, which makes data transmissions more efficient. This is important because WAN links can be expensive, so technologies have sprung up that reduce the amount of traffic crossing WAN links and ensure that it arrives efficiently. These optimization methods include abbreviating redundant data (known as deduplication), compression, and caching (putting frequently used data closer to the end user).

Traffic can be shaped, giving some applications (such as VoIP) a higher priority over other, less urgent traffic (such as email), which in turn helps improve the overall WAN performance. This can be formalized into quality of service settings that define classes of traffic by the priority each class receives relative to others, the type of WAN connection that each traffic type will travel, and the bandwidth that each receives.

error: Content is protected !!