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

What developers are doing with Postgres & MySQL...

What developers are doing with Postgres & MySQL on Azure | Build 2020 | Samay Sharma, Andrea Lam

Join us to learn how developers like you are architecting applications on Postgres & MySQL open source databases on Azure—for use cases like e-commerce, web content, time series data, real-time analytics, & multi-tenant SaaS

More Decks by Azure Database for PostgreSQL

Other Decks in Technology

Transcript

  1. Agenda Why open source databases on Azure? Common patterns for

    Postgres What devs are doing with MySQL on Azure Seamless cloud migrations Open Source
  2. 1K 800 600 400 200 100 Score (logarithmic scale 2013

    2014 2015 2016 2017 2018 2019 2020 Growing In Popularity https://db-engines.com/en/ranking_trend PostgreSQL MySQL
  3. PostgreSQL & MariaDB are fastest growing relational database management systems

    MySQL named 2019 “Database of the year” by DB-Engines.com PostgreSQL named 2017 and 2018 “Database of the year” by DB-Engines.com Postgres one of most loved & wanted databases in Stack Overflow Developer Survey 2019 80% Growing In Popularity
  4. Rich feature set Proven resilience & stability Open source Fully

    managed Highly scalable Security & Compliance Intelligent performance
  5. Rich feature set Proven resilience & stability Open source Fully

    managed Highly scalable Security & Compliance Intelligent performance
  6. Available on Microsoft Azure Rich feature set Proven resilience &

    stability Open source Fully managed Highly scalable Security & Compliance Intelligent performance
  7. Modernize data estate by migrating Oracle > Postgres Rich PostgreSQL

    features & data types including geospatial Fast and low risk PL/SQL to PL/PgSQL migration Minimal downtime via Ora2PG & Azure Database Migration Reduce TCO by over 90% & avoid vendor lock-in Fully-managed database service
  8. Modernize data estate by migrating Oracle > Postgres Rich PostgreSQL

    features & data types including geospatial Fast and low risk PL/SQL to PL/PgSQL migration Minimal downtime via Ora2PG & Azure Database Migration Reduce TCO by over 90% & avoid vendor lock-in Fully-managed database service
  9. Modernize data estate by migrating Oracle > Postgres Fast and

    low risk PL/SQL to PL/PgSQL migration Minimal downtime via Ora2PG & Azure Database Migration Reduce TCO by over 90% & avoid vendor lock-in Fully-managed database service Rich PostgreSQL features & data types including geospatial
  10. Modernize data estate by migrating Oracle > Postgres Rich PostgreSQL

    features & data types including geospatial Minimal downtime via Ora2PG & Azure Database Migration Reduce TCO by over 90% & avoid vendor lock-in Fully-managed database service Fast and low risk PL/SQL to PL/PgSQL migration
  11. Modernize data estate by migrating Oracle > Postgres Rich PostgreSQL

    features & data types including geospatial Fast and low risk PL/SQL to PL/PgSQL migration Reduce TCO by over 90% & avoid vendor lock-in Fully-managed database service Minimal downtime via Ora2PG & Azure Database Migration
  12. Migrating from Oracle to Postgres | The Process Post-migration Migration

    Migrate schema, data, & objects Data sync Cutover Pre-migration Discover Assess Connect Remediate applications Optimize Run functional & performance tests
  13. Real-time ingest & complex analytics in same database Data types,

    operators, functions Why build real-time analytics on Postgres?
  14. Real-time ingest & complex analytics in same database Data types,

    operators, functions Extensions: pg_partman, pg_cron, HLL, topn Why build real-time analytics on Postgres?
  15. Real-time ingest & complex analytics in same database Data types,

    operators, functions Extensions: pg_partman, pg_cron, HLL, topn Pre-aggregations & rollups Why build real-time analytics on Postgres?
  16. Real-time ingest & complex analytics in same database Data types,

    operators, functions Extensions: pg_partman, pg_cron, HLL, topn Pre-aggregations & rollups Connectivity with rest of data pipeline Why build real-time analytics on Postgres?
  17. Real-time ingest & complex analytics in same database Data types,

    operators, functions Extensions: pg_partman, pg_cron, HLL, topn Pre-aggregations & rollups Connectivity with rest of data pipeline Scale to hundreds of TBs with Hyperscale (Citus) Why build real-time analytics on Postgres?
  18. Real-time analytics architectures with Hyperscale (Citus) Notification Hubs Devices Raw

    Events Azure Databricks Scheduled process Browser Aggregations App Service/AKS 4 Hyperscale (Citus) in Azure Database for PostgreSQL 4 3 5 2 6 1 Event Hubs
  19. 4 4 5 1 6 3 2 Notification Hubs Devices

    Raw Events Azure Databricks Scheduled process Browser Aggregations Hyperscale (Citus) in Azure Database for PostgreSQL Event Hubs App Service/AKS Real-time analytics architectures with Hyperscale (Citus)
  20. 3 5 2 1 6 4 4 Notification Hubs Devices

    Raw Events Azure Databricks Scheduled process Browser Aggregations Hyperscale (Citus) in Azure Database for PostgreSQL Event Hubs App Service/AKS Real-time analytics architectures with Hyperscale (Citus)
  21. 4 4 3 2 1 5 6 Notification Hubs Devices

    Raw Events Azure Databricks Scheduled process Browser Aggregations Hyperscale (Citus) in Azure Database for PostgreSQL Event Hubs App Service/AKS Real-time analytics architectures with Hyperscale (Citus)
  22. 4 4 3 5 2 1 6 Notification Hubs Devices

    Raw Events Azure Databricks Scheduled process Browser Aggregations Hyperscale (Citus) in Azure Database for PostgreSQL Event Hubs App Service/AKS Real-time analytics architectures with Hyperscale (Citus)
  23. 4 4 3 5 2 1 6 Notification Hubs Devices

    Raw Events Azure Databricks Scheduled process Browser Aggregations Hyperscale (Citus) in Azure Database for PostgreSQL Event Hubs App Service/AKS Real-time analytics architectures with Hyperscale (Citus)
  24. Build ecommerce apps that delight customers with Magento & MySQL

    An open source e-commerce solution developed in PHP
  25. AKS Kubernetes Cluster NGINX 1.15.5 Ingress Cache service (2 pod

    instances) Varnish Pod Varnish Pod Web (Magento) service WEB Pod App (Magento) service APP Pod Redis-cache service (1 pod instance) Redis-session service (1 pod instance) Redis Cache (1) Redis Cache (1) Magento uses Azure Database for MySQL to store inventory catalog, order, and customer information
  26. Built-in HA for 99.99% SLA fault tolerant performance Transactions in

    500 milliseconds with 20K IOPS and 16 TB of storage Read-replicas to scale out read- only workloads for analytical platforms AKS Kubernetes Cluster NGINX 1.15.5 Ingress Cache service (2 pod instances) Varnish Pod Varnish Pod Web (Magento) service WEB Pod App (Magento) service APP Pod Redis-cache service (1 pod instance) Redis-session service (1 pod instance) Redis Cache (1) Redis Cache (1) Azure Database for MySQL gives Magento (and ecommerce customers)
  27. Built-in HA for 99.99% SLA fault tolerant performance Transactions in

    500 milliseconds with 20K IOPS and 16 TB of storage Read-replicas to scale out read- only workloads for analytical platforms AKS Kubernetes Cluster NGINX 1.15.5 Ingress Cache service (2 pod instances) Varnish Pod Varnish Pod Web (Magento) service WEB Pod App (Magento) service APP Pod Redis-cache service (1 pod instance) Redis-session service (1 pod instance) Redis Cache (1) Redis Cache (1) Azure Database for MySQL gives Magento (and ecommerce customers)
  28. Built-in HA for 99.99% SLA fault tolerant performance Transactions in

    500 milliseconds with 20K IOPS and 16 TB of storage Read-replicas to scale out read- only workloads for analytical platforms AKS Kubernetes Cluster NGINX 1.15.5 Ingress Cache service (2 pod instances) Varnish Pod Varnish Pod Web (Magento) service WEB Pod App (Magento) service APP Pod Redis-cache service (1 pod instance) Redis-session service (1 pod instance) Redis Cache (1) Redis Cache (1) Azure Database for MySQL gives Magento (and ecommerce customers)
  29. Built-in HA for 99.99% SLA fault tolerant performance Transactions in

    500 milliseconds with 20K IOPS and 16 TB of storage Read-replicas to scale out read- only workloads for analytical platforms AKS Kubernetes Cluster NGINX 1.15.5 Ingress Cache service (2 pod instances) Varnish Pod Varnish Pod Web (Magento) service WEB Pod App (Magento) service APP Pod Redis-cache service (1 pod instance) Redis-session service (1 pod instance) Redis Cache (1) Redis Cache (1) Azure Database for MySQL gives Magento (and ecommerce customers)
  30. Deliver online educational programs with Moodle Allows educators to manage

    quizzes, assignments, and communicate with students Moodle: open source learning management solution developed in PHP
  31. Azure Admin (SSH) IP VNet Gluster FS Controller VM (w/

    opt. NFS vol.) Elastic VMS Azure Database for MySQL Moodle deployment architecture on Azure
  32. Azure Admin (SSH) IP Autoscaling VMSS web frontend VNet Gluster

    FS Controller VM (w/ opt. NFS vol.) Elastic VMS Azure Database for MySQL Moodle deployment architecture on Azure
  33. Azure Admin (SSH) IP Autoscaling VMSS web frontend VNet Gluster

    FS Controller VM (w/ opt. NFS vol.) Elastic VMS Azure Database for MySQL Moodle deployment architecture on Azure
  34. Moodle uses Azure Database for MySQL to store student scores,

    grades, & student info Automated patching & backups Integrated with native MySQL tools Concurrent user access Moodle deployment architecture on Azure Azure VNet
  35. © Copyright Microsoft Corporation. All rights reserved. Andrea Lam @andreajlam

    @AzureDBMySQL thank you merci grazie ध"यवाद ευχαριστώ gracias ధన#$ా&'ల) 谢谢 @samay_sharma @AzureDBPostgres @citusdata Samay Sharma thank you merci grazie ध"यवाद ευχαριστώ gracias ధన#$ా&'ల) 谢谢