Trending December 2023 # Architecture Of Db2 With Brief Explanation # Suggested January 2024 # Top 13 Popular

You are reading the article Architecture Of Db2 With Brief Explanation updated in December 2023 on the website We hope that the information we have shared is helpful to you. If you find the content interesting and meaningful, please share it with your friends and continue to follow and support us for the latest updates. Suggested January 2024 Architecture Of Db2 With Brief Explanation

Introduction to DB2 Architecture

Hadoop, Data Science, Statistics & others

Architecture of DB2

The architecture of DB2 are given below:

1. DB2 Client

The DB2 clients can be either remote application or local applications each of which is linked internally with the client library of DB2. The communication between client and server is made by using different techniques. If the client is local then semaphores and shared memory are used for communication. In the case of remote clients, the communication is carried out by using different protocols like TCP/ IP or named pipes which are also denoted as NPIPE.

2. DB2 Server

The DB2 server consists of different components in which all the activities are controlled by the units called Engine Dispatchable Units that is EDUs. We can observe different components of the DB2 server and the DB2 client-server communications by having a look at the below diagram –

3. Engine Dispatchable Units (EDUs) 4. Subagents

A different set of subagents is used for serving the requests from client application processes. There is a facility and possibility that we can assign multiple subagents provided if the machine which we are using for the DB2 server has multiple processors or the DB2 server internally uses a partitioned database environment. One of the examples, where we can use multiple subagents is symmetric multiprocessing(SMP) which is an environment and the multiple SMP are capable of exploiting multiple processors at the same time.

5. Pooling Algorithm

The pooling algorithm is responsible for managing the agents and subagents that are present inside the DB2 server. This algorithm helps us to minimize the destruction and construction of the EDUs inside DB2 server.

6. Buffer Pool

Buffer pools is the place where the actual data resides. These pools are the part of the memory of our database server which stores the data related to pages of a user, catalog data, and the index data temporarily. There after this data is moved to Hard disks. But initially and while manipulating the data is brought to these pools and modified and manipulated. The buffer pools are regarded as one of the key parameters for measuring the performance of the DB2 server. This is because of the fact that accessing the data from the memory of the buffer pools is much faster and simpler than accessing it from the hard disk.

How quickly can the data inside the DB2 servers can be accessed by the DB2 client side applications depends upon the configurations of the buffer pools as well as other components like page cleaners and the prefetchers.

7. Prefetchers 8. Working of Prefetchers

The client side requests are implemented by prefetchers by using the scatter-read and big-block input operations when the prefetchers become available they bring all the pages which are requested into the buffer pool from the disk. We can also strip the data across the disks provided if we have multiple disks for storing the data. The use of stripping the data helps us and enables the use of prefetchers to retrieve the data simultaneously from multiple disks.

9. Page Cleaners

The working of page cleaners is just the opposite of prefetchers. The responsibility of prefetchers is to move the data to the hard disk from the buffer pool. They work in the background of the EDUs because they are independent of the other agents of the application. The page cleaners are responsible for having the look at which pages are changed and the updated modified pages are written back to the disk. It is the responsibility of the page cleaners to make sure that the required space is available in the buffer pools for the working of the prefetchers. If there were no independent page cleaners and the prefetchers in the DB2 server then the other agents of the application would have to all the operations related to read and write between disk storage and the buffer pool.


The architecture of the DB2 consists of different components. The architecture of the DB2 is mainly divided into the DB2 client and DB2 server. The DB2 server consists of different agents and subagents. The two important components are the prefetchers and the page cleaners which maintain the data in buffer pools for fast and effective retrieval of data.

Recommended Articles

This is a guide to DB2 Architecture. Here we also discuss the introduction and architecture of DB2 along with a detailed explanation. You may also have a look at the following articles to learn more –

You're reading Architecture Of Db2 With Brief Explanation

Neural Architecture Search: The Process Of Automating Architecture

Neural Architecture Search (NAS) has become a popular subject in the area of machine-learning science

