lecture 5a: communication and storage it 202—internet applications based on notes developed by...

23
Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

Post on 20-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

Lecture 5A:Communication and Storage

IT 202—Internet ApplicationsBased on notes developed by Morgan Benton

Page 2: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

For Today

Two more valuable resources: Communication Services Data Storage (database) Services

Page 3: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

Three Important Resources

Processing Power

Bandwidth

Storage Space

These three dictate all or most of the infrastructure and design decisions that you will make

Page 4: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

Review

We’ve already covered the use of processing power

In a nutshell processing gets distributed between clients and servers hence the terms: Client-side scripting Server-side scripting

Page 5: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

Communication Services

5 Basic forms of communication: Message Message with multiplexing and queuing Message with (mandatory) reply Conversation Broadcast

Page 6: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

Protocols and Layering

Various technologies, both software and hardware have been developed to achieve the various types of communication services

You’ve probably heard of them, even if you don’t know what they are.

Page 7: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

The Physical Layer

This is the bottom-most layer in the protocol stack and is comprised of actual physical objects that you can touch, like ethernet cables, optical fibers, and other things that carry a signal (including electromagnetic waves)

Page 8: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

The IP Layer—or—Data Link/Network Layer

In this layer, signals on a wire get translated into data and vice versa—hence the name data link

Also this layer handles packaging and addressing

Page 9: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

TCP/UDP—Transport Layer

This layer manages getting the addressed packages (packets) to and from their destinations in an appropriate mannerThis differs according to the needs of the communicationUDP—lossy, used for multimedia streaming, supports RTP, RTSPTCP—lossless, preserves order, supports IIOP, HTTP

Page 10: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

TCP/IP Stack Diagram

Page 11: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

A word about protocols…

There are many, many protocols out there. Each of them is designed for a specific purpose. You can find out a lot about them just by surfing the web and reading tutorials. Or you can sign up for a networking class. I highly recommend that you obtain some familiarity with them.

Page 12: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

Data Storage

The primary question we are concerned with is where our data gets stored.

There are a number of factors which dictate this such as: Amount of data Sensitivity of the data Duration of relevance Ownership Level of the data (individual vs. aggregate)

Page 13: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

DBMS

Data of any significant amount or value is typically stored within a Data Base Management System or DBMSA DBMS can provide: A structured data model Persistence/archiving Transaction support Access control Encapsulation Scalability

Page 14: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

The Relational Model

Data is stored in tablesData in some tables is related to data in other tablesThe goal is to minimize the redundancy of stored data while maximizing the performance of systems that rely on the dataThere is a formalized logic that governs data structures and relationships and operations that can be performed on or between tablesThis logic is defined by SQL

Page 15: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

SQL—Structured Query Language

SQL is a standardized language, that can be used on its own or together with other programming languages to create and manipulate databases

This is a core competency for any networked application developer

Page 16: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

Persistence/Archiving

Frequently it is crucial that organizations maintain very careful records of the transactions that go on within their business

DBMS’s provide a way to store that data and have access to it over long periods of time

An organization’s data archives are frequently one of its most valuable assets

Page 17: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

Transaction Support

Data represent the state of the world

The state of the world keeps changing and databases must help us keep track of that

Most advanced DBMS have transaction support, which means that there are algorithms in place to help prevent the corruption of data, and hence disruptions in the state of our world

Page 18: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

Access Control

Now more than ever it is crucial that we know who has the ability to access data, to read data, write data, change data, or destroy it

DBMS contain structures which allow us to control access to data—this is one of the most important features they provide

Page 19: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

Encapsulation

Some advanced DBMS have algorithms that monitor how data is used and find ways to optimize the way that data is distributed across hosts.

The difference between logical and physical records is important, but complex so can be hidden from the end users using a DBMS

Page 20: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

Scalability

What happens when the size of a database grows from just a few hundred or thousand records, to hundreds of thousands or millions, as can happen when a small business suddenly becomes very successful?

DBMS are designed to allow for such growth in a graceful manner

Page 21: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

XML

XML stands for eXtensible Markup Language

It was designed primarily for data exchange and NOT for display of information on web pages

Page 22: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

XML is:

Text based

Standardized

Universally expressive

Not enough by itself

Largely seen as the replacement for EDI and the key to the interoperability of future systems

Page 23: Lecture 5A: Communication and Storage IT 202—Internet Applications Based on notes developed by Morgan Benton

For Next Time

We will see how to achieve database connectivity for our applications next class

Next week we will cover XML and interoperability—one of the most crucial topics for the future of networked applications