Solution ideas
This article is a solution idea. If you'd like us to expand the content with more information, such as potential use cases, alternative services, implementation considerations, or pricing guidance, let us know by providing GitHub feedback.
This article presents a solution for using Azure services to build cloud-native applications.
ApacheĀ® and Apache Spark are either registered trademarks or trademarks of the Apache Software Foundation in the United States and/or other countries. No endorsement by The Apache Software Foundation is implied by the use of these marks.
Architecture
Download a Visio file of this architecture.
Dataflow
- Azure Kubernetes Service (AKS) is used to deploy and manage containerized applications. The orchestration uses continuous integration and delivery (CI/CD) and enterprise-grade security and governance.
- Azure Database for PostgreSQL provides a fully managed database as a service for PostgreSQL. This service offers built-in high availability and the rich feature set of Postgres.
- Azure Cache for Redis offloads database activity by managing session state and asset caching.
- Events like user movement or activity trigger functions in the Azure Functions serverless compute platform. The functions generate alerts.
- Azure Notification Hubs sends timely notifications to users on their preferred service or medium.
- Azure Synapse Analytics supplies insights into the data. Apache Spark capabilities in this analytics service provide big data processing and machine learning functionality.
- Application Insights monitors application performance for degradation or anomalies. This Azure Monitor feature also auto-scales applications to meet changing performance requirements.
- Azure Cosmos DB is used to track user interaction with applications. This fully managed NoSQL database scales as needed to meet changing demand.
- The hybrid transactional and analytical processing (HTAP) capability of Azure Synapse Link for Azure Cosmos DB integrates user data into analytics processing. The result is near real-time insight into user-app interaction.
- Power BI visualizations display predictive, real-time, and historical transaction data.
Components
- AKS allows you to quickly deploy a production-ready Kubernetes cluster in Azure.
- Azure Database for PostgreSQL is a fully managed relational database service based on the community edition of the open-source PostgreSQL database engine.
- Azure Cache for Redis is a secure data cache and messaging broker that provides high-throughput and low-latency access to data for applications.
- Azure Cosmos DB is a fully managed NoSQL database service for building and modernizing scalable, high-performance applications.
- Notification Hubs sends push notifications from any back end to any mobile device.
- Functions is a serverless compute service that lets you run event-triggered code without having to explicitly provision or manage infrastructure.
- Application Insights is an extensible application performance management service that's a feature of Monitor. You can use Application Insights to monitor live applications and continuously improve performance and usability.
- Azure Synapse Analytics is an analytics service that brings together enterprise data warehousing and big data analytics within a unified experience.
- Power BI is a suite of business tools for self-service and enterprise business intelligence. Here, it's used to analyze and visualize data.
Scenario details
Cloud-native applications are a key part of a successful digital transformation strategy. These applications use technologies like microservices, containers, managed services, and CI/CD. As a result, these apps offer advantages over other apps, such as agility, scalability, and reduced time to market.
This solution uses various cloud-native technologies:
- Containerized applications that are orchestrated by AKS
- A CI/CD experience
- The Functions serverless compute platform
- Other fully managed cloud services:
- Azure Database for PostgreSQL
- Azure Cosmos DB
- Azure Cache for Redis
The solution also provides near real-time analytics through:
- Power BI for visualizations of predictive and historical data.
- Azure Synapse Analytics, which uses Apache Spark for big data processing and machine learning.
Potential use cases
Because the cloud-native applications in this solution use Azure managed services, analytics, and machine learning, they're responsive to customer needs. These applications benefit many industries:
- E-commerce
- Content streaming
- Internet of Things (IoT)
- Government
- Education
- Finance
Next steps
To read about organizations that use cloud-native applications on Azure, see the following customer stories:
For more information about Azure Synapse Link, see these resources:
- To find out how to use Azure Synapse Link to run near real-time analytics over operational data in Azure Cosmos DB, see What is Azure Synapse Link for Azure Cosmos DB?.
- Use cases for Azure Synapse Link cover many areas. Examples include real-time personalization, predictive maintenance and anomaly detection in IoT scenarios, and supply chain analytics, forecasting, and reporting. To explore these use cases, see Azure Synapse Link for Azure Cosmos DB: Near real-time analytics use cases.
To find out more about other solution components, see the following resources: