100% found this document useful (2 votes)
97 views10 pages

How Distributed Computing Systems Are Going To Be Evolved in Future and Explain It Briefly Mentioning

Distributed computing systems have evolved significantly to improve applications through better services, reliability, and lower costs. Future distributed systems will integrate more emerging technologies like cloud computing, support mobile devices and codes, and form worldwide networks of smart communicating devices. Transaction management is essential in distributed platforms to ensure data integrity and consistency across nodes. It defines transaction boundaries and handles committing or rolling back data through coordination between nodes.

Uploaded by

Matwos Arega
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
100% found this document useful (2 votes)
97 views10 pages

How Distributed Computing Systems Are Going To Be Evolved in Future and Explain It Briefly Mentioning

Distributed computing systems have evolved significantly to improve applications through better services, reliability, and lower costs. Future distributed systems will integrate more emerging technologies like cloud computing, support mobile devices and codes, and form worldwide networks of smart communicating devices. Transaction management is essential in distributed platforms to ensure data integrity and consistency across nodes. It defines transaction boundaries and handles committing or rolling back data through coordination between nodes.

Uploaded by

Matwos Arega
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 10

1.

How distributed computing systems are going to be evolved in future and explain it
briefly mentioning/citing with proper references.
. A distributed system is a collection of multiple autonomous computing elements that
appears to its users as a single comprehensible system (van Steen & Tanenbaum,
2016).The ultimate goal of distributed computing is to maximize performance by
connecting users and IT resources in a cost-effective, transparent and reliable manner.
The present computing paradigm is not scalable since it depends on "shared memory",
yet most physical systems work with message passing, so to gain progress you need to
convince people to surrender one for the other. You can bring down the baron the
progress by making Simultaneous Multiple processing work as a programming paradigm
on the top of message passing. Because of the quick advancement in PC equipment,
software, web, sensor networks, portable device communications, and interactive media
advances, distributed computing systems have evolved radically to improve and grow
various applications with better nature of administrations and lower cost, particularly
those involving human factors ( Yau Stephen, 2011). Besides reliability, performance and
availability, many other attributes, such as security, privacy, trustworthiness, situation
awareness, flexibility and rapid development of various applications, have also become
important. Distributed Computing System will serve and evolved in the long run. With
the rapid development of various emerging distributed computing technologies such as
Web services, Grid computing, and Cloud computing, computer networks become the
integrant of the next generation distributed computing systems. Therefore, integration of
networkinganddistributedcomputingsystemsbecomesanimportantresearchproblemfor
building the next-generation high performance distributed information infrastructure. In
the near future, distributed application frame works will support mobile code, multimedia
data streams, user and device mobility, and spontaneous networking (Coulouris, George
& Dollimore, J. & Kindberg, 2000). Looking further into the future, essential techniques
of distributed systems will be incorporated in to an emerging new area ,envisioning
billions of communicating smart devices forming a world-wide distributed computing
system several orders of magnitude larger than today’s Internet.

2. Write limitations of following technologies a.XML b. SOA c. SOAP d. Spring


a. Limitation of XML
 XML -•XML is not optimized for access speed. XML documents are meant to be
completely loaded, and then used as a data source.
 XML is not compact. There is no official scheme for compressing XML.
 Many kinds of data are not suited for embedded markup. XML is most useful for text data
with a hierarchical structure.

 XML syntax is redundant or large relative to binary representation of similar data


especially with tabular data.
 The redundancy may affect application efficiency through higher storage, transmission
and processing cost.
 XML syntax is verbose especially for human readers, relative to other alternatives text
based data transmission format.
 The hierarchical models for representation is limited In comparison to an object –oriented
graph .
 Expressing overlapping (nonhierarchical) node relationship requires extra effort.
 XML name spaces are problematic to use and name space support can be difficult to
correctly implement in an XML parser.

 XML does not try to be the solution to every problem. There are some things it just
cannot do well, and it would be foolish to try to force it to do them. The foremost
requirement of XML is that it be universally accessible, a lowest common denominator
for applications. This necessarily throws out many optimizations that are necessary in
some situations.

 XML is not optimized for access speed. XML documents are meant to be completely
loaded, and then used as a data source. The parser is required to do a syntax check every
time it reads in the markup. In contrast, modern databases are optimized for quick data
lookups and updates.

 XML is not compact. There is no official scheme for compressing XML. XML parsers
expect uncompressed text. You either have to put up with large text files, or you have to
create a complex mechanism for compressing and decompressing on the fly, which will
add to your processing overhead. Most proprietary applications, like Microsoft Word and
Adobe Frame Maker, save data in a binary format by default, saving disk space and
perhaps speeding up file transfers. (HTTP offers compression for transmission, which
helps reduce this cost.)
 Many kinds of data are not suited for embedded markup. XML is most useful for text
data with a hierarchical structure. It does not offer much for binary data. For example,
raster graphic images are long streams of binary data, unreadable to anyone until passed.