Handcrafting neural networks to find the best performing structure has always been a tedious and time-consuming task. Besides, as humans, we naturally tend towards structures that make sense in our point of view, although the most intuitive structures are not always the most performant ones.

Neural Architecture Search

is a subfield of


that aims at replacing such manual designs with something more automatic. Having a way to make

neural networks

design themselves would provide a significant time gain, and would let us discover novel, good performing architectures that would be more adapted to their use-case than the ones we design as humans.

NAS is the process of automating architecture engineering i.e. finding the design of a

machine learning model

. Where it is needed to provide a NAS system with a dataset and a task (classification, regression, etc), it will come up with an architecture. And this architecture will perform best among all other architectures for that given task when trained by the dataset provided. NAS can be seen as a subfield of AutoML and has a significant overlap with hyperparameter optimization. 

Neural architecture search is an aspect of


, along with feature engineering, transfer learning, and hyperparameter optimization. It’s probably the hardest

machine learning

problem currently under active research; even the evaluation of neural architecture search methods is hard. Neural architecture search research can also be expensive and time-consuming. The metric for the search and training time is often given in GPU-days, sometimes thousands of GPU-days. 

Modern deep neural networks sometimes contain several layers of numerous types. Skip connections and sub-modules are also being used to promote model convergence. There is no limit to the space of possible model architectures. Most of the deep neural network structures are currently created based on human experience, requiring a long and tedious trial and error process. NAS tries to detect effective architectures for a specific deep learning problem without human intervention.

Generally, NAS can be categorized into three dimensions- search space, a search strategy, and a performance estimation strategy.

Search Space:

The search space determines which neural architectures to be assessed. Better search space may reduce the complexity of searching for suitable neural architectures. In general, not only a constrained but also flexible search space is needed. Constraints eliminate non-intuitive neural architecture to create a finite space for searching. The search space contains every architecture design (often an infinite number) that can be originated from the NAS approaches.

Performance Estimation Strategy:

It will provide a number that reflects the efficiency of all architectures in the search space. It is usually the accuracy of a model architecture when a reference dataset is trained over a predefined number of epochs followed by testing. The performance estimation technique can also often consider some factors such as the computational difficulty of training or inference. In any case, it’s computationally expensive to assess the performance of architecture.

Search Strategy:

NAS relies on search strategies. It should identify promising architectures for estimating performance and avoid testing of bad architectures. Throughout the following article, we discuss numerous search strategies, including random and grid search, gradient-based strategies, evolutionary algorithms, and reinforcement learning strategies.

There is a need for a way to design controllers that could navigate the search space more intelligently.

Designing the Search Strategy

Most of the work that has gone into neural architecture search has been innovations for this part of the problem that is finding out which optimization methods work best, and how they can be changed or tweaked to make the search process churn out better results faster and with consistent stability. There have been several approaches attempted, including Bayesian optimization, reinforcement learning, neuroevolution, network morphing, and game theory. We will look at all of these approaches one by one.

Reinforcement Learning

Example And Explanation With Excel Template

What is CAPE Ratio?

CAPE Ratio, abbreviated form for Cyclically-Adjusted Price to Earnings Ratio, is used as a valuation tool to measure the relationship between the company’s earnings per share over a period of 10 years and company’s stock price flushing out all the fluctuations which may occur in the company’s profits during various business cycles and different periods and seasons.

Start Your Free Investment Banking Course


The formula for CAPE ratio is:

CAPE Ratio = Stock Price / 10-Years Average Earnings Per Share Adjusted for Inflation


CAPE ratio is considered to be a valuation measure which takes into consideration the effect of a company’s earning over a period of a decade post considering the effect of inflation and its simultaneous relation with that company’s stock price in the market. The utmost important point here is that the CAPE ratio can be also applied to any type of indices to get an idea about whether the market is over-valued or under-valued.

This is also referred to as the Shiller P/E ratio, as it was largely popularized by a professor of Yale University, namely, Robert Shiller.

