When you set up alerts in MongoDB Management Service, you now have the option to send them to PagerDuty. Like MMS, PagerDuty helps you increase application uptime and identify performance issues. With this new integration, you can set up multiple on-call schedules in PagerDuty to rotate your MMS alerts to different members of the team.
MongoDB Management Service tracks dozens of different MongoDB-specific metrics, providing you with visibility into the performance of you MongoDB system. Using MMS, you can create alerts when particular statistics are out of range. While previously you were limited to setting email and mobile alerts to individual members of the team, you can now rotate those alerts around your team, giving everyone time off by easily scheduling on-call rotations. And with PagerDuty, there are automated escalations so you can be sure that you’ll never miss an alert.
Meet Alvin Richards: Technical Director for Performance and Quality
Meet Alvin Richards, MongoDB’s Technical Director for Performance and Quality. What is your role at MongoDB? I’m MongoDB’s Technical Director for Performance and Quality. I work in the engineering department, but my job is cross-functional across all our products. I make sure everything we produce is high quality, acceptable, correct, and performant. Where were you before MongoDB? Why did you choose to come to MongoDB? I’ve worked at a variety of small companies and startups. Right out of college I started at Oracle, a little company building this new thing called a relational database. Soon Oracle became the market leader in that space; we’d completely changed how people thought about data. After sixteen years I left to work at a variety of startups and pursue a second degree. When I joined MongoDB, I felt like it was the way Oracle had been in the eighties; we were disrupting the ways people thought about their data. We were fixing areas where relational theory had broken down and now we’re reinventing the industry. I’ve been here for four years and we’ve just only started. What’s your hometown? That’s a good question. My heart says San Francisco, but my birth certificate says London. Right now I live in Belmont, California. Did you have previous experience using MongoDB before you arrived? If so, how are things different now that you work at MongoDB? My education was Dwight asking me to build a 100-node cluster for a conference in 6 weeks. So it was a baptism of fire in learning the technology, how to deploy something that size on EC2, figuring out LVM versus MD and many other issues. I love we now have a formal education program… but sometimes I think the new employees are missing out on an experience. Have you had any personal projects where you’ve used MongoDB? I’m hacking my Linn Magik DS at home. I think I can do better than the Frankenstein set of technologies the vendor thinks I have to use to simply play music over a network. Bike or public transportation to work? Electric car. I get to hack the system by being in a car alone and using the carpool lane. That’s California! What’s a typical day (or week) for you? We work in a form of organized chaos because we’re developing a new product and disrupting an existing space. You need to be able to think on your feet but keep the mission in mind. Each day starts with a triage of what happened overnight, covering everything from customer cases, performance runs in the lab, requests from the field or partners. It’s then trying to find the balance of keeping the short term moving but make progress on your strategic goals (i.e. keep your eyes on the prize). What do you love most about MongoDB? The people. There were only twelve of us when I joined and now we’re 340. Part of the joy of being here is watching the growth of not only the organization but also the people. New hires mature and take on new roles and opportunities. It’s very exciting to watch. What’s the most challenging aspect of your job? Solving the next problem. I could say starting as the initial employee in California and building that team from scratch. Then going to Europe for two years and doing the same thing for a whole continent. We had to go to community events, contact existing customers and find new ones, join meetups, and try to figure out what was happening when and where and why. You have to do literally everything. I’m doing the same with my new team, starting from scratch and building in three locations (New York, Palo Alto and Austin) at the same time. What’s one of the most rewarding experiences you’ve had working here so far? Random people coming up to me after to talk or meetup to tell me that I’ve helped them think through the problems they have been having. What’s your favorite Seamless lunch order? BLT from ‘wichcraft Name one secret skill you have, unrelated to work. Debugging a 1965 Datsun Fairlady. A rare but critical skill to ownership. Kindle or book? What’s your favorite book? Always a book, preferably on a beach. I’m not sure if this is my favorite but I enjoy “Season of Blood” by Fergal Keene immensely. Describe your perfect weekend. The kids don’t wake me up too early (they’re 11 and 8). Southampton wins a soccer game. I get to spend time with the family and dog (a 2 year old Hungarian Vizsla). Maybe playing some Apex Twin or Underworld a little too loudly on the turntables. So what did you get that second degree in? I graduated with a degree in computer science when I was 19. I worked at Oracle for about 7 or 8 years, and then I realized that tech was here to stay, and I could really do this job for the rest of my life. So I decided to go out and do what I wanted before things got too complicated (worrying about a family, marriage, etc.) I got a degree in photography, then went off to travel the world and take photos. I did a lot of work for the IRCR (International Committee of the Red Cross). They were fun times and a great way to collect stories to tell the grandchildren, but the bug of technology was never far away for me. If you're interested in joining the MongoDB Team there many open positions available in Engineering, Sales, Marketing, and Business Development. To learn more about open roles at MongoDB, please visit the MongoDB Careers Page .
Modernize your GraphQL APIs with MongoDB Atlas and AWS AppSync
Modern applications typically need data from a variety of data sources, which are frequently backed by different databases and fronted by a multitude of REST APIs. Consolidating the data into a single coherent API presents a significant challenge for application developers. GraphQL emerged as a leading data query and manipulation language to simplify consolidating various APIs. GraphQL provides a complete and understandable description of the data in your API, giving clients the power to ask for exactly what they need — while making it easier to evolve APIs over time. It complements popular development stacks like MEAN and MERN , aggregating data from multiple origins into a single source that applications can then easily interact with. MongoDB Atlas: A modern developer data platform MongoDB Atlas is a modern developer data platform with a fully managed cloud database at its core. It provides rich features like native time series collections, geospatial data, multi-level indexing, search, isolated workloads, and many more — all built on top of the flexible MongoDB document data model. MongoDB Atlas App Services help developers build apps, integrate services, and connect to their data by reducing operational overhead through features such as hosted Data API and GraphQL API. The Atlas Data API allows developers to easily integrate Atlas data into their cloud apps and services over HTTPS with a flexible, REST-like API layer. The Atlas GraphQL API lets developers access Atlas data from any standard GraphQL client with an API that generates based on your data’s schema. AWS AppSync: Serverless GrapghQL and pub/sub APIs AWS AppSync is an AWS managed service that allows developers to build GraphQL and Pub/Sub APIs. With AWS AppSync, developers can create APIs that access data from one or many sources and enable real-time interactions in their applications. The resulting APIs are serverless, automatically scale to meet the throughput and latency requirements of the most demanding applications, and charge only for requests to the API and by real-time messages delivered. Exposing your MongoDB Data over a scalable GraphQL API with AWS AppSync Together, AWS AppSync and MongoDB Atlas help developers create GraphQL APIs by integrating multiple REST APIs and data sources on AWS. This gives frontend developers a single GraphQL API data source to drive their applications. Compared to REST APIs, developers get flexibility in defining the structure of the data while reducing the payload size by bringing only the attributes that are required. Additionally, developers are able to take advantage of other AWS services such as Amazon Cognito, AWS Amplify, Amazon API Gateway, and AWS Lambda when building modern applications. This allows for a severless end-to-end architecture, which is backed by MongoDB Atlas serverless instances and available in pay-as-you-go mode from the AWS Marketplace . Paths to integration AWS AppSync uses data sources and resolvers to translate GraphQL requests and to retrieve data; for example, users can fetch MongoDB Atlas data using AppSync Direct Lambda Resolvers. Below, we explore two approaches to implementing Lambda Resolvers: using the Atlas Data API or connecting directly via MongoDB drivers . Using the Atlas Data API in a Direct Lambda Resolver With this approach, developers leverage the pre-created Atlas Data API when building a Direct Lambda Resolver. This ready-made API acts as a data source in the resolver, and supports popular authentication mechanisms based on API Keys, JWT, or email-password. This enables seamless integration with Amazon Cognito to manage customer identity and access. The Atlas Data API lets you read and write data in Atlas using standard HTTPS requests and comes with managed networking and connections, replacing your typical app server. Any runtime capable of making HTTPS calls is compatible with the API. Figure 1: Architecture details of Direct Lambda Resolver with Data API Figure 1 shows how AWS AppSync leverages the AWS Lambda Direct Resolver to connect to the MongoDB Atlas Data API. The Atlas Data API then interacts with your Atlas Cluster to retrieve and store the data. MongoDB driver-based Direct Lambda Resolver With this option, the Lambda Resolver connects to MongoDB Atlas directly via drivers , which are available in multiple programming languages and provide idiomatic access to MongoDB. MongoDB drivers support a rich set of functionality and options , including the MongoDB Query Language, write and read concerns, and more. Figure 2: Details the architecture of Direct Lambda Resolvers through native MongoDB drivers Figure 2 shows how the AWS AppSync endpoint leverages Lambda Resolvers to connect to MongoDB Atlas. The Lambda function uses a MongoDB driver to make a direct connection to the Atlas cluster, and to retrieve and store data. The table below summarizes the different resolver implementation approaches. Table 1: Feature comparison of resolver implementations Setup Atlas Cluster Set up a free cluster in MongoDB Atlas. Configure the database for network security and access. Set up the Data API. Secrect Manager Create the AWS Secret Manager to securely store database credentials. Lambda Function Create Lambda functions with the MongoDB Data APIs or MongoDB drivers as shown in this Github tutorial . AWS AppSync setup Set up AWS Appsync to configure the data source and query. Test API Test the AWS AppSync APIs using the AWS Console or Postman . Figure 3: Test results for the AWS AppSync query Conclusion To learn more, refer to the AppSync Atlas Integration GitHub repository for step-by-step instructions and sample code. This solution can be extended to AWS Amplify for building mobile applications. For further information, please contact firstname.lastname@example.org .