2006 Shane Gibson
Upcoming SlideShare
Loading in...5

2006 Shane Gibson






Total Views
Views on SlideShare
Embed Views



0 Embeds 0

No embeds



Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

2006 Shane Gibson 2006 Shane Gibson Presentation Transcript

  • SAS Users New Zealand Proudly sponsored by…
  • How to disperse the smoke and smash the mirrors SAS Stored Processes
  • Stored Process in SAS9
    • Before Stored Processes:
      • Difficult to share or re-use SAS programs
      • Limited ability to publish dynamic content
      • Often limited to the SAS user community
    • After Stored Processes:
      • Dynamic SAS content accessible to the enterprise
      • Authors can focus on the problem, not the processes or the tools
      • Authors are not just publishing content; they are creating tools to empower decision makers
  • What Can Stored Processes Do?
    • Create business reports
    • Perform analysis
    • Data Integration processes
    • Provide services to other applications
    • Anything a SAS program can do
  • What Is a SAS Stored Process?
    • A SAS program described by metadata
      • Data steps, Procs, Macro
    • A standard for reusable SAS programs
      • Multiple clients – Web, Java, MS Office, Web Services
      • Multiple output formats and delivery options
      • Multiple platforms
    • A core technology for many SAS products
  • A Simple Stored Process %stpbegin; title "Shoe Sales by Region and Product"; footnote; proc report data=webdata.shoes; column region product sales; define region / group; define product / group; define sales / analysis sum; break after region / ol summarize suppress skip; run; %stpend;
  • Stored Process Authoring Clients
    • Enterprise Guide
      • General purpose development environment
    • SAS Management Console (SMC) Stored Process Manager
      • Register programs from other sources
      • Manage stored process metadata
    • DI Studio
      • Export DI process flows as stored processes
    • Other SAS Code Generators ( e.g. Enterprise Miner )
      • Manual process, but simple to do
  • Demonstration - Stored Process Creation
  • Stored Process Inputs
    • Data sources
      • SAS data sets
      • External tables (SAS/ACCESS)
      • XML (XML Library Engine)
    • Parameters
    • Other
      • External files
      • Client data streams
      • SAS catalogs
  • Stored Process Outputs
    • Data targets
      • SAS data sets
      • External tables (SAS/ACCESS)
      • XML (XML Library Engine)
      • Information Maps
    • Generated content (Output Delivery System)
      • HTML, XML, PDF, etc.
      • GIF, PNG, ActiveX, Java graphics
  • Stored Process Metadata
    • Metadata describes the stored process
      • Name, Description, Keywords, etc.
      • Location of source code
      • Server
      • Inputs – Streams, Parameters
      • Outputs – Streams, Packages
      • Access control
  • Stored Process Consumption Clients
    • Web
      • Information Delivery Portal
      • Stored Process Web Application
      • Custom JSPs or Servlets
    • Microsoft Office
    • Enterprise Guide
    • Information Maps
    • Web Report Studio Reports
    • Web Services
  • Demonstration - Stored Process Consumption
  • SAS Metadata Architecture
    • Central to stored processes
    • Metadata documents an interface contract
      • Allows any consumer to use stored processes created by any author.
    • Metadata describes behavior
      • Input parameters
      • Input data sources
      • Output data, content, delivery options
      • Execution environment, security rules, etc.
  • Input Parameters
    • Defined by metadata
    • Values specified at run-time
      • Property sheet interface (JSP, Java App, or Windows)
      • Custom input form
      • Fixed – in a URL, script or program
    • Default values
    • Constraints – ranges, enumerated values
  • Adding Parameters
    • %global region;
    • %stpbegin;
    • title "Shoe Sales for &region " ;
    • Title "By Subsidiary and Product";
    • footnote;
    • proc report data=webdata.shoes;
    • where region eq " &region ";
    • column subsidiary product sales;
    • define subsidiary / group;
    • define product / group;
    • define sales / analysis sum;
    • break after subsidiary / ol summarize suppress skip;
    • run;
    • %stpend;
  • Demonstration - Stored Process Business Rules
  • Security
    • Integrated security model
      • Provided by the SAS Metadata Architecture
      • Single sign-on across all SAS servers
    • Integrated Web server security
    • Access control on each stored process, data source and output target
    • Administered with SAS Management Console.
  • Stored Process Server
    • Dedicated to executing stored processes
    • Multi-user server designed for scalability
    • Server logic implemented with Threaded Kernel
    • Same SAS execution engine as batch SAS or the Workspace server
    • Configured with SAS Management Console Server Manager
  • Scalability
    • Many configuration options
    • Start on demand, reusable servers
    • Load balanced clusters
    • Pre-started servers
    • Easy to configure multiple servers for different performance classes
  • Summary
    • A standard for reusable SAS logic
    • Stored processes can be authored and executed in a wide variety of SAS tools
    • Stored processes make the power of SAS accessible to everyone
    • SAS 9 implements stored processes on a secure, scalable and maintainable platform
    • SAS users already know how to write stored processes!
  • Copyright © 2006, SAS Institute Inc. All rights reserved.