AWS Step Functions
Which services should I use to build a decoupled architecture?
AWS Machine Learning Services
Design a Multi-Tier Solution
When To Go Serverless
AWS Migration Services
Domain One of The AWS Solution Architect Associate exam guide SAA-C03 requires us to be able to Design a multi-tier architecture solution so that is our topic for this section.
We cover the need to know aspects of how to design Multi-Tier solutions using AWS services.
Want more? Try a lab playground or do a Lab Challenge!
- Learn some of the essential services for creating multi-tier architect on AWS, including the Simple Queue Service (SQS) and the Simple Notification Service (SNS)
- Understand data streaming and how Amazon Kinesis can be used to stream data
- Learn how to design a multi-tier solution on AWS, and the important aspects to take into consideration when doing so
- Learn how to design cost-optimized AWS architectures
- Understand how to leverage AWS services to migrate applications and databases to the AWS Cloud
In this section, we'll describe the Amazon Pinpoint Service and talk about how and why we should use it.
So what is Amazon Pinpoint? By definition, Amazon Pinpoint makes it easy to run targeted campaigns to drive user engagement in mobile apps. Amazon Pinpoint helps you understand user behavior, define which users to target, determine which messages to send, schedule the best time to deliver the messages, and then track the results of your campaign.
Mobile application developers want their app to be successful. Marketers want to be able to send the right data to the right customers at the right time. Applications can send data to Amazon Pinpoint about app usage and user habits, when they are using the app, how long they're engaged, how often do they use the app or anything else they want to know. Marketing professionals can use Amazon Pinpoint Console to define campaign specifics and see data metrics, charts, and graphs to help them determine the effectiveness of campaigns. It allows them to create targeted messages that are more likely to interest the users, and less likely to cause them to unsubscribe to notifications, leading to more effective engagement and increased purchasing.
An application developer can build a rich and exciting app, and get it onto the market quite easily, but once it's out there, how do you build interest? Users may open the application once, and then never use it again. They may use it infrequently, or just the free version. Users may decide that your notifications don't interest them, and opt out of any additional communications regarding the application. Amazon Pinpoint can help developers address these concerns proactively. Amazon provides SDKs that allow you to integrate your app with Amazon Pinpoint. Once the SDK is integrated, you have full API and CLI support, and can then instrument your app to provide information to Amazon Pinpoint, allowing the developer or marketing professionals to access the data collected, and develop a marketing strategy to improve the performance of the application in the market.
Marketing professionals face the daunting task of sifting through massive amounts of data and then correctly determining what is valuable and what is not. They need to figure out what's working and how to make improvements. They have to decide how to frame messages, when to send them and determine if the message is effective. Marketers need to know if the app needs more features, or if the application interface needs some tweaking. The Amazon Pinpoint console creates a space where marketers have a rich graphic interface that allows them to analyze data, build meaningful notifications, segment users, and conduct testing to verify effectiveness.
Now, let's take a look at some of the important features of the Amazon Pinpoint service. Integrating the AWS Mobile SDK into your mobile applications enables Pinpoint to collect standard usage and device attributes, as well as custom attributes defined by you, so any settings specific to your app or specific to the users using your application can be created to collect more relevant data about user and app usage. These attributes can then be used to create targeted push notifications. Amazon Pinpoint also provides graphical dashboards for viewing its real-time analytics including information gathered about user acquisition, engagement, and demographics, along with custom events, and campaign funnels. The dashboards make it easier to see and understand how users are using your applications. As discussed, Pinpoint collects data that you can use to determine key target segments. It also enables you to do this using data collected from other AWS service, like S3, or Redshift. You can also import data in CSV and JSON formats into Amazon S3, then into Pinpoint from S3. Whether you're collecting data via Amazon Pinpoint, or importing data from third-party sources, or both, Pinpoint gives you all the tools you need to build effective segments for targeted notifications. Pinpoint also includes templates for standard and silent notifications. You can personalize messages with your custom attributes, like user game level, ranking, or location. Campaign scheduling is another useful feature. It offers flexibility by allowing you to send notifications immediately, or schedule them to occur at a certain time, either once, hourly, daily, weekly, or monthly, and then choose to deliver them based on a user's time zone. You can even set quiet hours, and limit how often a message can be sent to specific users. To determine your campaign's performance, Amazon Pinpoint includes campaign metrics in the dashboard, such as number of users, notifications delivered, open rate, which means how often the app is opened as a result of the campaign, and the opt-out rate for the push notification. If you have a third-party analytics system, you can also export the data collected from Pinpoint and then import it for analysis using your existing analytics system. With the A/B testing feature, you can send different messages and use different campaign schedules for subsets of your users, and then analyze the results and use the most successful message for your target segment. We've talked about how useful funnel analytics can be for marketing campaigns. Amazon Pinpoint enables you to define campaign funnels by defining up to five steps in each funnel. By defining discrete steps for your campaign, you can collect user participation information that will be displayed in a graph on your funnel dashboard. Once you've collected the data, you'll see how users behave during the campaign, and determine the success of the campaign.
Andrew is fanatical about helping business teams gain the maximum ROI possible from adopting, using, and optimizing Public Cloud Services. Having built 70+ Cloud Academy courses, Andrew has helped over 50,000 students master cloud computing by sharing the skills and experiences he gained during 20+ years leading digital teams in code and consulting. Before joining Cloud Academy, Andrew worked for AWS and for AWS technology partners Ooyala and Adobe.