Example of CAPE Ratio (With Excel Template)

Let’s take an example to understand the calculation in a better manner.

You can download this CAPE Ratio Excel Template here – CAPE Ratio Excel Template

Example #1

Carivacous Ltd is listed in a stock exchange currently trading at $1500 per share. The current year EPS of the company is $125. Below given table provides details of earnings per share (EPS) of the past 10 years pertaining to the stock of Carivacous Ltd. Along with EPS, inflation rates are provided pertaining to the specified years respectively. Calculate the CAPE ratio for Carivacous Ltd.


PE Ratio is calculated using the formula given below

PE Ratio = 1500 / 125

PE Ratio = 12

10-Years Average Earnings Per Share Adjusted for Inflation is calculated as

CAPE Ratio is calculated using the formula given below

CAPE Ratio = Stock Price / 10-Years Average Earnings Per Share Adjusted for Inflation

CAPE Ratio = 1500 / 49.73

CAPE Ratio = 30.16

Thus, it can be seen that although the PE for the stock for the current year is 12, its CAPE ratio is at 30. Alternatively, you can also say that the stock is overvalued.

Example #2

Let us take a different example to understand the valuation aspect of a stock or index. Now, consider that an Index has a PE ratio of, say 20 with a historical PE ratio of 24. Now, post computing the CAPE ratio (as explained in the earlier example), the CAPE ratio for the index stands at 34. Please give an explanation of the valuation of the index.

In the case at hand, it is pertinent to note that the current PE of the Index, 20, is very similar or nearby to its historical PE, which is at 24.

Now, you may note that the historical PE is a formula to calculate average PE of the stock or index over the period of 10 years as a simple average. On the other hand, the CAPE ratio stands at 34, which takes into consideration the inflation and cyclical impact of the EPS over a period of 10 years. Even after such adjusted, the CAPE ratio is fairly higher than the current PE and historical PE, which makes the index quite overvalued and risky to be invested in.

Uses of CAPE Ratio

It is mainly used as a financial tool to analyze the PE ratio of a company or index post considers the impact of cyclical changes in the economy over a period of 10 years.

Apart from being used as a financial tool, the CAPE ratio is used to determine whether the stock of a listed company is over-valued or under-valued, as it is quite similar to the PE ratio.

A consistent analysis of the CAPE ratio will be useful as a tool for analyzing the future trends and patterns of the stock or index, as the case may be.

Below we will learn about the limitation and benefits of CAPE ratio:


Given below are the main benefits of CAPE ratio:

It is a very simple mathematical formula and thus easy to calculate by anyone having a basic knowledge of finance;

Due to the fact that this ratio considers the average value of EPS over a period of time, it balances out the effect of any cyclical returns the company may generate and thus gives a better picture of the earnings by the company;

It takes into consideration the impact of inflation on the economy.

The main concern is that the ratio considers an average of earnings for a period of 10 years. In a practical scenario, there are various changes that a business may undergo in such a long timeframe and thus affecting the way business is being carried on for over the years. In such a situation, it may not be right to compare a business today with what it was a decade ago;

In addition to the above point, it needs to be noted that the law governing the business changes massively over such long timeframe and making an impact of the way business is being carried on;

It may be noted that there are various companies that declare and pay dividends to their shareholders. Ratio is completely independent of this and does not take into account any dividend numbers;

Another point that is important and yet not considered while computing the ratio is that the market keeps fluctuating and so does the demand market of a particular stock.


To conclude the whole discussion, it shall be right to say that the CAPE ratio is a tool or method to measure the valuation aspect of any stock or index. It provides an answer in the form of whether the stock or index is over-valued or under-valued. It takes into consideration the impact from an economics point of view and also of the fact of any cyclical changes which may affect stock or index and thus it a better measure to get an insight about future returns of the stock or index in question.

Recommended Articles

