Early on, the web embraced advertising as a fundamental piece of the business model for the internet.
Every successful consumer property, from the newest location-aware mobile services to now-staid web portals, displays multiple ads.
That business — displaying advertisements on the web — has transformed from a slightly modified version of print publishing to a dynamic, personalized, real-time system. Next time you view a web page containing display ads, consider the entire multi-billion dollar industry and technology chain to fill those few boxes. Not only are ads fetched from a variety of far-flung sources, but also it is likely that for every ad, a real-time auction was run between multiple advertising exchanges, choosing the optimal ad for you, based on your browsing behavior. All in real time between the time you click and the time the ad is displayed for you.
We’ve learned a lot about this part of the business because we invested in the first financing of a company called Citrusleaf a little more than a year ago. With Citrusleaf, we bet that the technology developed by two outstanding technologists would ultimately become a core part of the system that would increasingly be more and more real-time, to the point that nothing would be done off-line or asynchronously.
Underlying every real-time ad exchange is a data management engine implementing a scalable, real-time architecture that works in unison with the proprietary algorithms of that exchange. Our bet on Citrusleaf’s data management engine, and the designers behind that engine — Brian Bulkowski and Srini Srinivasan — turned out be a really good one. In a little less than 12 months, Citrusleaf has become the de facto standard underlying these ad exchanges.
No company in advertising uses older relational databases, which process hundreds of transactions per second. Open-source NoSQL data management systems can provide thousands of transactions per second, but need to trade off consistency and reliability to get higher performance. You can get higher speed from some of the NoSQL engines, but you will need to create and support much more complicated applications to provide the consistency and reliability yourself. No matter what, these open-source solutions will require a large number of servers, which requires creating a management framework to provide around-the-clock reliability.
Citrusleaf’s system is operational at 250,000+ transactions per second per server on inexpensive commodity hardware while providing immediate consistency and non-stop reliability. Customers took a chance on Citrusleaf because these features speed deployment, significantly reduce system complexity, and markedly reduce the number of servers required. In our diligence, we found that Citrusleaf’s customers could reduce their number of operational servers by a factor of 10 (yes, from 100 to 10) and improve the overall reliability and maintainability of the system – no DBA or operators required, a key factor for fast-moving innovators. This also dramatically reduces the peripheral hardware deployment and the operational maintenance complexity. The applications are simpler and easier to develop, since the reliability is built-in. At-scale projects simply succeed.
The Citrusleaf customers we originally talked to have been running at these rates for the past year, 24 by 7, with no downtime. The company recently raised a new round of financing at a significantly higher valuation to turn its success in one critical market, real time advertising, into a broader proposition for the entire IT infrastructure. Stay tuned!