310 likes | 452 Views
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. What is “Large Scale Computing”?.
E N D
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 • System architecture overview • Introduction to COBOL and JCL • Data organization and access methods • Application architecture (SDLC) • Databases: relational vs. hierarchical • Transaction processing • High availability • 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
Lecture 1 Data sets & TSO
Quick Background • IBM mainframe operating system is referred to as ‘Z/OS’
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) Sequential Partitioned 12345678901234567890 1234567890 1234567890 1234567890.... 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!
Lab 1 • Lab 1 is taken from IBM’s ‘Master the Mainframe’ contest • Follow the instructions on the wiki: • http://largescalecomputing.wikispaces.com/Lab1 • Hints: • Return does not equal “CNTL” • Do not forget your password!