tadaa_Customer-Reference_Logo

tadaa Case Study

2014

Tadaa—a product of menschmaschine Publishing—is an iPhone camera app featuring high-definition photo effects and editing tools. The app's developers deployed AWS across multiple regions to support 500,000 new users in less than one week.

start a python tutorial
kr_quotemark

Such growth would not have been possible without the scalability provided by AWS."

Friedemann Wachsmuth
Chief Technical Officer

The Challenge

Menschmaschine’s developers wanted to create a feature-rich mobile experience without spending resources on laborious system administration duties. "On-premises infrastructure was never really an option for us," explains Friedemann Wachsmuth, CTO at menschmaschine Publishing. The company knew it wanted a cloud provider with an established track record, flexible pricing, comprehensive managed services, international coverage, and the ability to scale up and down easily.

Why Amazon Web Services

“For our needs, Amazon Web Services (AWS) was the best match across the board,” Wachsmuth says. The decision to adopt AWS immediately reduced menschmaschine’s time-to-market for tadaa. "Instead of purchasing hardware, setting it up, and scaling it, we were able to set up testing, integration, and production environments in AWS within hours," Wachsmuth says. “We started with a set of 12 instances, four for each environment. We realized few days later that we only needed eight—and we were so glad we didn’t buy any metal. It takes some CPU power to resize a couple of million HD photos to a dozen new sizes each. No traditional hosting environment would have allowed us to accomplish this within a few days without any service interruption.”

The menschmaschine developers took a simple, iterative approach to configuring tadaa's cloud environment. "The AWS Cloud freed up a lot of resources," Wachsmuth says. "For example, when we moved from our self-administered database to Amazon DynamoDB, we eliminated the burdens of scaling in favor of predictable response times and infinite table sizes. That was a very easy business decision to make."

“DynamoDB also allowed us to have infinite table sizes,” he continues. “In our previous solutions, we carried database files of up to eight terabytes around on Amazon Elastic Block Store (Amazon EBS) volumes—not very handy. Furthermore, we don’t have to take care of redundancy and sharding strategies anymore. All this is built in for Amazon DynamoDB.”

The development team designed tadaa’s back end around a message-based architecture, to glue asynchronous services together. “Having message queues is a bit like memcache for write operations,” Wachsmuth says. “With just a bit more of complexity, scaling and handling of peaks is a lot easier—as is making changes without noticeable service interruptions.”

In addition to Amazon DynamoDB, menschmaschine also relies on Amazon Simple Storage Service (Amazon S3) for storage. The application is powered by Amazon Elastic Compute Cloud (Amazon EC2), while Amazon Elastic MapReduce (Amazon EMR) is used to create backups from Amazon DynamoDB to prevent data loss. In-memory caching is performed by Amazon ElastiCache, and Amazon CloudSearch provides search functionality. Amazon CloudFront serves as the application's content delivery network. “The amount of data to be processed is constantly growing,” Wachsmuth says. “We are finding relationships between more than 250 million anonymized contact hashes in real time, have hundreds of millions of assets on Amazon S3 and are processing an average of 2,500 messages per second. One of our three Amazon ElastiCache clusters gets 200,000 GetHits per minute, peaking at almost a million.”

Developers monitor the entire infrastructure with Amazon CloudWatch and the open-source SourceForge Ganglia system. “The best thing with Amazon CloudWatch is that it is just there,” Wachsmuth says. “You find all the data points you need, even if you did not even think about them while setting up your service. Ganglia is a great addition since it keeps summary data points as long as you want—a perfect companion to recognize long-term trends and patterns.”

When there is a shift in usage, the response is swift. "The ability to switch on different services or replicate across multiple regions allows us to grow where we need to,” Wachsmuth says. “This is crucial for us as a social network because unpredictable viral growth can happen at any time. When we suddenly got big in the United States, we just had to turn on a few more instances in the U.S. East Region instead of deploying actual hardware there."

The Benefits

Tadaa experienced an exceptionally large growth spurt in late 2012 when nearly 500,000 users converted to the application in less than one week. "Such growth would not have been possible without the scalability provided by AWS," Wachsmuth says. "Using AWS, we quadrupled the amount of photos in our system within five days."

All this was accomplished without hiring any additional staff. "We are a team of five, and four of us are engineers,” Wachsmuth says. “Our small team does not even have a dedicated person for IT operations or systems administrations, so we are saving enormous amounts of working hours by using AWS managed services," Wachsmuth says.

tadaa Architecture Diagram
tadaa Growth Chart

About tadaa

Tadaa—a product of menschmaschine Publishing—is an iPhone camera app featuring high-definition photo effects and editing tools.

Benefits of AWS

  • Quadrupled the amount of photos within five days
  • No need for additional staffing
  • Saving working hours by using AWS managed services

AWS Services Used

Amazon DynamoDB

Amazon DynamoDB is a key-value and document database that delivers single-digit millisecond performance at any scale.

Learn more >>

Amazon EBS

Amazon Elastic Block Store (EBS) is an easy to use, high performance block storage service designed for use with Amazon Elastic Compute Cloud (EC2) for both throughput and transaction intensive workloads at any scale.

Learn more >>

Amazon S3

Amazon Simple Storage Service (Amazon S3) is an object storage service that offers industry-leading scalability, data availability, security, and performance.

Learn more >>

Amazon EC2

Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides secure, resizable compute capacity in the cloud. It is designed to make web-scale cloud computing easier for developers.

Learn more >>


Get Started

Companies of all sizes across all industries are transforming their businesses every day using AWS. Contact our experts and start your own AWS Cloud journey today.