This is a guide to the CAPE Ratio. Here we discuss how to calculate the cape ratio along with practical examples. We also provide a downloadable excel template. You may also look at the following articles to learn more –

Complete Guide On Sql*Plus With Detailed Explanation

Introduction to SQL*Plus

Start Your Free Data Science Course

Hadoop, Data Science, Statistics & others

What Is SQL*Plus?

There are specific categories that SQL_Plus follows in terms of SQL blocks or text, which are as follows:

SQL Statements

Specific environmental configurations involving SET and SHOW with control and monitoring features within them.

PL/SQL blocks

Specific external commands that need to be prefixed something with ! char

All the controls interact with it.

SQL Plus follows

which SQL Plus follows :













































@ at sign

@@ (double at sign)

Use SQL Plus

SQL Plus has a lot of usage for graphical interfaces related to queries for execution; even specific other third-party plugins can also interact for enhancement.

Oracle database users don’t rely much on the SQL Plus-related environment because these third-party plugins have covered most topics.

Oracle has the privilege of using SQL plus scripts for creating simple reports with some simplified hands that need to be updated with every CRON that needs to be manipulated.

Data can be extracted from the text file that is part of SQL*Plus.

How Can I Learn and Guide?

There are various sources to learn SQL plus, but the recommendation is to follow genuine sources with authenticity.

There are specific prerequisites before learning SQL plus, like SQL Plus special keys and their respective keys.

There might be different functioning and keys to the Operating system supporting it.

Original Oracle docs with relevant versions shall be referenced while learning.

Oreilly and other reputed sites can be considered authentic websites for learning SQL.

Many websites can be referenced for research and other learning activities regarding SQL Plus.

Part of SQL Plus

SQL PLUS [ user_name, pass_word, sysadm]: To log in to the database

STARTUP[Parameters_to_pass]: to start the associated database.

HOST [ command_as_parameter]: To enlist the host with the required details and execute the host commands.

SHOW [ALL, ERRORS]: This command in SQL Plus is mainly used for showing SQL* Plus variables for systems or environment settings with manipulation.

CONNECT[Parameters]: For connecting to the database once the connection is established.

SET [ system variables or environmental variable]: This command is mainly used to manipulate the system or ecological variable, which is passed as a parameter for manipulation.

EDIT: This command is used mainly for editing the contents of the SQL buffer or the file used for manipulation.

SAVE: This command is used for saving the contents of the entire SQL buffer to a specific file.

APPEND: This command is used for appending the text to the end of the current line in the SQL buffer.

Windows GUI

Specific licenses are using which SQL Plus Client can be downloaded, and it includes functions for modifying the GUI that can be used in various ways to perform actions.

Download and extract any of the SQL plus clients to specify one SQL* Plus chúng tôi once done, the development related to GUI can be performed, followed by some other processes.

All the Windows GUI development will then be mapped to an oracle database supported for all the CLI-based queries to be executed.

Conclusion Recommended Articles

This is a guide to SQL plus. Here we discuss the categories SQL Plus follows in terms of SQL blocks and the command. You may also have a look at the following articles to learn more –

Know The Top 5 Spark Tools With Detailed Explanation

Introduction to Spark Tools

Spark tools are the software features of the Spark framework used for efficient and scalable data processing for big data analytics. The Spark framework is made available as open-source software under the Apache license. It comprises 5 important data processing tools: GraphX, MLlib, Spark Streaming, Spark SQL, and Spark Core. GraphX is the tool that processes and manages graph data analysis. The MLlib Spark tool is used for implementing machine learning on distributed datasets. At the same time, users utilize Spark Streaming for stream data processing, while Spark SQL serves as the primary tool for structured data analysis. Spark Core tool manages the Resilient data distribution known as RDD.

Start Your Free Data Science Course

Hadoop, Data Science, Statistics & others

Top 5 Spark Tools 1. GraphX Tool

This is the Spark API related to graphs as well as graph-parallel computation. GraphX provides a Resilient Distributed Property Graph, an extension of the Spark RDD.

