DoublefaceAd: A new datastore driver architecture to optimize fanout query performance

Shungeng Zhang, Qingyang Wang, Yasuhiko Kanemasa, Jianshu Liu, Calton Pu

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

The broad adoption of fanout queries on distributed datastores has made asynchronous event-driven datastore drivers a natural choice due to reduced multithreading overhead. However, through extensive experiments using the latest datastore drivers (e.g., MongoDB, HBase, DynamoDB) and YCSB benchmark, we show that an asynchronous datastore driver can cause unexpected performance degradation especially in fanout-query scenarios. For example, the default MongoDB asynchronous driver adopts the latest Java asynchronous I/O library, which uses a hidden on-demand JVM level thread pool to process fanout query responses, causing a surprising multithreading overhead when the query response size is large. A second instance is the traditional wisdom of modular design of an application server and the embedded asynchronous datastore driver can cause an imbalanced workload between the two components due to lack of coordination, incurring frequent unnecessary system calls. To address the revealed problems, we introduce DoubleFaceAD-a new asynchronous datastore driver architecture that integrates the management of both upstream and downstream workload traffic through a few shared reactor threads, with fanout-query-aware priority-based scheduling to reduce the overall query waiting time. Our experimental results on two representative application scenarios (YCSB and DBLP) show DoubleFaceAD outperforms all other types of datastore drivers up to 34% on throughput and 1.9× faster on 99th percentile response time.

Original languageEnglish (US)
Title of host publicationMiddleware 2020 - Proceedings of the 2020 21st International Middleware Conference
PublisherAssociation for Computing Machinery, Inc
Pages430-444
Number of pages15
ISBN (Electronic)9781450381536
DOIs
StatePublished - Dec 7 2020
Externally publishedYes
Event21st International Middleware Conference, Middleware 2020 - Virtual, Online, Netherlands
Duration: Dec 7 2020Dec 11 2020

Publication series

NameMiddleware 2020 - Proceedings of the 2020 21st International Middleware Conference

Conference

Conference21st International Middleware Conference, Middleware 2020
Country/TerritoryNetherlands
CityVirtual, Online
Period12/7/2012/11/20

Keywords

  • Asynchronous
  • Distributed datastores
  • Fanout queries
  • Performance

ASJC Scopus subject areas

  • Computer Networks and Communications
  • Information Systems
  • Software

Fingerprint

Dive into the research topics of 'DoublefaceAd: A new datastore driver architecture to optimize fanout query performance'. Together they form a unique fingerprint.

Cite this