Multinational Powers Client Success with Amazon DynamoDB
- October 14, 2019
Providing services to Fortune organizations means you want your services to be top-notch themselves. That’s what led this Fortune 500 professional services company that provides strategy, consulting, digital, technology, and operations services to reach out. As a multinational organization helping many enterprise clients, the firm wanted a cloud tool like Amazon DynamoDB to centralize the data collection of client projects in the cloud, with an aim to gain visibility into global delivery while maintaining uniformity across projects, helping better ensure project success. The company also wanted to expand its cloud portfolio and sought help from an experienced AWS consulting team.
To help the professional services firm meet its goal, our AWS consulting team developed a Delivery Management application. As the application is built completely on the Serverless framework, maintenance and administrative costs are minimized. All client and project-related information are stored in Amazon DynamoDB; the NoSQL database is a popular choice for serverless applications as it features auto-scaling that matches your application load, offers pay-as-you-go pricing, automated backups, is a completely managed service, and most importantly, is a serverless offering itself. In addition, the team implemented Jenkins code pipelines, thereby enabling continuous integration and continuous delivery (CI/CD) and rapid application development. With it, the customer can now track clients and their associated projects, build workflows, notify users of steps/tasks, generate reports, and provide visibility to executives and internal/external users.
Management at the firm sought metrics around how many clients it has under management, associated projects, which of those projects had gone through a thorough review, and which employees were assigned to which projects.
Unable to provide these metrics, management was not able to ensure consistent delivery and review methodologies across projects. Hence, the customer sought out a solution that could consolidate this data for the AWS projects running throughout the company.
The multinational firm wanted a serverless framework due to the immense benefits the framework offers. Specifically, in building an application that could track all its AWS projects, the serverless options presented by AWS were a natural fit due to their maturity; AWS also directly addresses security, scalability, availability, reliability, performance and other architectural concerns in its serverless offerings. Moreover, as the Delivery Management application is built completely on the AWS Serverless framework, DynamoDB was a good choice as its a NoSQL database and completely a managed service. With their deep AWS and serverless experience, the team was able to design and deploy the serverless application this customer needed within its timeline in the AWS cloud.
Designing a Data Model for Customer Success
Keeping the anticipated querying behaviors and access patterns of the users in mind, the AWS consulting team designed a data model. Using DynamoDB as efficiently as possible, the team aimed to have a single table and individual items for each client, project, and workflow. To accomplish this, they used unique client IDs as our primary key and item type with unique IDs for projects and workflows as our sort key, consistently resulting in a unique composite key. The team then created Global Secondary Index with a different partition key and sort key to get a completely different view of the data. For example, Partition Key: project-name; Sort Key: location; Access Pattern: Get projects by name and order by location. This ensured a more homogenous data distribution in the table.
See the data model design with sample items in Figure One below.
Fig: DynamoDB Data Model Design (Flux7 Figure)
Results and Benefits
By using Amazon DynamoDB in the serverless framework, the consulting team helped this professional services firm centralize data collection of client projects in the cloud. The data model provided a more homogeneous way to distribute data other than the tabular relationships giving better insights into the firm’s clients, their projects and build workflows. This helped the firm’s management to consolidate data, ensure consistent delivery, and review methodologies across its projects to achieve maximum business value and customer satisfaction.
The serverless framework reduced the number of activities required in a traditional framework. In fact, the following table shows what activities are reduced in a serverless framework compared to those in a traditional framework:
|Framework minor updates||x|
|Framework major updates||x||x|
|Code bug fixes||x||x|
Optimized for cost, the solution helped save the firm money on recurring fees. More importantly, with Amazon’s fully managed NoSQL database DynamoDB, the serverless framework freed this multinational service firm from the time needed to manually manage services while providing automation that allowed its staff to focus on analytics to drive business and customer success.