Azure Database
for PostgreSQL
Top Use Cases
Scale with ease to hundreds of
nodes, with no app rewrites.
Save time by running
transactions and analytics in
one database and avoid the
costs of manual sharding.
The benefits of Azure Database for PostgreSQL
Build or migrate your workloads with confidence and optimized for value
Enjoy maximum control and
flexibility with custom
maintenance windows, zone
redundant high availability
and additional configuration
parameters for fine grained
database tuning.
Ultimate control
and flexibility
for databases
Stay productive with full
compatibility with community
PostgreSQL and support for
your favorite PostgreSQL
extensions.
Innovate with
open-source
tools and extensions
Build massively
scalable PostgreSQL
applications
Maximize
performance with a
fully managed Azure
service
Focus on your application
innovation, not database
management. Enjoy AI-
powered performance
optimization and advanced
security.
Single Server
Hyperscale
Flexible Server
Azure is the best destination for PostgreSQL
Best of open source community along with the manageability and integration benefits of Azure
Identity, security, management, and compliance
Open Source Proven resilience & stability Rich feature set
Fully
managed
Intelligent
Performance
Highly
scalable
High
Availability
Maximum
control
Integrated with
Azure data ecosystem
Azure Database for PostgreSQL | Top Use Cases
Migration Cloud-Native Applications
Migration
Homogeneous Migration Oracle to Postgres Migration
Homogeneous Migration
Homogeneous
migration
Modernize your applications with seamless migration
from on-premises PostgreSQL databases to Azure
Database for PostgreSQL
Focus on application development, not database management, with fully
managed, community edition PostgreSQL
Enjoy high availability with up to 99.99% SLA
Protect your data with advanced security and compliance controls
Accelerate your migration using Azure Database Migration Service
Offline migrations can be done via dump/restore or Azure Data Factory
Startup faced issues with their customer-facing,
multi-tenant app on Heroku PostgreSQL
(powered by AWS). It was a 3.5 TB database
with 0.5 TB RAM and 3 read-replicas.
Some of their customers did not want their
data on AWS, costs with their Heroku database
were high, and they had performance issues
and were hitting a ceiling in terms of
infrastructure and scale in Heroku.
They chose Azure Database for PostgreSQL
Single Server to reduce costs and improve
performance and scalability.
Successfully migrated using a combination of
Azure Database Migration Service and a
homegrown parallel loader script.
Heroku PostgreSQL Migration to Azure
Azure
Public IP
DNS Zone
Azure Database
for PostgreSQL
Azure Cache
for Redis
Azure Kubernetes
Services
Azure Database
for PostgreSQL
Azure Kubernetes
Services
Azure Cache
for Redis
Azure Database
for PostgreSQL
Azure Kubernetes
Services
Azure Cache
for Redis
Azure Database
for PostgreSQL
Azure Kubernetes
Services
Azure Cache
for Redis
Azure Database
for PostgreSQL
Azure Kubernetes
Services
Azure Cache
for Redis
HarvestMark, creates technology solutions that food producers,
government agencies, and retailers use to track quality and boost food
safety. When its former cloud provider entered the food retail market,
HarvestMark had to find an alternative that would eliminate its retail
customers’ concerns and migrated to Azure Database for PostgreSQL.
Migration from AWS to Single
Server
Migrating to Azure in two hours
HarvestMark provides mission-critical solutions to assess food quality and
trace contamination across the supply chain.
HarvestMark’s original solution ran on AWS Aurora, but when Amazon
acquired a major grocery chain, HarvestMark’s customers grew concerned
about conflict of interest and data security. HarvestMark chose to move
to Azure because of its breadth of capabilities and services and global
support.
The migration was seamless, completing in two hours with no disruption
to customers.
20% decreased costs and increased customer trust
HarvestMark and its customers have benefitted from Azure Database for
PostgreSQL’s high performance and strong security.
After the migration, cloud hosting service costs decreased by 20%.
“We took an instance of the database, copied it to Azure,
then spun it up in the Azure managed PostgreSQL
environment. It happened flawlessly in two hours.”
– Todd Berg, Head of Product and Customer Success,
HarvestMark
Read the case study
IaaS VM(s)
HarvestMark
Application CRUD
Azure Database
for PostgreSQL
Master
Azure Database
for PostgresQL
Secondary Replica
HarvestMark
Analytics/Reporting
IaaS VM(s)
Shipping logistics company migrated 9 TB data
from Amazon RDS to Azure Database for
PostgreSQL Hyperscale (Citus).
Database runs mission-critical aspects of their
business, including freight pricing comparisons
and optimizations through order analysis and
shipping tracking analytics.
Faced issues with Amazon RDS scalability and
performance of analytics rollups.
Hyperscale (Citus) was a great choice for the
mixed transactional/analytical workload with
heavy use of rollup queries and scheduled
processing jobs.
Hyperscale (Citus) enables them to future-
proof their database, as they project 50%+
annual growth.
Migration from AWS to Hyperscale (Citus)
Azure
Database
for PostgreSQL
Analytics and
pre-aggregation
Data normalization
Internal Applications
3rd
party services
End users
Application Servers
Redis cache
Data ingest pipeline
Oracle to Postgres Migration
Oracle to Postgres
Migration
PostgreSQL has become a primary destination for
Oracle workloads
Avoid lock-in with open-source PostgreSQL – not a forked version
Benefit from cloud scale, built-in intelligence, and integration with the
Azure ecosystem
Lower total cost of ownership (TCO)
Similarities between Oracle and PostgreSQL ease migration effort
Leverage Ora2PG, a free tool, to automate most schema and app changes
Learn more with our detailed migration guide
Chevron, one of the world’s largest oil and gas companies, chose Azure
Database for PostgreSQL to replace Oracle in its 12 Documentum
environments worldwide.
Documentum Migration
Migration to Azure Database for PostgreSQL
Documentum is a critical application for engineering and operational
workflows at Chevron, storing important information including oilfield
maps and engineering drawings
When OpenText decided to move their Documentum content
management platform away from Oracle to optimize on PostgreSQL,
Chevron turned to Azure.
Thanks to a strong partnership across Microsoft, OpenText, and Chevron,
they successfully deployed the OpenText solution on Azure Database for
PostgreSQL and migrated the data from on-premises Oracle to Azure
Chevron has migrated 12 instances across the globe to Azure
Database for PostgreSQL
Azure
Database
for PostgreSQL
Azure
DevOps
Azure Files
Hub Vnet Spoke Vnet
Node 3
Node 2
Node 1
User Access CD
CI
On-Prem
ExpressRoute
Cloud-native applications
Transactional
applications
SaaS
applications
Geospatial aware
applications
Real-time
applications
Transactional applications
Transactional
applications
Why use Azure Database for PostgreSQL for
transactional apps?
Robust support for many data types, including time-series data and semi-
structured data with JSONB
Postgres transactions are ACID (Atomicity, Consistency, Isolation, and
Durability) compliant, ensuring strong consistency for apps that must be
always up to date
Enjoy high throughput OLTP via Hyperscale (Citus), for apps with
thousands or tens of thousands of transactions per second.
Benefit from cloud scale, built-in intelligence, advanced security and
compliance, high availability, and integration with the Azure ecosystem
Banking Platform
Building a cloud-native banking platform
Finxact provides banks with a modern approach to their system of record
– the core services that handle deposits, loans, and other banking
functions.
Their cloud-native architecture ensures they can meet the demands of
modern banks – massive scale, performance, high availability, and ability
to meet regulatory requirements.
Finxact leverages managed open-source services, including Azure
Kubernetes Service and Azure Database for PostgreSQL.
Benefits of Azure Database for PostgreSQL
Azure Database for PostgreSQL is used as a relational data store for
Finxact’s core processing service.
They leverage JSON data types, thanks to Postgres’ support for JSONB,
enabling a flexible data model.
Service availability is crucial. Azure Database for PostgreSQL is backed by
a 99.99% SLA, but Finxact also deploys their database across multiple
Availability Zones to provide an even higher level of availability.
“The availability of open-source services on Azure
enabled Finxact to leverage the most advanced
solutions to support our customers’ business needs at
massive scale.”
– Frank Sanchez, CEO, Finxact
Read the case study
Azure files
Customer 1
Public Subnet xxxxx/xx
Azure
Bob Storage
Azure Database
for PostgreSQL OLAP
Azure Database
for PostgreSQL OLAP
Azure files
INTERNET Azure DNS
Replica
Replica
Replica
Public Subnet xxxxx/xx
Public Subnet xxxxx/xx
Bastion Host
AKS
Namespace 1-n
Bastion Host
Namespace 1-n
Bastion Host
Namespace 1-n
Availability Zone 1 Availability Zone 2 Availability Zone 3
Azure Public Load
Balancer
Customer n
Public Subnet xxxxx/xx
Azure
Bob Storage
Azure Database
for PostgreSQL OLAP
Azure Database
for PostgreSQL OLAP
Customer 1
Public Subnet xxxxx/xx
Azure
Bob Storage
Azure Database
for PostgreSQL OLAP
Azure Database
for PostgreSQL OLAP
Public Subnet xxxxx/xx
Public Subnet xxxxx/xx
Bastion Host
AKS
Namespace 1-n
Bastion Host
Namespace 1-n
Bastion Host
Namespace 1-n
Availability Zone 1 Availability Zone 2 Availability Zone 3
Azure Public
Load Balancer
Customer n
Public Subnet xxxxx/xx
Azure
Bob Storage
Azure Database
for PostgreSQL OLAP
Azure Database
for PostgreSQL OLAP
Postgres powers connected passenger cars
Car manufacturer had monolithic existing system to power their
connected vehicle services. Oracle history and open source
preference led them to choose PostgreSQL as they moved to the
cloud.
Modernized by replacing their old system with a cloud-native,
microservices based system powered by Azure Database for
PostgreSQL and Azure Kubernetes Service.
Hundreds of AKS clusters power dozens of applications users
interact with in passenger cars, including navigation,
entertainment, and a virtual assistant.
Postgres stores almost all backend data. For example, Postgres
databases store the mapping of which customers have
subscribed to each service offered by the platform - a
cornerstone of the overall system.
Azure Database for PostgreSQL provides advanced security for
sensitive data, high availability for mission-critical services, and
cloud scale.
Connected Vehicle Backend
Azure
Kubernetes Service
Azure
Kubernetes Service
Azure
Kubernetes Service
Azure
Kubernetes Service
Azure
Kubernetes Service
Azure
Kubernetes Service
Azure
Kubernetes Service
Azure
Kubernetes Service
Azure
Kubernetes Service
Azure
Kubernetes Service
Robert Bosch GmbH is an engineering and technology company which
creates products and services across Mobility Solutions, Industrial
Technology, Consumer Goods, and Energy and Building Technology. With
the goal of saving lives, Bosch turned to Azure to help build a wrong-way
driver warning service.
Vehicle Safety App
Keeping drivers safe using data
As they set out to solve the problem of drivers going the wrong way on
highways, Bosch knew they could not compromise when it came to real-
time speed and precision of location data.
Bosch built a solution using Azure managed services, including Azure
Database for PostgreSQL, Azure Kubernetes Service, Azure Cache for
Redis, Azure Databricks, and more. Leveraging PaaS services freed Bosch’s
small development team from time spent managing infrastructure.
Building a cloud-native application
Azure Database for PostgreSQL delivers a highly available relational
database that requires almost no administration, saving them time and
costs.
Azure Database for PostgreSQL seamlessly integrates with services like
Azure Kubernetes Service and Azure Databricks.
The solution ingests 6M requests per day from devices emitting GPS data
and from partner systems.
By running on Azure, Bosch improved the average time to calculate
whether a driver is going the wrong way to 60 milliseconds.
Wrong-way driver warning services
Azure
Kubernetes Service
Kafka on
Azure HDInsights
Push servicer
Virtual network
security
Virtual API
Management
Virtual
Key Vault
Azure
Data Explorer
Azure
Monitor
Azure
Cache for Redis
Azure Database
for PostgreSQL
Azure
Databricks
Continuous Map
updates
Azure Container
Registry
Azure App
Service
Azure App
for Containers
Azure AD
authentication
Read the case study
Build apps to facilitate retail transactions
Azure Database for PostgreSQL is often used in retail
applications; for example, storing point of sale data, facilitating
e-commerce transactions, or powering inventory management
systems.
Here, a large grocery chain uses Azure Database for PostgreSQL
for an app that distributes data on prices, promotions and
product images to checkout tills in around 4,000 stores.
Updates happen in near real time, and cannot have a high
impact on the network, as the network is used for many different
purposes, including card payments.
There must be consistency across stores even while updates are
being made centrally to prices in the PostgreSQL database. A
mechanism similar to Kafka offsets was used to achieve
consistency, and PostgreSQL was selected as it supports this. The
current offset is a pointer to the last record sent to the device in
the most recent poll. In-store devices poll APIs for updates using
offsets. Updates up to a maximum offset are sent to a server in
each store which, in turn, distributes the updates to tills.
Updates to price and product data are published to a HTTP
endpoint. The data is inserted into the PostgreSQL database,
with an offset assigned.
Retail Store App
Azure Database
for PostgreSQL
Azure
Kubernetes Service
API Management
Services
Application Gateway
On-Premises
Tills connect to a
server in each store
Azure
Swiss Re, one of the world’s largest reinsurers, uses Azure PaaS services,
including Azure Database for PostgreSQL, to power a digital transformation
that includes the modernization of business-critical financial systems.
Java App Modernization
Simplifying development with Azure
Swiss Re has built new Java-based financial apps and migrated existing
ones using Azure Spring Cloud, a fully managed infrastructure for Spring
Boot applications.
Azure supports the company’s strict security and regulatory requirements,
and allows developers to develop and deploy solutions faster.
The team can store and retrieve information in Azure Database for
PostgreSQL with a simple Spring Data JDBC call.
For persistency, any data managed in their microservices is stored in
PostgreSQL.
Azure Database for PostgreSQL and Azure Spring Cloud enable Swiss Re’s
developers to focus on writing apps, while Azure takes care of scaling,
security, compliance, and high availability.
Read the case study
Azure Database for
PostgreSQL
Database
Azure Key Vault
Key Vault
Azure AD
Tenant
Business
User
Cloud fair
Gateway
Azure Spring Cloud
Spring Cloud Gateway
Spring Boot
Back in Servers
Spring Boot
Azure Monitor
Applications
Insights
Log Analysis
Workspace
Azure Storage
Static Content
Build highly scalable, enterprise-grade
apps with Hyperscale (Citus)
Government agency responsible for a country’s tax
administration built their electronic invoice and tax
payment settlement systems on Azure Database for
PostgreSQL Hyperscale (Citus).
Chose Hyperscale (Citus) because of a preference for
open source and existing Postgres skillset, along with
a need for scale – one app is ~1PB and data volume
is expected to grow 50% over the next 2 years, with
thousands of concurrent users.
Performance and high availability are key for
mission-critical apps that serve as primary sources of
information for many teams across the agency.
Data model consists of 10-15 large tables, with an
identifier for invoice, allowing for JOINs. Invoice ID is
used as central distribution key. Created monthly
partitions as most queries have a time dimension.
Electronic Invoice Application
XML Validates
Client Invoice
Taxpayer
Query process
Metadata
Taxpayer
Data Extracted
in process
Databricks process Azure Database
for PostgreSQL
Taxpayer’s statement weekly
ADLS
Event Kafka
Event Kafka on
Azure HDInsight
Geospatial aware applications
Geospatial
aware
applications
Why use Azure Database for PostgreSQL for geospatial
aware apps?
Azure Database for PostgreSQL is often used for apps with a location
component – for example, route optimization, fleet monitoring, and
supply chain management
Robust support for many data types, including time-series data, JSONB,
and geospatial data with PostGIS
Postgres transactions are ACID (Atomicity, Consistency, Isolation, and
Durability) compliant, ensuring strong consistency for apps that must be
always up to date
Enjoy high throughput OLTP via Hyperscale (Citus)
Benefit from cloud scale, built-in intelligence, advanced security and
compliance, high availability, and integration with the Azure ecosystem
Helsinki Region Transport Authority (HSL) is responsible for over
1 million public transportation journeys per day in Finland, across bus,
train, Metro, tram, and ferry services. HSL replaced its on-premises
Postgres solution with Azure Database for PostgreSQL Hyperscale (Citus),
dramatically improving performance and reducing costs.
Transportation Logistics
Challenges monitoring a complex network
HSL employees lacked access to real-time location and geographical data
on vehicles in their network, making it difficult to monitor and enforce
whether operators were running on time and on schedule.
They initially built a solution on-premises, but quickly ran into scale and
performance challenges. The system was ingesting GPS data every
second for over 2,000 vehicles, and as the database grew, so did query
processing time.
Better performance with 50% lower costs
In less than a month, HSL replaced their on-prem Postgres database with
Hyperscale (Citus) on Azure.
Postgres’ rich support for time-series data and geospatial data with
PostGIS made it a great fit for vehicle information such as location and
arrival times, and Hyperscale (Citus) easily handles high volumes of reads
and writes in near real-time.
Partitioning their data vertically based on time stamps and sharding
horizontally by bus ID resulted in improved performance, with queries
now able to be processed instantly.
Along with better performance, moving to Hyperscale has reduced
operational costs by over 50%.
“It was a whole different environment once we moved to
Hyperscale. Queries that often took up to 10 minutes with
the old system are now processed instantaneously.”
– Sami Räsänen, Product Owner and Team Lead, HSL
Read the case study
Pulsar microservices
Azure
Cache for Redis
Azure Database for PostgreSQL
Hyperscale (Citus)
Azure
Database
broker
(mqtt.hls.fi)
CANCELLATIONS
SERVICE ALERTS
JORE pipeline
Azure
Database
Azure SQL
Database
server
UI
Efficiently track packages and
deliveries at scale
Event-driven architecture using Azure Event
Hubs collects tracking data and distributes it to
business intelligence systems that power
reporting.
Microservices running on Azure Kubernetes
Service grab tracking data from Event Hubs
and perform calculations – for example,
package lifecycle.
With PostgreSQL’s JSONB support, data and
logic can be stored in the same document.
Calculations like package lifecycle don’t have
to be made every time the package is scanned,
and less data is stored and archived, lowering
storage costs.
Azure Database for PostgreSQL provides scale,
high availability, and rich support for
geospatial data with the PostGIS extension.
Package Tracking
Azure Kubernetes Service
Legacy central
database
Azure Database
for PostgreSQL
Azure Event
Hub
Azure
ExpressRoute
Scan Server
On-premises
Event
ingestion
Parcel
Processing
Parcel Master
Processing
Master data ingestion
Event store
maintenance
Azure
Load Balancer
For leading energy company BP, safety is top priority. They chose Azure
Database for PostgreSQL Hyperscale (Citus) to build a solution to help
them meet security and safety requirements by tracking building access in
real-time.
Building Security Management
Tracking geospatial data in real time
The ability to track spatial data was crucial to the solution, which involved
tracking badge access and location in real time. PostgreSQL was chosen
for its strength in working with location-based data.
BP needed a fully read-write database that could scale. The solution
needed to ingest data in real time while serving analytics and BI with sub-
second response time. Hyperscale (Citus) was a great fit for these
requirements.
Data insights to ensure security and safety
BP built a solution using Azure Data Factory and Event Hubs for data
ingestion, Azure Stream Analytics to transform real-time data into
insights, and Power BI to deliver data insights via dashboards.
With Hyperscale (Citus), the database delivering a customer-facing
experience also became the system of record.
The system can handle multiple workloads (OLAP and OLTP) at speed.
Operational overhead is reduced by using a fully managed, open source
Postgres database
Event Hub
Azure
Stream Analytics
Power BI
Azure
Data Factory
Azure Database for
PostgreSQL
Hyperscale (Citus)
Arc GIS Enterprise
Azure
Storage
SQL
Storage
Koop JS
Producers
Cloud9, a top esports competitor, relies on data and analytics to inform
the way their players train, strategize, and compete. Their Game Insights
Platform, built on Azure, is a great example for companies across industries
seeking to harness data for business intelligence. case study here
Gaming Insights Platform
Data as a competitive advantage
Using Azure, Cloud9 built a real-time dashboard to help coaches and
players track wins, strategies, matches, and trends over time.
Cloud9 chose Azure Database for PostgreSQL as the primary database to
store positional information because of PostgreSQL’s rich geolocation
analysis features.
A machine learning model analyzes videos of gameplay and identifies
interesting parts, storing the output in Azure Database for PostgreSQL.
By using a fully managed Postgres service, Cloud9 gains intelligent
performance, security, and scalability without having to manage the
database themselves.
Azure Database for PostgreSQL seamlessly integrates with services like
Azure Functions and Power BI.
“We started by asking, what is the most important data
we can act on that is not otherwise available to us?
Then we built a pipeline on Azure to automate the
process of finding it, capturing it, and making it
usable.”
– Mike Downey, Director of Sports Technology, Cloud9
Read the case study and watch the video to learn more
Azure
Monitor
Azure
Pipelines
Azure
Container
Registry
Docker
Pull
Docker
Push
Game data
Event
processing
Azure
Ingestion Storage
Containers
Microsoft
Power BI
Azure
Key Vault
Azure
Container
Instances
Azure
Database for
PostgreSQL
Azure
Functions
Azure Queue
Storage
Azure Blob
Storage
Azure Blob
Storage
Computer
Vision
SaaS applications
SaaS
applications
Why use Azure Database for PostgreSQL for SaaS apps?
Enjoy high throughput OLTP via Hyperscale (Citus). Many SaaS apps are
multi-tenant, which make them a great fit for sharding with Hyperscale
(Citus). The tenant ID makes for a natural distribution key.
JSONB support makes it possible to combine relational data with semi-
structured data types.
Benefit from cloud scale, built-in intelligence, advanced security and
compliance, high availability, and integration with the Azure ecosystem.
Hyperscale (Citus) can be a good choice to power
workloads where
High concurrency: 50+ end users querying the database at one time,
along with concurrent ingest.
Fast growing app: database is hundreds of GBs and growing, SaaS app has
thousands of customers and hundreds of thousands of users.
Tenants need to be kept separate, but you also want the ability to run
cross-tenant queries for internal monitoring.
Build scalable, multi-tenant sales
and marketing platforms
Common solutions include email marketing
and ecommerce platforms
Multi-tenant architecture often with one
database server per customer
Easily scale during peak times (e.g. holiday
season)
PostgreSQL’s extensibility and support for
many types of data (e.g. JSONB, time-series)
make it a flexible choice
Azure Database for PostgreSQL provides
reliability, high availability, and performance
necessary to meet customer expectations
Read replicas can help improve performance
and scale of read-intensive workloads e.g. BI
workloads for reporting
Sales and Marketing Automation
Private servers
Cloud
Controller
Service
Manager
Service
Broker
Core Resource Group Backing Services Resource Group
Applications
VNET Peering
Connection
Applications
ResourceManager,
Database
PTC creates digital solutions for Industrial IoT that help
manufacturing, service, and engineering companies connect,
monitor, analyze, and act on data in new ways.
IoT Development
Platform
Industrial IoT Platform
PTC’s ThingWorx solution is an Industrial IoT platform with tools to help businesses
connect assets, build apps and augmented reality experiences, analyze IoT data, manage
connected systems, and more.
Common use cases include remote asset monitoring, predictive maintenance, remote
service, and equipment optimization.
Architecture and database
Thingworx is a multi-tenant SaaS app. A distributed architecture allows for global
management of consolidated statistics and KPIs, while local managers get focused, real-
time information on their specific locations.
PTC customers can choose their preferred database, and Azure Database for PostgreSQL
is a popular choice. High availability, security, and performance are key requirements in
the Industrial IoT space.
Virtual
Network
Azure Database for
PostgreSQL
Experience
Repository
Experience Repository
Global customer-facing web app
App helps customers book car rentals – choose car,
schedule and manage rentals.
Java web app (Spring Boot) uses Azure Database for
PostgreSQL Single Server and Azure Kubernetes
Service.
App will have multi-tenant architecture as car rental
service expands globally, with regional deployments.
Azure Database for PostgreSQL chosen due to
existing Postgres skillset and open source preference,
in addition to PaaS benefits like high availability.
Security is a top priority as the app handles
confidential data, such as PII and internal business
data. Customer managed key encryption was a
requirement.
Car Rental App
Corporate network,
Data center
External access
Other external
data centers
InternetZone
Container Registry
InternetZone
Azure Load
Balancer
Azure
InternetZone
Azure Load
Balancer
Container
Registry
VNet
Microsoft KeyVault
ServiceEndpoint
Microsoft SQL
ServiceEndpoint
Azure Kubernetes
Service
VNet
Microsoft KeyVault
ServiceEndpoint
Microsoft SQL
ServiceEndpoint
Azure Kubernetes
Service
Real-time applications
Real-time
applications
Why use Azure Database for PostgreSQL for real-time
apps?
Robust support for time-series data as well as JSONB, making it possible
to combine relational data with semi-structured data types
Hyperscale (Citus) offers high throughput OLTP as well as sub-second
performance leveraging parallelism
Benefit from cloud scale, built-in intelligence, advanced security and
compliance, high availability, and integration with the Azure ecosystem
Hyperscale (Citus) can be a good choice to power
workloads where:
Mixed workloads with transactions and analytics (e.g. UPDATE, DELETE in
addition to INSERT/COPY)
High concurrency: 50+ end users querying the database at one time,
along with concurrent ingest
Smaller datasets (< 10 TB)
End users need to ask questions with many parameters (i.e. query with
many different column filters)
BNY Mellon is the world’s largest custodian bank and asset servicing
company. Focused on helping their clients use data insights to make better
decisions, BNY Mellon turned to Azure Database for PostgreSQL
Hyperscale to build an integrated data and analytics platform.
Real-Time Operational Analytics
Helping clients make data-driven decisions
BNY Mellon’s Distribution Analytics solution helps asset
managers understand US investment market dynamics and
forecasts based on predictive models.
Terabytes of structured, semi-structured, and unstructured
data, from sources on-prem and in multiple clouds, are unified
in Azure.
Azure Database for PostgreSQL Hyperscale (Citus) is used for
both transactional and analytical data processing.
Benefits of Hyperscale (Citus)
Azure Database for PostgreSQL provides a fully managed,
highly available, and flexible database that allows BNY Mellon’s
team to leverage existing Postgres skills.
Hyperscale (Citus) enables them to automatically scale out
multiple instances of the data to optimize READ and WRITE
operations, using parallel processing.
PostgreSQL’s support for JSONB lets them work with structured
and unstructured data types.
Watch the video to learn more
Azure Database
for PostgreSQL
Metadata
service
Sales Analytics
service
Query
service
Distribution
Analytics service
Azure Cache
For Redis
On-premises sales and
redemption data
Consul
DVAcontainer Extract Service Slice service Load service
Input.slice queue
Input. Slice queue
Dispatch service Disk
On-premises security
Master information
Third-party
SaaS services
Distribution Analytics users
interface in another cloud
Provide low latency interactive
dashboards for end user queries
Data from various sources (e.g. sales,
marketing, support) gets ingested into
Hyperscale (Citus). Azure Databricks or Azure
Data Factory is used as ETL engine to clean and
transform data. Final datasets exposed to end
users via interactive, real-time analytics
dashboards, such as Metabase or Power BI.
Query parallelism and flexibility in creating
indexes can lead to huge performance gains.
Store semi-structured data using JSONB data
type. JSONB can provide 6-7x compression.
Scale each node’s compute and storage
independently to optimize costs.
Horizontally scale with no downtime.
Read this blog to learn more
Customer Facing Dashboards
Azure Databricks
Spark Cluster
Sales Data
User Events
Data
Marketing Data
Hyperscale (Citus) on Azure Database
for PostgreSQL
Analytics Data Store
Metabase Dashboards
Data Transformation &
Cleansing
C.H. Robinson solves logistics problems for companies across the globe
and across industries, from the simple to the most complex. With $21
billion in freight under management and 19 million shipments annually,
they are one of the world’s largest logistics platforms. They provide a
bidding marketplace between shipping fleet providers and customers
seeking to ship products and chose Azure Database for PostgreSQL
Hyperscale (Citus) to power their pricing engine workload.
Pricing Engine
Mission-critical workload faced limits on-prem
C.H. Robinson leveraged an on-prem Postgres database to
power their mission-critical pricing engine. Using a proprietary
reinforcement learning engine, they use data to predict pricing
for new bids.
PostgreSQL’s JSONB support was critical, as they store large
volumes of semi-structured data.
When they faced scale and performance issues with the on-
prem Postgres database, they migrated to Azure Database for
PostgreSQL Hyperscale (Citus).
Benefits of Hyperscale (Citus)
Hyperscale (Citus) gave them increased scale and a 1.5x
performance improvement over single-node Postgres, while
allowing them to simplify their architecture by combining OLTP
and OLAP workloads.
Additionally, the engine powers customer-facing dashboards
which surface bids, pricing history, deals won, and revenue
metrics. Data scientists can also use this engine to perform
dynamic quote modeling to drive informed decision-making.
Loads/Quotes Topic
Win Matching Topic
Win Matching
App
Database API
ELT Process
Azure Database
for PostgreSQL
Hyperscale (Citus) Legacy Apps
DS Ad-Hoc
Queries
ELT Retry Process
Loads/Quotes Retry Topic
Loads/Quotes Retry Topic
Other Bidding
Apps
Future
Applications
API History Topic
Build IoT apps that scale to millions of
devices
Enable your IoT app to query both historic events and
the current state of devices, using both UPDATEs and
JOINs.
Relational databases like Postgres give you relational
features such as JOINs.
Hyperscale (Citus) lets you ingest and query concurrently
and at scale. It’s a good fit for apps with a need for
concurrency, real-time, high-throughput ingest, and fast
query response times. Device ID often used as sharding
key.
Ingest and process IoT telemetry in real time to power
event-driven applications and dashboards.
With Hyperscale (Citus), we’ve seen customers with
databases in the tens of TBs, as well as those with
millions of devices. Tests with Hyperscale (Citus) have
simulated 5M devices with 2B measurements/hour with
P95* <500ms for non-hierarchical queries and P95 < 2s
for hierarchical queries.
IoT Applications
Ingress ASA Egress
IoT Hubs
Service Bus
IoT Microservices
Indexers
Query Processors
PostgreSQL Hyperscale Cluster
Company
Workers
Structured
Instance Events
Ingestion
Query
Life Cycle Events
Microsoft
Power BI
PG Bouncer
*P95 – query performance in 95% of cases
© 2021 Microsoft Corporation. All rights reserved.