The form possesses a proliferating collection of graph algorithms and builders to simplify graph analytics activities.

This vital tool develops and manipulates graph data to perform comparative analytics. The former transforms and merges structured data at a very high speed consuming minimum time resources.

Employ the user-friendly Graphical User Interface to pick from a fast-growing collection of algorithms. You can even develop custom algorithms to monitor ETL insights.

The GraphFrames package permits you to perform graph operations on data frames. This includes leveraging the Catalyst optimizer for graph queries. This critical tool possesses a selection of distributed algorithms.

The latter’s purpose is to process graph structures that include an implementation of Google’s highly acclaimed PageRank algorithm. These special algorithms employ Spark Core’s RDD approach to modeling essential data.

2. MLlib Tool

MLlib is a library that contains basic Machine Learning services. The library offers various kinds of Machine Learning algorithms that make possible many operations on data with the object of obtaining meaningful insights.

The Spark platform bundles libraries to apply graph analysis techniques and machine learning to data at scale.

The MLlib tool has a framework for developing machine learning pipelines, enabling simple implementation of transformations, feature extraction, and selections on any particular structured dataset. The former includes rudimentary machine learning, filtering, regression, classification, and clustering.

However, facilities for training deep neural networks and modeling are not available. MLlib supplies robust algorithms and lightning speed to build and maintain machine learning libraries that drive business intelligence.

It also operates natively above Apache Spark, delivering quick and highly scalable machine learning.

3. Spark Streaming Tool

This tool also leverages Spark Core’s speedy scheduling capability to execute streaming analytics. Mini-batches of data are ingested, followed by performing RDD (Resilient Distributed Dataset) transformations on these mini-batches. Spark Streaming enables fault-tolerant stream processing and high throughput of live data streams. The core stream unit is DStream.

The latter is a series of Resilient Distributed Datasets whose function is to process real-time data. This helpful tool extended the Apache Spark paradigm of batch processing into streaming. The Apache Spark API was employed to break down the stream into multiple micro-batches and perform manipulations. Spark Streaming is the engine of robust applications that need real-time data.

The former has the big data platform’s reliable fault tolerance making it extremely attractive for development. Spark Streaming introduces interactive analytics for live data from almost any common repository source.

4. Spark SQL Tool

The platform’s functional programming interface combines with relational processing in this newly introduced module in Spark. There is support for querying data through the Hive Query Language and Standard SQL.

SQL Service

Interpreter and Optimizer

Data Frame API

Data Source API

5. Spark Core Tool

This is the basic building block of the platform. Among other things, it consists of components for running memory operations, scheduling jobs, and others. Core hosts the API containing RDD. The former, GraphX, provides APIs to build and manipulate data in RDD.

The core also provides distributed task dispatching and fundamental I/O functionalities. When benchmarked against Apache Hadoop components, the Spark Application Programming Interface is pretty simple and easy to use for developers.

The API conceals a large part of the complexity involved in a distributed processing engine behind relatively simple method invocations.

Spark operates in a distributed way by merging a driver core process which splits a particular Spark application into multiple tasks and distributes them among numerous methods that perform the job. These particular executions could be scaled up or down depending on the application’s requirements.

All the tools belonging to the Spark ecosystem interact smoothly and run well while consuming minimal overhead. This makes Spark both extremely scalable as well as a very powerful platform. Work is ongoing to improve the tools in terms of both performance and convenient usability.

Recommended Articles

This is a guide to Spark Tools. Here we discuss the basic concept and top 5 Spark Tools namely GraphX, MLlib, Streaming, SQL, and Core. You may also look at the following articles to learn more-

A Quick Glance On The Db2 Isnull

Introduction to DB2 ISNULL

