Skip to content

ICP4D Updates for Python development guide

markheger edited this page Dec 11, 2020 · 38 revisions

Developing IBM Streams Applications with Python (Versions 1.6+)

Proposed additions in bold

Completed additions in strikethrough

IBM Streams Python Support

  1. Installing Python APIs
  2. Developing for the IBM Streaming Analytics service
    • Developing for ICP4Data
  3. Developing with an IBM Streams installation
  4. Common Streams operations
    • 4.1 Connecting to known data sources
    • 4.x Aggregation
      • Creating a window using last() or batch()
      • Simple aggregation using Window.aggregate (use pandas)
        • Partitioned windows
    • 4.x New filter option for splitting streams in matching and non-matching streams
    • 4.x New split function for splitting streams
    • 4.x Data model - namedtuples vs streams schema etc
    • 4.x Using views
      • Using views in a notebook
  5. API features: Scalablity, fault tolerance
    • UDP (parallel fns)
    • Fault tolerance (consistent regions)
  6. The Python REST API
    • connect to CP4D examples
  7. Using SPL Operators in Python
    • Using Aggregate, Functor, Deduplicate etc. from streamsx.standard
    • Invoke SPL operators: reference Streams-SPLToolkitsTutorial.ipynb from sample.starter_notebooks
  8. AI - CP4D services
    • Connecting to Watson Machine learning (streamsx.wml)
    • Connecting to Speech to Text Gateway (streamsx.sttgateway)
    • Scoring a model in Python
  9. Improving performance - best practice
    • Reduce latency using low_latency
    • Using isolate
    • resource tags?
    • Saving credentials in app configs - a best practice to make code reusable
  10. Metrics/Logging