7suitablity of DB Functionality
7suitablity of DB Functionality
7suitablity of DB Functionality
Requirements Analysis
The process of deciphering the requirements that have been gathered is called requirements analysis.
Supposing that all business and system requirements have been completely defined; it is time to start
modeling the database. However, before modeling and design begin, requirements analysis must first occur.
Requirements analysis is the process of analyzing the business and system requirements that have been
established. Requirements analysis is a sort of evaluation of the work that took place during the analysis
phase (information gathering). Different parties should be involved in the requirements analysis process. As
stated before, the end user and customer (they are sometimes the same individual) should have continual
input in the development process. Management and members of the development team also play a role
during requirements analysis.
The customer and end user are offered the chance to provide input by interviews and end-user feedback
sessions that are administered by members of the development team. The customer should verify that all
needs of the business have been considered, as the end user should verify that the needs of the information
system have been properly converted from the needs of the business.
Members of the development team have deliverables that must be turned in to their supervisor or the team
leader. The team leader is responsible for insuring that all objectives have been met within the scope of the
work has been assigned to the team. The team leader also has deliverables that are passed up to the project
lead, who passes deliverables up to management.
The project lead determines if the objectives have been met for the project from an overall perspective.
Management ensures that the objectives of the project have been met as promised to the customer.
Understanding what you want from a system, before you create it.
We have a solution and intend to help those who are planning to document the existing legacy systems in
order to properly maintain, transform or migrate the legacy environment using latest technology.
Systems may have from dozens to thousands of requirements. The process whereby requirements are
Gathered, defined and described can be very simple, or very complex, based on the system under
Investigation. However the simple answer to all is to document the necessary.
So is your legacy application documentation non-existent or out dated? Is it becoming more and more
difficult to enhance your system or answer audit questions given the lack of documentation? Well often we
ignore these and it results in software that is difficult to use, fall short of expectations and or are expensive
due to extensive rework.
We are here ready to fill the gap and provide you with the necessary tools and know-how to generate
complete and accurate documentation, which will ease your life and the corporate pressure mounting.
Database Scalability
Scalability is the capability of a system, network, or process to handle a growing amount of work, or its potential to
be enlarged to accommodate that growth.
Scalability means moving from a small scale database to a large scale database which can be addressed by
scaling out or by scaling up. The most scalable database will be one with a simplified schema, well-crafted
set-based code, excellent indexing, and minimal concurrency conflicts. When these four levels are all
optimized, we can then focus on the advanced scalability technologies.
There are two kinds of scalability: vertical and horizontal. Vertical scaling is just adding more capacity to a single
machine. Virtually every database product is vertically scalable to the extent that they can make good use of more
CPU cores[1], RAM, and disk space. With a horizontally scalable system, it's possible to add capacity by adding more
machines. By far, most database products are not horizontally scalable.
Scalability means the ability to expand the computer resources to handle the exponential growth of work. It
refers to the system’s capacity to handle an increase in load by increasing the total output when resources are
added. Database scalability means the ability of a system’s database to scale up or down as per the
requirement. If the database isn’t scalable, then the processes can slow down or even fail which can be quite
detrimental to the business operations. Further, it enables the database to grow to a larger size to support
more transactions as the volume of business and/or customer count grows.
There are two types of database scalability :
It refers to the process of adding more physical resources such as memory, storage and CPU to the existing
database server for improving the performance. Vertical scaling helps in upgrading the capacity of the
existing database server. It results in a robust system. Some of its pros include:
Cons of Scaling up
There is a greater risk of hardware failure which can cause bigger outages
Limited scope of upgradeability in the future
Severe vendor lock-in
The overall cost of implementing is really expensive
When you add more servers with less RAM and processors, it is known as horizontal scaling. It can also be
defined as the ability to increase the capacity by connecting multiple software or hardware entities in such a
manner that they function as a single logical unit. It is cheaper as a whole and it can literally scale infinitely,
however, there are some limits imposed by software or other attributes of an environment’s infrastructure.
When the servers are clustered, the original server is scaled out horizontally. If a cluster requires more
resources to improve its performance and provide high availability, then the administrator can scale-out by
adding more servers to the cluster.
Pros of Scaling-out
Cons of Scaling-out
Scaling out is not a new concept but it has gained momentum as the storage startups create new structures
that leverage the power of modern x86 servers. This addresses various limitations of the older scale-up
architectures. However, there are some risks of this model. Each of the x86 servers is a failure domain that
doesn’t’t exist in a scale-up environment, which is usually handled by the layout of data on the array, where
the copies of data are kept on at least two nodes. Another risk of scaling-out is that upgrading the nodes is
quite complex and if you want to roll out new software to a hundred nodes, it becomes quite a tedious task.
Database scalability helps in eliminating performance bottlenecks. Understand your company’s scalability
needs and implement the same. It is critical that you the weigh the pros and cons of both vertical and
horizontal scaling before you decide on what to implement. What works for other companies may not work
Database replication
In environment where the database administrator has to manage more than one Server, the DBA will have to
distribute data from one Server to another Server, or another RDBMS. There are several reasons why a DBA
might want to replicate data. Some of them include:
Fault tolerance/disaster recovery
Application requirements
Performance gains
Data distribution
Server clustering
Clustering is a technology that provides automatic failover. Failover clusters configure multiple servers that
share a single disk subsystem into a single virtual server, which provides a seamless switch from one
physical server to another in case of a server fault. Clustering involves sharing a database, SQL Server, or
resource between nodes. Clustering involves grouping two or more servers (called nodes) together to act as a
single virtual server.
Clustering is not a data distribution technology, rather a fault-tolerant solution designed to minimize
downtime or provide high availability. The nodes share resources among themselves.
The project report is a document, which gives an account of the project proposal to ascertain the prospects of the
proposed plan/activity. The project report contains detailed information about: Land & building required.
Manufacturing Capacity per annum. Manufacturing Process