DB2 ISNULL is used to handle the NULL values that might be present in the data or list of values that are specified. When the data is stored in DB2 RDBMS, we use the tables and store the data in rows and columns format. If the NOT NULL constraint on the column is not applied, then the default value that gets inserted in those columns when not specified is the NULL value. While retrieving and displaying the data to the user, it is not good to display the NULL values of certain columns. In that case, we can use the ISNULL function in DB2, which will help us get the first non NULL value from the list of the parameters specified while using it.

Start Your Free Data Science Course

Hadoop, Data Science, Statistics & others


The syntax of the ISNULL function in DB2 is as given below:


In the above syntax, the expr1 is the expression that can be any constant value of even the column’s name whose value you wish to retrieve and check if it contains a NULL value in it.

Expr2 is the value we want to replace the expr1 column if the expr1 contains a NULL value. If the expression evaluates to non-null value first, then the expr2 value is considered the resultant and returned as an output.

Examples of DB2 ISNULL

Given below are the examples of DB2 ISNULL:

Let us firstly consider the use of ISNULL function with the values (NULL, ‘EDUCBA’)



The execution of the above query statement gives the following output as the resultant and gives out the first non-null value from the list of specified values in the ISNULL parameters.


Now, consider that we remove the NULL value from the first place and place the NULL value in the second place. So, the first non-null value from the two parameters will be EDUCBA. Hence, the execution of the following query statement gives out EDUCBA as the output.



The output of the above query statement’s execution is as shown in the below image, which is the same as the previous, one but in this case, the ISNULL function doesn’t go for substituting the expr1 with expr2 for output.


Passing NULL values in both parameters.

If we supply all the parameters as NULL, then it gives out no error without any output. The ISNULL function goes for searching the first non- NULL value and fails in finding the same. Hence it returns no output as the first expression is NULL, and the value with which the expr1 is to replace in case of NULL that is expr2 is also NULL.



Execution of the above statement gives the following output shown in the image.


Use of ISNULL function for substituting the NULL values stored in columns of a table.

If we retrieve the data of the table sales_customers from the database right now by using the following query statement.


SELECT * FROM [Sales_Customers];

Execution of the above statement gives the following result with all the values of the column purchase_date having the value NULL for store_id column having the value of FRUITS in it as shown below.


If we have to replace the value of NULL in the purchase_date column, then we can do that by using the ISNULL function by giving the first argument as the name of the column of purchase_date and then the second argument can be any non-NULL value with which we want to replace the NULL value with. The ISNULL function will go for searching the first non-NULL value; if the column has any date stored in it, then it displays that date else, it goes further to replace that null value stored in the column with the value specified in the second parameter. Suppose that we have to show the default date as “21-03-2023”. We can then use the ISNULL function while retrieving the values of the table by using the following SELECT query statement.


SELECT customer_id, f_name , email_id , mobile_number , purchase_date , store_id , bill_amount , ISNULL(purchase_date,"21-03-2023") FROM [Sales_Customers];

The output of the above query statement is shown below with replacing the values of the purchase date column with null values with the date that we have specified in the last value retrieved in the select query.


We can also make the use of the ISNULL function to replace the column value having NULL in it with some other column value by specifying the column containing NULL values as the first argument and the column with which the value needs to be replaced in the second argument.



The data of the table is as shown below:


SELECT * FROM [workers]


Using the following query statement, we can display the column address2 value in address1 place if it is NULL, as shown below.


SELECT employee_id,f_name, email_id, salary, ISNULL(address1,address2) FROM [workers]



We can use the ISNULL function to handle the NULL values present in the columns of the table or present as literal values. The only difference between ISNULL and COALESCE function is that ISNULL accepts only two parameters while COALESCE accepts the list of expressions for searching a non-NULL value in it.

Recommended Articles

This is a guide to DB2 ISNULL. Here we discuss the introduction and the examples of DB2 ISNULL for a better understanding. You may also have a look at the following articles to learn more –

Update the detailed information about Architecture Of Db2 With Brief Explanation on the website. We hope the article's content will meet your needs, and we will regularly update the information to provide you with the fastest and most accurate information. Have a great day!