CSCI 365 – Introduction to Large Scale Computing
-
Upload
amethyst-fry -
Category
Documents
-
view
42 -
download
0
description
Transcript of CSCI 365 – Introduction to Large Scale Computing
Introductions
• Name• Year• Major• Why you are taking this course? Acceptable
answers:– I am interested in the subject...– I needed to fill an upper-level elective...– My advisor told me to take the course...
Large Scale Computing
• Developing “really big” applications• Focused on highly available, transaction
processing systems• Applications support or solve complex
problems• Technologies:– Mainframes (IBM System Z, HP NonStop)– Distributed / cloud
Capabilities of a Large Scale System
• Large scale transaction processing– Thousands of transactions per second
• Support thousands of users and programs• Simultaneously access and manage shared
resources• Database storage in Terabytes• Large bandwidth communications
About Me
• Widener Computer Science graduate• Helped setup the initial large scale course at
Widener in participation with the IBM academic initiative
• 6+ years experience in large scale application development at JPMorgan Chase
• Currently in the Mortgage Banking line of business
Credit Card Processing System
• What does a credit card processing system do?– Authorizations: what happens when you swipe– Statements: transaction history, rewards– Customer & account system of record– Interact with network (Visa, MasterCard, acquirers)
• Stats:– 150MM accounts– 20MM transactions per day (peak 600TPS)– Response time under 200ms
Course Objectives
• Understand key concepts required for large scale application development – regardless of technology
• Describe programs from an “application architecture” perspective
• Gain real world insight into the use of computer science concepts
Course Objectives cont’
• Understand the difference in creating applications which run on a PC, web-based applications, and large scale applications
• Become fluent in TLAs / buzzwords
Course Topics
1. System architecture overview2. Introduction to COBOL and JCL3. Data organization and access methods4. Application architecture (SDLC)5. Databases: relational vs. hierarchical6. Transaction processing7. High availability8. Security
Course Format
• Lectures– Review key concepts– Applied and conceptual topics
• Labs– Hands on mainframe experience (see next slide)– Application development assignments
• Online– Utilize and contribute to our course wiki– largescalecomputing.wikispaces.com
Hands on Lab Experience
• Lab exercises will be completed on an IBM z9 mainframe at Marist College– Made available through the IBM academic
initiative• We use a terminal emulator to connect to the
system from either the classroom or your personal computer
Course Wiki
• Wiki contents– Course info (lecture slides, labs, schedule, etc)– General large scale computing information
• Students are expected to utilize the wiki and become active contributors
Course Grading
• 5% lab 1• 20% lab 2• 20% lab 3• 20% exams (2)• 5% lab presentation• 20% final exam• 10% participation
What is a Data Set?
• Z/OS files are called data sets– A data set is a collection of logically related data
records stored on disk– Before data can be written to a data set, it must
be allocated– A data set can contain:• Source program• Macros• Data records used by a program
Types of Data Sets
• There are two basic types of data sets:– Sequential data set• Data stored in a single piece of allocated disk space
– Partitioned data set (PDS)• Data can be sub-divided into multiple individual chunks
or files (members)
12345678901234567890123456789012345678901234567890.
...
Sequential Partitioned
123456
Members
Data Set Naming Conventions
• Sample data set name:KC02124.LAB1.COBOL
• High Level Qualifier: username or catalog• User Determined Qualifier: what this data relates to• Type: what type of data is contained (similar to a file
extension)
High Level Qualifier Type
User Determined Qualifier
Data Set Naming Conventions cont’
• Maximum of 22 name segments (qualifiers)– Level qualifiers separated by ‘.’
• Each level qualifier:– 1 to 8 characters– First character must be alphabetical (A-Z) or
special (@#$)– Remaining: alphabetical, numeric (0-9), or hyphen– Upper case only (not case sensitive)
• Example: KC02124.CSCI365.LAB1.COBOL
PDS Naming Conventions
• Same rules as sequential data sets• Need to specify a member name within the
data set:
KC02124.LAB1.COBOL(HELLO)
KC02124.LAB1.COBOL(FUBAR)
123456
Sequential vs. Partitioned
• Typically, we will use the different data set types as follows:– Sequential: raw data files– PDS: COBOL source / executables, JCL, etc
Physical Data Storage on Z/OS
• Data is stored on a Direct Access Storage Device (DASD)– Disk– Magnetic tape– Optical media
• When you hear ‘DASD’ you should think ‘disk’• Used for storing the OS, data sets, databases,
etc
EBCDIC
• IBM systems since the S/360 use the Extended Binary Coded Decimal Interchange character set
• Developed before ASCII and is also an 8 bit character set
• Z/OS also supports ASCII and UNICODE for web / Java use
Catalogs
• A catalog associates a data set with the volume on which it is located
• Locating a data set on a catalog requires:– Data set name– Volume name– Unit (volume device type)
Z/OS UNIX File System
• Z/OS UNIX System Services (USS) allows Z/OS to access UNIX files
• Follows UNIX standard directory / file structure
• We will not be using USS in this course
How do we Interact with Z/OS?
• TSO– Allows users to log on to Z/OS and use a limited
set of basic commands – This is called using TSO in native mode– Think ‘command line’ interface
• ISPF– Menu structure which sits on top of TSO and
provides a simpler interface for accessing commonly used TSO functions
TSO Overview
• TSO stands for Time Sharing Option• Allows users to create an interactive session
with Z/OS• Basic command prompt
Lab Pre-Tasks
• Create a login and request to be a member of our wiki:– largescalecomputing.wikispaces.com
• Receive your TSO userid– Do not forget your ID!