Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Building Serverless Data Infrastructure in the ...

Avatar for Ryan Plant Ryan Plant
November 10, 2017

Building Serverless Data Infrastructure in the AWS Cloud

Presentation given at the Utah Big Mountain Data & Developer Conference in November 2017. Describes the new data economy, a reference architecture for Big Data infrastructure, and its application to Amazon Web Services serverless services.

Avatar for Ryan Plant

Ryan Plant

November 10, 2017

Other Decks in Technology

Transcript

  1. DW Traditional Data Warehousing Volume, variety, and velocity… Advanced analytics…

    Artificial intelligence… ”What got us here won’t (entirely) get us there…” Mostly proprietary… Costly and complex to scale…
  2. If you think of a datamart as a store of

    bottled water – cleansed and packaged and structured for easy consumption – the data lake is a large body of water in a more natural state…
  3. From Data Warehouses to Lakes A data pond, lake, ocean

    is not a product it’s an architecture… (and architecture is a principled and pattern-oriented approach to building systems) Any and all data… Any source and format… Any time…
  4. APPS & SOURCES STORAGE AND PROCESSING LAYER SERVING LAYER Storage

    Catalog Processing Analytics & Artificial Intelligence Ingestion Models & Marts DATA OPS API Search Security Config Telemetry Cost Mgmt
  5. DATA OPS Security Config Telemetry Cost Mgmt SERVING LAYER Models

    & Marts API Search APPS & SOURCES STORAGE AND PROCESSING LAYER Storage Ingestion Catalog Processing Analytics & Artificial Intelligence
  6. Data Ingestion Pipelines SERVICE SERVICE SERVICE MONOLITH MONOLITH MONOLITH Change

    Data Capture (CDC) STREAMS MESSAGING FILE EXTRACTS STORAGE source data aggregated, stored indefinitely many supported formats append append PUT Security segregation & encryption
  7. Storage and Catalog STORAGE RAW REFINED Catalog • Register source

    and schema • Data attribute inventory • Relationships and dependencies • Etc… data Ingestion
  8. Catalog Raw to Refined Processing Pipelines STORAGE RAW REFINED Processing

    Pipelines data Ingestion C1 C2 C3 C..n • Preserve RAW data; enrich only • Apply transforms to create new, REFINED datasets (e.g. customer partitioned views) • Catalog new datasets • Enable new use cases: • Reporting/Analytical views • Machine/Deep Learning X Y Z ALL DATA
  9. Processing Pipelines Catalog Analytics and AI STORAGE RAW REFINED data

    Ingestion Analytics and Artificial Intelligence C1 C2 C3 C..n ALL DATA X Y Z … … …
  10. DATA OPS Security Config Telemetry Cost Mgmt APPS & SOURCES

    STORAGE AND PROCESSING LAYER Storage Ingestion Catalog Processing Analytics & Artificial Intelligence SERVING LAYER Models & Marts API Search
  11. Processing Pipelines Catalog Curation and Serving STORAGE RAW REFINED data

    Ingestion Analytics and Artificial Intelligence C1 C2 C3 C..n ALL DATA X Y Z Models and Marts … … … Search … … …
  12. Processing Pipelines Catalog STORAGE RAW REFINED data Ingestion Analytics and

    Artificial Intelligence C1 C2 C3 C..n ALL DATA X Y Z Models and Marts … … … Search … … … API
  13. APPS & SOURCES STORAGE AND PROCESSING LAYER SERVING LAYER Storage

    Catalog Processing Analytics & Artificial Intelligence Ingestion Models & Marts DATA OPS API Search Security Config Telemetry Cost Mgmt
  14. CAPITAL AND RISK BARRIERS acquire/write and maintain software procure, install,

    and maintain hardware get commercial real estate license
  15. CLOUD OPTIMIZATION Infrastructure as a Service Someone else’s hardware and

    real estate Your software, your (virtual) servers Platform as a Service Someone else’s software, servers, hardware and real estate Your custom application software Software as a Service Someone else’s application software, you provide the data (everything else doesn’t matter) Cycle Time Capital Optimization Differentiation Focus High Higher Highest
  16. everything is an event: messages, log entries, file I/Os, clock

    alarms, etc. listen for events: trigger a handler with an event stateless event handling: avoid state, persist as event source, handoff as soon as possible automation through orchestration and coordination Principles for event-driven, reactive data infrastructure primed for serverless architectures
  17. Storage Ingestion SQS SNS Kinesis DynamoDB/RDS event triggers y =

    f (x) y = f (x, y) y = f ([x, y]) event handlers AWS Glacier (archival) /{source}-raw/{key}/YYYY-MM-DD /{source}-refined/{key}/YYYY-MM-DD AWS Lambda AWS S3 (ready) KMS (encryption) lifecycle policies IAM + Directory (access control) CloudWatch/Trail to S3 direct AWS Step Functions (coordinated state)
  18. Catalog Storage Sources Ingestion AWS Glue (serverless ETL/ELT) source crawlers

    metadata classifier classifier doSomething(…) {…} trigger Processing Pipelines jobs and job runner To Targets
  19. Catalog Storage Sources & Targets Ingestion Processing Pipelines AWS Glue

    (serverless ETL/ELT) AWS EMR (Managed Hadoop) Streaming Kinesis Batch AWS Batch Targets & Sources Ingestion Serving Layer
  20. Catalog Storage Processing Pipelines AWS Glue (serverless ETL/ELT) Serving Layer

    AWS ElasticSearch (managed ES) AWS RedShift Spectrum (Parallel DW) Sources Ingestion AWS Athena (Ad-hoc Query)
  21. Catalog Storage Processing Pipelines Serving Layer Sources Ingestion AWS API

    Gateway (serverless APIs) AWS QuickSight (visualization) AWS Cognito (Web/Mobile Identity and SSO)
  22. CLOUD OPTIMIZATION Infrastructure as a Service Someone else’s hardware and

    real estate Your software, your (virtual) servers Platform as a Service Someone else’s software, servers, hardware and real estate Your custom application software Software as a Service Someone else’s application software, you provide the data (everything else doesn’t matter) Cycle Time Capital Optimization Differentiation Focus High Higher Highest
  23. CLOUD OPTIMIZATION Infrastructure as a Service Someone else’s hardware and

    real estate Your software, your (virtual) servers Platform as a Service Someone else’s software, servers, hardware and real estate Your custom application software Software as a Service Someone else’s application software, you provide the data (everything else doesn’t matter) You are likely here… Aim here… TBD Opportunity! Public Cloud R&D Investment
  24. SERVERLESS: USE CAUTION The floor is wet (and is constantly

    getting mopped!) The edges are sharp: • Development, Test, Debug tools and experience • Configuration and Deployment challenges • Variable, non-deterministic performance Extremely new (but inevitable) paradigm…