b. Limitation of SOA.
 ncrease overhead 
 complex service management 
 high investment cost
Service Oriented Architecture (SOA), is most frequently used term, but people do not have
deep knowledge that what Service Oriented Architecture actually is. They get confused and
relate it with cloud computing. In the last few years, cloud computing has grown into one of the
emerging technologies in IT industry. The cloud computing is dynamically scalable resources,
where SOA is the concept of loosely coupled services. Each service is independent of the other;
together they can form a complete system. This paper gives an overview of cloud computing and
SOA and also proposes a solution that SOA should be merged with cloud to eliminate the SOA
limitations. Combining cloud with SOA will enhance the availability and reliability of SOA and
will reduce its messaging overhead.
C. Limitation of SOAP
SOAP does not mandate an underlying transport protocol, but HTTP has emerged as the most
widely used one for SOAP. Since SOAP can combine the strengths of XML and HTTP, it is an
attractive candidate for Grid communication. A common trade-off in computing is between the
needs of universality and high performance.

 SOAP’s relied on HTTP for transport of XML data in the version 1.0 of its
specification.  
 HTTP requires a stateless request/response architecture that is not appropriate under all
circumstances.  While one can work around the state problem it requires additional
coding.
 All SOAP data is serialized and passed by value and currently there is no provision for
passing data by reference.  This could lead to synchronization problems if multiple copies
of the same object are being passed at the same time.
 SOAP is a protocol, not a system, it does not address security.  While it is very desirable
to bypass the firewall woes experienced by competing distributed architectures, it is
imperative that the security concerns around SOAP be resolved before it can be expected
to gain predominance in the marketplace.

 D. Limitation of JAXB

JAXB-JAXB cannot un mar shall XML into instances of my existing Java classes.
Unmarshalling only produces instances of JAXB-generated "content classes".
JAXB cannot unmarshall XML into instances of my existing Java classes. Unmarshalling only
produces instances of JAXB-generated "content classes".Granted, unmarshalling XML into
JAXB content classes, and then mapping these content classes into my own classes, may be a
little more elegant than our current method of just walking the DOM hierarchy.

3. Explain working principles of 2 phase locking and 3 phase locking

. 2-phase locking:
According to the two-phase locking protocol, a transaction handles its locks in two distinct,
consecutive phases during the transaction's execution: Expanding phase (aka Growing phase):
locks are acquired and no locks are released (the number of locks can only increase)

(i) It is a concurrency control method which divides the execution phase of a transaction into
three parts.

(ii) There are two phases:

(a) Growing Phase


⇒ Transaction may obtain locks.

⇒ Transaction may not release locks.

(b) Shrinking phase


⇒ Transaction may release locks.

⇒ Transaction may not obtain locks.

Disadvantages:
⇒ Performance Issues.

⇒ State Inconsistency

3-Phase locking:

(i) It is designed as a non-blocking protocol as a contrary to the 2PC.

(ii) A new phase is introduced, known as pre-commit phase, in between the voting phase and
global decision phase.

Disadvantages

(i) Multiple site failures.


4. Describe the essentiality of transaction management and explain
how transaction management works in distributed platforms.

Most of the time developers give little importance to transaction management. As a result,
lots of code has to be reworked later or a developer implements transaction management
without knowing how it actually works or what aspect needs to be used in their scenario.

An important aspect of transaction management is defining the right transaction boundary,


when should a transaction start, when should it end, when data should be committed in DB
and when it should be rolled back (in the case of exception).

The most important aspect for developers is to understand how to implement transaction
management in an application, in the best way. So now let's explore different ways.

Ways of Managing Transactions

A transaction can be managed in the following ways:

1. Programmatically manage by writing custom code

This is the legacy way of managing transaction.

EntityManagerFactory factory =
Persistence.createEntityManagerFactory("PERSISTENCE_UNIT_NAME"); EntityManager
entityManager = entityManagerFactory.createEntityManager(); Transaction transaction =
entityManager.getTransaction() try { transaction.begin(); someBusinessCode();
transaction.commit(); } catch(Exception ex) { transaction.rollback(); throw ex; }

Pros:

The scope of the transaction is very clear in the code.

Cons:

It's repetitive and error-prone.

Any error can have a very high impact.

A lot of boilerplate needs to be written and if you want to call another method from this
method then again you need to manage it in the code.

2. Use Spring to manage the transaction

Spring supports two types of transaction management:


Programmatic transaction management: This means that you have to manage the transaction
with the help of programming. That gives you extreme flexibility, but it is difficult to
maintain.

Declarative transaction management: This means you separate transaction management from
the business code. You only use annotations or XML-based configuration to manage the
transactions.
5. What are different simulation/emulation frameworks available for distributed
computing platforms to simulate and compare and contrast its capabilities?
The different types of simulation frameworks are as follows.
 (1). SimGrid is meant for distributed systems and grid computing. It studies
algorithms on distributed application.
 2. Buyya et al. made CloudSim for working on cloud computing experiments. It
