TY - GEN
T1 - IndiLog
T2 - 17th ACM International Systems and Storage Conference, SYSTOR 2024
AU - Wiesholler, Maximilian
AU - Dinu, Florin
AU - Picorel, Javier
AU - Bhatotia, Pramod
N1 - Publisher Copyright:
© 2024 Copyright held by the owner/author(s).
PY - 2024/9/16
Y1 - 2024/9/16
N2 - State management has long been a challenge for serverless applications. Owing to their failure resilience and consistency guarantees, distributed shared logs have been recently proposed as a promising storage substrate enabling stateful serverless applications. We show that, unfortunately, state-of-the-art sacrifices compute tier scalability for log access performance, a particularly undesirable exchange for the dynamic serverless environment. The culprit is the log indexing architecture, namely relying on complete local indexes colocated with serverless functions. This design prevents efficient scaling and even risks out-of-memory errors. IndiLog is a novel distributed indexing architecture enabling stateful serverless applications to efficiently access a distributed shared log for state management without impeding compute tier scalability. IndiLog uses a combination of local, size-bounded indexes designed to capture the expected locality patterns alongside a sharded and balanced index tier which tackles the challenges of supporting log sub-streams and bounded reads. IndiLog bests or matches Boki, a state-of-the-art distributed shared log, over various index hit rates, workload concurrency and compute tier scaling sizes.
AB - State management has long been a challenge for serverless applications. Owing to their failure resilience and consistency guarantees, distributed shared logs have been recently proposed as a promising storage substrate enabling stateful serverless applications. We show that, unfortunately, state-of-the-art sacrifices compute tier scalability for log access performance, a particularly undesirable exchange for the dynamic serverless environment. The culprit is the log indexing architecture, namely relying on complete local indexes colocated with serverless functions. This design prevents efficient scaling and even risks out-of-memory errors. IndiLog is a novel distributed indexing architecture enabling stateful serverless applications to efficiently access a distributed shared log for state management without impeding compute tier scalability. IndiLog uses a combination of local, size-bounded indexes designed to capture the expected locality patterns alongside a sharded and balanced index tier which tackles the challenges of supporting log sub-streams and bounded reads. IndiLog bests or matches Boki, a state-of-the-art distributed shared log, over various index hit rates, workload concurrency and compute tier scaling sizes.
KW - distributed shared log
KW - Serverless computing
UR - https://www.scopus.com/pages/publications/85206850516
U2 - 10.1145/3688351.3689159
DO - 10.1145/3688351.3689159
M3 - Conference contribution
AN - SCOPUS:85206850516
T3 - Proceedings of the 17th ACM International Systems and Storage Conference, SYSTOR 2024
SP - 1
EP - 13
BT - Proceedings of the 17th ACM International Systems and Storage Conference, SYSTOR 2024
PB - Association for Computing Machinery, Inc
Y2 - 23 September 2024 through 24 September 2024
ER -