Azure Database for PostgreSQL - Top Use Cases.pptx

  • 1.
  • 2.
    Scale with easeto hundreds of nodes, with no app rewrites. Save time by running transactions and analytics in one database and avoid the costs of manual sharding. The benefits of Azure Database for PostgreSQL Build or migrate your workloads with confidence and optimized for value Enjoy maximum control and flexibility with custom maintenance windows, zone redundant high availability and additional configuration parameters for fine grained database tuning. Ultimate control and flexibility for databases Stay productive with full compatibility with community PostgreSQL and support for your favorite PostgreSQL extensions. Innovate with open-source tools and extensions Build massively scalable PostgreSQL applications Maximize performance with a fully managed Azure service Focus on your application innovation, not database management. Enjoy AI- powered performance optimization and advanced security. Single Server Hyperscale Flexible Server
  • 3.
    Azure is thebest destination for PostgreSQL Best of open source community along with the manageability and integration benefits of Azure Identity, security, management, and compliance Open Source Proven resilience & stability Rich feature set Fully managed Intelligent Performance Highly scalable High Availability Maximum control Integrated with Azure data ecosystem
  • 4.
    Azure Database forPostgreSQL | Top Use Cases Migration Cloud-Native Applications
  • 5.
  • 6.
  • 7.
    Homogeneous migration Modernize your applicationswith seamless migration from on-premises PostgreSQL databases to Azure Database for PostgreSQL Focus on application development, not database management, with fully managed, community edition PostgreSQL Enjoy high availability with up to 99.99% SLA Protect your data with advanced security and compliance controls Accelerate your migration using Azure Database Migration Service Offline migrations can be done via dump/restore or Azure Data Factory
  • 8.
    Startup faced issueswith their customer-facing, multi-tenant app on Heroku PostgreSQL (powered by AWS). It was a 3.5 TB database with 0.5 TB RAM and 3 read-replicas. Some of their customers did not want their data on AWS, costs with their Heroku database were high, and they had performance issues and were hitting a ceiling in terms of infrastructure and scale in Heroku. They chose Azure Database for PostgreSQL Single Server to reduce costs and improve performance and scalability. Successfully migrated using a combination of Azure Database Migration Service and a homegrown parallel loader script. Heroku PostgreSQL Migration to Azure Azure Public IP DNS Zone Azure Database for PostgreSQL Azure Cache for Redis Azure Kubernetes Services Azure Database for PostgreSQL Azure Kubernetes Services Azure Cache for Redis Azure Database for PostgreSQL Azure Kubernetes Services Azure Cache for Redis Azure Database for PostgreSQL Azure Kubernetes Services Azure Cache for Redis Azure Database for PostgreSQL Azure Kubernetes Services Azure Cache for Redis
  • 9.
    HarvestMark, creates technologysolutions that food producers, government agencies, and retailers use to track quality and boost food safety. When its former cloud provider entered the food retail market, HarvestMark had to find an alternative that would eliminate its retail customers’ concerns and migrated to Azure Database for PostgreSQL. Migration from AWS to Single Server Migrating to Azure in two hours HarvestMark provides mission-critical solutions to assess food quality and trace contamination across the supply chain. HarvestMark’s original solution ran on AWS Aurora, but when Amazon acquired a major grocery chain, HarvestMark’s customers grew concerned about conflict of interest and data security. HarvestMark chose to move to Azure because of its breadth of capabilities and services and global support. The migration was seamless, completing in two hours with no disruption to customers. 20% decreased costs and increased customer trust HarvestMark and its customers have benefitted from Azure Database for PostgreSQL’s high performance and strong security. After the migration, cloud hosting service costs decreased by 20%. “We took an instance of the database, copied it to Azure, then spun it up in the Azure managed PostgreSQL environment. It happened flawlessly in two hours.” – Todd Berg, Head of Product and Customer Success, HarvestMark Read the case study IaaS VM(s) HarvestMark Application CRUD Azure Database for PostgreSQL Master Azure Database for PostgresQL Secondary Replica HarvestMark Analytics/Reporting IaaS VM(s)
  • 10.
    Shipping logistics companymigrated 9 TB data from Amazon RDS to Azure Database for PostgreSQL Hyperscale (Citus). Database runs mission-critical aspects of their business, including freight pricing comparisons and optimizations through order analysis and shipping tracking analytics. Faced issues with Amazon RDS scalability and performance of analytics rollups. Hyperscale (Citus) was a great choice for the mixed transactional/analytical workload with heavy use of rollup queries and scheduled processing jobs. Hyperscale (Citus) enables them to future- proof their database, as they project 50%+ annual growth. Migration from AWS to Hyperscale (Citus) Azure Database for PostgreSQL Analytics and pre-aggregation Data normalization Internal Applications 3rd party services End users Application Servers Redis cache Data ingest pipeline
  • 11.
  • 12.
    Oracle to Postgres Migration PostgreSQLhas become a primary destination for Oracle workloads Avoid lock-in with open-source PostgreSQL – not a forked version Benefit from cloud scale, built-in intelligence, and integration with the Azure ecosystem Lower total cost of ownership (TCO) Similarities between Oracle and PostgreSQL ease migration effort Leverage Ora2PG, a free tool, to automate most schema and app changes Learn more with our detailed migration guide
  • 13.
    Chevron, one ofthe world’s largest oil and gas companies, chose Azure Database for PostgreSQL to replace Oracle in its 12 Documentum environments worldwide. Documentum Migration Migration to Azure Database for PostgreSQL Documentum is a critical application for engineering and operational workflows at Chevron, storing important information including oilfield maps and engineering drawings When OpenText decided to move their Documentum content management platform away from Oracle to optimize on PostgreSQL, Chevron turned to Azure. Thanks to a strong partnership across Microsoft, OpenText, and Chevron, they successfully deployed the OpenText solution on Azure Database for PostgreSQL and migrated the data from on-premises Oracle to Azure Chevron has migrated 12 instances across the globe to Azure Database for PostgreSQL Azure Database for PostgreSQL Azure DevOps Azure Files Hub Vnet Spoke Vnet Node 3 Node 2 Node 1 User Access CD CI On-Prem ExpressRoute
  • 14.
  • 15.
  • 16.
    Transactional applications Why use AzureDatabase for PostgreSQL for transactional apps? Robust support for many data types, including time-series data and semi- structured data with JSONB Postgres transactions are ACID (Atomicity, Consistency, Isolation, and Durability) compliant, ensuring strong consistency for apps that must be always up to date Enjoy high throughput OLTP via Hyperscale (Citus), for apps with thousands or tens of thousands of transactions per second. Benefit from cloud scale, built-in intelligence, advanced security and compliance, high availability, and integration with the Azure ecosystem
  • 17.
    Banking Platform Building acloud-native banking platform Finxact provides banks with a modern approach to their system of record – the core services that handle deposits, loans, and other banking functions. Their cloud-native architecture ensures they can meet the demands of modern banks – massive scale, performance, high availability, and ability to meet regulatory requirements. Finxact leverages managed open-source services, including Azure Kubernetes Service and Azure Database for PostgreSQL. Benefits of Azure Database for PostgreSQL Azure Database for PostgreSQL is used as a relational data store for Finxact’s core processing service. They leverage JSON data types, thanks to Postgres’ support for JSONB, enabling a flexible data model. Service availability is crucial. Azure Database for PostgreSQL is backed by a 99.99% SLA, but Finxact also deploys their database across multiple Availability Zones to provide an even higher level of availability. “The availability of open-source services on Azure enabled Finxact to leverage the most advanced solutions to support our customers’ business needs at massive scale.” – Frank Sanchez, CEO, Finxact Read the case study Azure files Customer 1 Public Subnet xxxxx/xx Azure Bob Storage Azure Database for PostgreSQL OLAP Azure Database for PostgreSQL OLAP Azure files INTERNET Azure DNS Replica Replica Replica Public Subnet xxxxx/xx Public Subnet xxxxx/xx Bastion Host AKS Namespace 1-n Bastion Host Namespace 1-n Bastion Host Namespace 1-n Availability Zone 1 Availability Zone 2 Availability Zone 3 Azure Public Load Balancer Customer n Public Subnet xxxxx/xx Azure Bob Storage Azure Database for PostgreSQL OLAP Azure Database for PostgreSQL OLAP Customer 1 Public Subnet xxxxx/xx Azure Bob Storage Azure Database for PostgreSQL OLAP Azure Database for PostgreSQL OLAP Public Subnet xxxxx/xx Public Subnet xxxxx/xx Bastion Host AKS Namespace 1-n Bastion Host Namespace 1-n Bastion Host Namespace 1-n Availability Zone 1 Availability Zone 2 Availability Zone 3 Azure Public Load Balancer Customer n Public Subnet xxxxx/xx Azure Bob Storage Azure Database for PostgreSQL OLAP Azure Database for PostgreSQL OLAP
  • 18.
    Postgres powers connectedpassenger cars Car manufacturer had monolithic existing system to power their connected vehicle services. Oracle history and open source preference led them to choose PostgreSQL as they moved to the cloud. Modernized by replacing their old system with a cloud-native, microservices based system powered by Azure Database for PostgreSQL and Azure Kubernetes Service. Hundreds of AKS clusters power dozens of applications users interact with in passenger cars, including navigation, entertainment, and a virtual assistant. Postgres stores almost all backend data. For example, Postgres databases store the mapping of which customers have subscribed to each service offered by the platform - a cornerstone of the overall system. Azure Database for PostgreSQL provides advanced security for sensitive data, high availability for mission-critical services, and cloud scale. Connected Vehicle Backend Azure Kubernetes Service Azure Kubernetes Service Azure Kubernetes Service Azure Kubernetes Service Azure Kubernetes Service Azure Kubernetes Service Azure Kubernetes Service Azure Kubernetes Service Azure Kubernetes Service Azure Kubernetes Service
  • 19.
    Robert Bosch GmbHis an engineering and technology company which creates products and services across Mobility Solutions, Industrial Technology, Consumer Goods, and Energy and Building Technology. With the goal of saving lives, Bosch turned to Azure to help build a wrong-way driver warning service. Vehicle Safety App Keeping drivers safe using data As they set out to solve the problem of drivers going the wrong way on highways, Bosch knew they could not compromise when it came to real- time speed and precision of location data. Bosch built a solution using Azure managed services, including Azure Database for PostgreSQL, Azure Kubernetes Service, Azure Cache for Redis, Azure Databricks, and more. Leveraging PaaS services freed Bosch’s small development team from time spent managing infrastructure. Building a cloud-native application Azure Database for PostgreSQL delivers a highly available relational database that requires almost no administration, saving them time and costs. Azure Database for PostgreSQL seamlessly integrates with services like Azure Kubernetes Service and Azure Databricks. The solution ingests 6M requests per day from devices emitting GPS data and from partner systems. By running on Azure, Bosch improved the average time to calculate whether a driver is going the wrong way to 60 milliseconds. Wrong-way driver warning services Azure Kubernetes Service Kafka on Azure HDInsights Push servicer Virtual network security Virtual API Management Virtual Key Vault Azure Data Explorer Azure Monitor Azure Cache for Redis Azure Database for PostgreSQL Azure Databricks Continuous Map updates Azure Container Registry Azure App Service Azure App for Containers Azure AD authentication Read the case study
  • 20.
    Build apps tofacilitate retail transactions Azure Database for PostgreSQL is often used in retail applications; for example, storing point of sale data, facilitating e-commerce transactions, or powering inventory management systems. Here, a large grocery chain uses Azure Database for PostgreSQL for an app that distributes data on prices, promotions and product images to checkout tills in around 4,000 stores. Updates happen in near real time, and cannot have a high impact on the network, as the network is used for many different purposes, including card payments. There must be consistency across stores even while updates are being made centrally to prices in the PostgreSQL database. A mechanism similar to Kafka offsets was used to achieve consistency, and PostgreSQL was selected as it supports this. The current offset is a pointer to the last record sent to the device in the most recent poll. In-store devices poll APIs for updates using offsets. Updates up to a maximum offset are sent to a server in each store which, in turn, distributes the updates to tills. Updates to price and product data are published to a HTTP endpoint. The data is inserted into the PostgreSQL database, with an offset assigned. Retail Store App Azure Database for PostgreSQL Azure Kubernetes Service API Management Services Application Gateway On-Premises Tills connect to a server in each store
  • 21.
    Azure Swiss Re, oneof the world’s largest reinsurers, uses Azure PaaS services, including Azure Database for PostgreSQL, to power a digital transformation that includes the modernization of business-critical financial systems. Java App Modernization Simplifying development with Azure Swiss Re has built new Java-based financial apps and migrated existing ones using Azure Spring Cloud, a fully managed infrastructure for Spring Boot applications. Azure supports the company’s strict security and regulatory requirements, and allows developers to develop and deploy solutions faster. The team can store and retrieve information in Azure Database for PostgreSQL with a simple Spring Data JDBC call. For persistency, any data managed in their microservices is stored in PostgreSQL. Azure Database for PostgreSQL and Azure Spring Cloud enable Swiss Re’s developers to focus on writing apps, while Azure takes care of scaling, security, compliance, and high availability. Read the case study Azure Database for PostgreSQL Database Azure Key Vault Key Vault Azure AD Tenant Business User Cloud fair Gateway Azure Spring Cloud Spring Cloud Gateway Spring Boot Back in Servers Spring Boot Azure Monitor Applications Insights Log Analysis Workspace Azure Storage Static Content
  • 22.
    Build highly scalable,enterprise-grade apps with Hyperscale (Citus) Government agency responsible for a country’s tax administration built their electronic invoice and tax payment settlement systems on Azure Database for PostgreSQL Hyperscale (Citus). Chose Hyperscale (Citus) because of a preference for open source and existing Postgres skillset, along with a need for scale – one app is ~1PB and data volume is expected to grow 50% over the next 2 years, with thousands of concurrent users. Performance and high availability are key for mission-critical apps that serve as primary sources of information for many teams across the agency. Data model consists of 10-15 large tables, with an identifier for invoice, allowing for JOINs. Invoice ID is used as central distribution key. Created monthly partitions as most queries have a time dimension. Electronic Invoice Application XML Validates Client Invoice Taxpayer Query process Metadata Taxpayer Data Extracted in process Databricks process Azure Database for PostgreSQL Taxpayer’s statement weekly ADLS Event Kafka Event Kafka on Azure HDInsight
  • 23.
  • 24.
    Geospatial aware applications Why use AzureDatabase for PostgreSQL for geospatial aware apps? Azure Database for PostgreSQL is often used for apps with a location component – for example, route optimization, fleet monitoring, and supply chain management Robust support for many data types, including time-series data, JSONB, and geospatial data with PostGIS Postgres transactions are ACID (Atomicity, Consistency, Isolation, and Durability) compliant, ensuring strong consistency for apps that must be always up to date Enjoy high throughput OLTP via Hyperscale (Citus) Benefit from cloud scale, built-in intelligence, advanced security and compliance, high availability, and integration with the Azure ecosystem
  • 25.
    Helsinki Region TransportAuthority (HSL) is responsible for over 1 million public transportation journeys per day in Finland, across bus, train, Metro, tram, and ferry services. HSL replaced its on-premises Postgres solution with Azure Database for PostgreSQL Hyperscale (Citus), dramatically improving performance and reducing costs. Transportation Logistics Challenges monitoring a complex network HSL employees lacked access to real-time location and geographical data on vehicles in their network, making it difficult to monitor and enforce whether operators were running on time and on schedule. They initially built a solution on-premises, but quickly ran into scale and performance challenges. The system was ingesting GPS data every second for over 2,000 vehicles, and as the database grew, so did query processing time. Better performance with 50% lower costs In less than a month, HSL replaced their on-prem Postgres database with Hyperscale (Citus) on Azure. Postgres’ rich support for time-series data and geospatial data with PostGIS made it a great fit for vehicle information such as location and arrival times, and Hyperscale (Citus) easily handles high volumes of reads and writes in near real-time. Partitioning their data vertically based on time stamps and sharding horizontally by bus ID resulted in improved performance, with queries now able to be processed instantly. Along with better performance, moving to Hyperscale has reduced operational costs by over 50%. “It was a whole different environment once we moved to Hyperscale. Queries that often took up to 10 minutes with the old system are now processed instantaneously.” – Sami Räsänen, Product Owner and Team Lead, HSL Read the case study Pulsar microservices Azure Cache for Redis Azure Database for PostgreSQL Hyperscale (Citus) Azure Database broker (mqtt.hls.fi) CANCELLATIONS SERVICE ALERTS JORE pipeline Azure Database Azure SQL Database server UI
  • 26.
    Efficiently track packagesand deliveries at scale Event-driven architecture using Azure Event Hubs collects tracking data and distributes it to business intelligence systems that power reporting. Microservices running on Azure Kubernetes Service grab tracking data from Event Hubs and perform calculations – for example, package lifecycle. With PostgreSQL’s JSONB support, data and logic can be stored in the same document. Calculations like package lifecycle don’t have to be made every time the package is scanned, and less data is stored and archived, lowering storage costs. Azure Database for PostgreSQL provides scale, high availability, and rich support for geospatial data with the PostGIS extension. Package Tracking Azure Kubernetes Service Legacy central database Azure Database for PostgreSQL Azure Event Hub Azure ExpressRoute Scan Server On-premises Event ingestion Parcel Processing Parcel Master Processing Master data ingestion Event store maintenance Azure Load Balancer
  • 27.
    For leading energycompany BP, safety is top priority. They chose Azure Database for PostgreSQL Hyperscale (Citus) to build a solution to help them meet security and safety requirements by tracking building access in real-time. Building Security Management Tracking geospatial data in real time The ability to track spatial data was crucial to the solution, which involved tracking badge access and location in real time. PostgreSQL was chosen for its strength in working with location-based data. BP needed a fully read-write database that could scale. The solution needed to ingest data in real time while serving analytics and BI with sub- second response time. Hyperscale (Citus) was a great fit for these requirements. Data insights to ensure security and safety BP built a solution using Azure Data Factory and Event Hubs for data ingestion, Azure Stream Analytics to transform real-time data into insights, and Power BI to deliver data insights via dashboards. With Hyperscale (Citus), the database delivering a customer-facing experience also became the system of record. The system can handle multiple workloads (OLAP and OLTP) at speed. Operational overhead is reduced by using a fully managed, open source Postgres database Event Hub Azure Stream Analytics Power BI Azure Data Factory Azure Database for PostgreSQL Hyperscale (Citus) Arc GIS Enterprise Azure Storage SQL Storage Koop JS
  • 28.
    Producers Cloud9, a topesports competitor, relies on data and analytics to inform the way their players train, strategize, and compete. Their Game Insights Platform, built on Azure, is a great example for companies across industries seeking to harness data for business intelligence. case study here Gaming Insights Platform Data as a competitive advantage Using Azure, Cloud9 built a real-time dashboard to help coaches and players track wins, strategies, matches, and trends over time. Cloud9 chose Azure Database for PostgreSQL as the primary database to store positional information because of PostgreSQL’s rich geolocation analysis features. A machine learning model analyzes videos of gameplay and identifies interesting parts, storing the output in Azure Database for PostgreSQL. By using a fully managed Postgres service, Cloud9 gains intelligent performance, security, and scalability without having to manage the database themselves. Azure Database for PostgreSQL seamlessly integrates with services like Azure Functions and Power BI. “We started by asking, what is the most important data we can act on that is not otherwise available to us? Then we built a pipeline on Azure to automate the process of finding it, capturing it, and making it usable.” – Mike Downey, Director of Sports Technology, Cloud9 Read the case study and watch the video to learn more Azure Monitor Azure Pipelines Azure Container Registry Docker Pull Docker Push Game data Event processing Azure Ingestion Storage Containers Microsoft Power BI Azure Key Vault Azure Container Instances Azure Database for PostgreSQL Azure Functions Azure Queue Storage Azure Blob Storage Azure Blob Storage Computer Vision
  • 29.
  • 30.
    SaaS applications Why use AzureDatabase for PostgreSQL for SaaS apps? Enjoy high throughput OLTP via Hyperscale (Citus). Many SaaS apps are multi-tenant, which make them a great fit for sharding with Hyperscale (Citus). The tenant ID makes for a natural distribution key. JSONB support makes it possible to combine relational data with semi- structured data types. Benefit from cloud scale, built-in intelligence, advanced security and compliance, high availability, and integration with the Azure ecosystem. Hyperscale (Citus) can be a good choice to power workloads where High concurrency: 50+ end users querying the database at one time, along with concurrent ingest. Fast growing app: database is hundreds of GBs and growing, SaaS app has thousands of customers and hundreds of thousands of users. Tenants need to be kept separate, but you also want the ability to run cross-tenant queries for internal monitoring.
  • 31.
    Build scalable, multi-tenantsales and marketing platforms Common solutions include email marketing and ecommerce platforms Multi-tenant architecture often with one database server per customer Easily scale during peak times (e.g. holiday season) PostgreSQL’s extensibility and support for many types of data (e.g. JSONB, time-series) make it a flexible choice Azure Database for PostgreSQL provides reliability, high availability, and performance necessary to meet customer expectations Read replicas can help improve performance and scale of read-intensive workloads e.g. BI workloads for reporting Sales and Marketing Automation Private servers Cloud Controller Service Manager Service Broker Core Resource Group Backing Services Resource Group Applications VNET Peering Connection Applications ResourceManager, Database
  • 32.
    PTC creates digitalsolutions for Industrial IoT that help manufacturing, service, and engineering companies connect, monitor, analyze, and act on data in new ways. IoT Development Platform Industrial IoT Platform PTC’s ThingWorx solution is an Industrial IoT platform with tools to help businesses connect assets, build apps and augmented reality experiences, analyze IoT data, manage connected systems, and more. Common use cases include remote asset monitoring, predictive maintenance, remote service, and equipment optimization. Architecture and database Thingworx is a multi-tenant SaaS app. A distributed architecture allows for global management of consolidated statistics and KPIs, while local managers get focused, real- time information on their specific locations. PTC customers can choose their preferred database, and Azure Database for PostgreSQL is a popular choice. High availability, security, and performance are key requirements in the Industrial IoT space. Virtual Network Azure Database for PostgreSQL Experience Repository Experience Repository
  • 33.
    Global customer-facing webapp App helps customers book car rentals – choose car, schedule and manage rentals. Java web app (Spring Boot) uses Azure Database for PostgreSQL Single Server and Azure Kubernetes Service. App will have multi-tenant architecture as car rental service expands globally, with regional deployments. Azure Database for PostgreSQL chosen due to existing Postgres skillset and open source preference, in addition to PaaS benefits like high availability. Security is a top priority as the app handles confidential data, such as PII and internal business data. Customer managed key encryption was a requirement. Car Rental App Corporate network, Data center External access Other external data centers InternetZone Container Registry InternetZone Azure Load Balancer Azure InternetZone Azure Load Balancer Container Registry VNet Microsoft KeyVault ServiceEndpoint Microsoft SQL ServiceEndpoint Azure Kubernetes Service VNet Microsoft KeyVault ServiceEndpoint Microsoft SQL ServiceEndpoint Azure Kubernetes Service
  • 34.
  • 35.
    Real-time applications Why use AzureDatabase for PostgreSQL for real-time apps? Robust support for time-series data as well as JSONB, making it possible to combine relational data with semi-structured data types Hyperscale (Citus) offers high throughput OLTP as well as sub-second performance leveraging parallelism Benefit from cloud scale, built-in intelligence, advanced security and compliance, high availability, and integration with the Azure ecosystem Hyperscale (Citus) can be a good choice to power workloads where: Mixed workloads with transactions and analytics (e.g. UPDATE, DELETE in addition to INSERT/COPY) High concurrency: 50+ end users querying the database at one time, along with concurrent ingest Smaller datasets (< 10 TB) End users need to ask questions with many parameters (i.e. query with many different column filters)
  • 36.
    BNY Mellon isthe world’s largest custodian bank and asset servicing company. Focused on helping their clients use data insights to make better decisions, BNY Mellon turned to Azure Database for PostgreSQL Hyperscale to build an integrated data and analytics platform. Real-Time Operational Analytics Helping clients make data-driven decisions BNY Mellon’s Distribution Analytics solution helps asset managers understand US investment market dynamics and forecasts based on predictive models. Terabytes of structured, semi-structured, and unstructured data, from sources on-prem and in multiple clouds, are unified in Azure. Azure Database for PostgreSQL Hyperscale (Citus) is used for both transactional and analytical data processing. Benefits of Hyperscale (Citus) Azure Database for PostgreSQL provides a fully managed, highly available, and flexible database that allows BNY Mellon’s team to leverage existing Postgres skills. Hyperscale (Citus) enables them to automatically scale out multiple instances of the data to optimize READ and WRITE operations, using parallel processing. PostgreSQL’s support for JSONB lets them work with structured and unstructured data types. Watch the video to learn more Azure Database for PostgreSQL Metadata service Sales Analytics service Query service Distribution Analytics service Azure Cache For Redis On-premises sales and redemption data Consul DVAcontainer Extract Service Slice service Load service Input.slice queue Input. Slice queue Dispatch service Disk On-premises security Master information Third-party SaaS services Distribution Analytics users interface in another cloud
  • 37.
    Provide low latencyinteractive dashboards for end user queries Data from various sources (e.g. sales, marketing, support) gets ingested into Hyperscale (Citus). Azure Databricks or Azure Data Factory is used as ETL engine to clean and transform data. Final datasets exposed to end users via interactive, real-time analytics dashboards, such as Metabase or Power BI. Query parallelism and flexibility in creating indexes can lead to huge performance gains. Store semi-structured data using JSONB data type. JSONB can provide 6-7x compression. Scale each node’s compute and storage independently to optimize costs. Horizontally scale with no downtime. Read this blog to learn more Customer Facing Dashboards Azure Databricks Spark Cluster Sales Data User Events Data Marketing Data Hyperscale (Citus) on Azure Database for PostgreSQL Analytics Data Store Metabase Dashboards Data Transformation & Cleansing
  • 38.
    C.H. Robinson solveslogistics problems for companies across the globe and across industries, from the simple to the most complex. With $21 billion in freight under management and 19 million shipments annually, they are one of the world’s largest logistics platforms. They provide a bidding marketplace between shipping fleet providers and customers seeking to ship products and chose Azure Database for PostgreSQL Hyperscale (Citus) to power their pricing engine workload. Pricing Engine Mission-critical workload faced limits on-prem C.H. Robinson leveraged an on-prem Postgres database to power their mission-critical pricing engine. Using a proprietary reinforcement learning engine, they use data to predict pricing for new bids. PostgreSQL’s JSONB support was critical, as they store large volumes of semi-structured data. When they faced scale and performance issues with the on- prem Postgres database, they migrated to Azure Database for PostgreSQL Hyperscale (Citus). Benefits of Hyperscale (Citus) Hyperscale (Citus) gave them increased scale and a 1.5x performance improvement over single-node Postgres, while allowing them to simplify their architecture by combining OLTP and OLAP workloads. Additionally, the engine powers customer-facing dashboards which surface bids, pricing history, deals won, and revenue metrics. Data scientists can also use this engine to perform dynamic quote modeling to drive informed decision-making. Loads/Quotes Topic Win Matching Topic Win Matching App Database API ELT Process Azure Database for PostgreSQL Hyperscale (Citus) Legacy Apps DS Ad-Hoc Queries ELT Retry Process Loads/Quotes Retry Topic Loads/Quotes Retry Topic Other Bidding Apps Future Applications API History Topic
  • 39.
    Build IoT appsthat scale to millions of devices Enable your IoT app to query both historic events and the current state of devices, using both UPDATEs and JOINs. Relational databases like Postgres give you relational features such as JOINs. Hyperscale (Citus) lets you ingest and query concurrently and at scale. It’s a good fit for apps with a need for concurrency, real-time, high-throughput ingest, and fast query response times. Device ID often used as sharding key. Ingest and process IoT telemetry in real time to power event-driven applications and dashboards. With Hyperscale (Citus), we’ve seen customers with databases in the tens of TBs, as well as those with millions of devices. Tests with Hyperscale (Citus) have simulated 5M devices with 2B measurements/hour with P95* <500ms for non-hierarchical queries and P95 < 2s for hierarchical queries. IoT Applications Ingress ASA Egress IoT Hubs Service Bus IoT Microservices Indexers Query Processors PostgreSQL Hyperscale Cluster Company Workers Structured Instance Events Ingestion Query Life Cycle Events Microsoft Power BI PG Bouncer *P95 – query performance in 95% of cases
  • 40.
    © 2021 MicrosoftCorporation. All rights reserved.