supports simulation of cloud environments and also helps in the simulation of many
data centers.
 (3) TeachCloud was made for teaching purposes. It adds a GUI with many new
features.
 Simulation is when you are replicating, by the means of software, the general behavior of
a system starting from a conceptual model.
 Emulation is when you are replicating, in a different system, how the original system
actually internally works considering each function and their relations.

In other words:

 Simulation is based on a software implementation of a model where the internal functions


of the original systems are not taken into consideration (for example a "flight simulator"
does not have any "component" of an actual aircraft).
 Emulation is a replica of the internal system functions on a different host (for example on
a Mac OS X I can write a software emulator of a Windows OS where a Win program can
run). Emulators can also be strictly hardware-based and are normally based on a partial or
complete "reverse engineering" phases.

6. Write different approaches to achieve high performance in


distributed environments.
Distributed environments are characterized by sharing of resources including software,
within a network of computers.
Distributed environments are widely used in networks like the internet, intranet,
telecommunications, and cellular phone networks and so on.
One approach used to overcome these delays is replication wherein a replica of data is
maintained near to clients so that travel distances can be minimized.  
Cluster computing, Grid Computing and Cloud Computing are the main approaches used
for performance enhancement.
Cluster Computing refers to a number of servers working together to increase
availability.
In Grid computing, computers in a network work together on a common task, working
as a supercomputer.
In simplest of terms, Cloud computing is delivering services like servers, storage,
database, networking over the internet. This makes the resources more flexible and access
is faster.
7. Explain major distributed platform areas and their algorithm strengths and
weakness
Distributed platforms are an area of computer science which studies distributed systems.
It is a system whose parts are located on varied computer networks; they coordinate and
communicate their individual processes by exchanging messages with one another.
All the components work with each another so that they can reach a common goal. The
three outstanding characteristics of distributed systems include independent components
failure, components concurrency and lack of a global clock.
The algorithms of this type of system include client-server, three-tier, n-tier and peer-to-
peer.
 The strengths of major distributed platforms include
(i) Economics,
(ii) Inherent distribution
(iii) Incremental growth
(iv) Speed
(v) Reliability.
 The weaknesses of the system are
(i) Network
(ii) Security
(iii) Software
(iv) More component failure.
8. Explain major distributed platform areas and its algorithm strengths
and weakness
Clock synchronization is a topic in computer science and engineering
that aims to coordinate otherwise independent clocks. Even when
initially set accurately, real clocks will differ after some amount of time
due to clock drift, caused by clocks counting time at slightly different
rates.
The Importance of Accurate Time on Computer Networks. The
synchronization of time on computers and networks is often vitally
important. Without it, the time on individual computers will slowly drift
away from each other at varying degrees until potentially each has a
significantly different time.

Assignment questions for M.Sc Second Year First Semester Students


Course: Distributed Systems: Submission Date : Jan
10 2019. [email protected], sub:Name/id/Msc/tveti
8. Write different clock synchronization and leadership algorithms for
distributed platforms.
9. Write a short note on evolution of distributed programming with proper
references. 10. Describe the current limitations and Strengths of leading
distributed computing platforms with proper references.

1. How distributed computing systems are going to be evolved in


future and explain it briefly mentioning/citing with proper
references.
The current computing/software paradigm isn’t scalable since it
relies on “shared memory”, but most physical systems work on
message passing, so to make progress you have to persuade
folks to give up one for the other. You can lower the bar on the
transition by making SMP work as a programming paradigm on
top of message passing -
2.Write limitations of following technologies   a.XML  b. SOA   c.
SOAP    d. RESTful  
 Service Oriented Architecture (SOA), is most frequently used
term, but people do not have deep knowledge that what Service
Oriented Architecture actually is. They get confused and relate it
with cloud computing. In the last few years, cloud computing has
grown into one of the emerging technologies in IT industry. The
cloud computing is dynamically scalable resources, where SOA is
the concept of loosely coupled services. Each service is
independent of the other; together they can form a complete
system. This paper gives an overview of cloud computing and
SOA and also proposes a solution that SOA should be merged
with cloud to eliminate the SOA limitations. Combining cloud with
SOA will enhance the availability and reliability of SOA and will
reduce its messaging overhead.
Read more on Brainly.in - brainly.in/question/7334417#readmore
3. Explain working principles of 2 phase locking and 3 phase
locking
4. Describe the essentiality of transaction management and
explain how transaction management works in distributed
platforms.
5. What are different simulation/emulation frameworks available
for distributed computing platforms to simulate, compare and
contrast its capabilities.
6. Write different approaches to achieve high performance in
distributed environments.
7. Explain major distributed platform areas and its algorithm
strengths and weakness
8. Write different clock synchronization and leadership algorithms
for distributed platforms.  
9. Write a short note on evolution of distributed programming with
proper references.
10. Describe the current limitations and Strengths of leading
distributed computing platforms with proper references.
Explanation:
2.

You might also like