pentium3 / sys_reading

system paper reading notes
229 stars 12 forks source link

Sponge: Fast Reactive Scaling for Stream Processing with Serverless Frameworks #277

Open pentium3 opened 11 months ago

pentium3 commented 11 months ago

https://www.usenix.org/conference/atc23/presentation/song

pentium3 commented 3 months ago

summary

key problem

workload

single streaming job with dynamic rate.

optimization goal

Latency

configurations to tune

when to triggers offloading, how many SF instances to use, and how many events to offload. [ch4.3]

scenario

cloud. VM + Lambda

technique

xxxxx

dynamic workload?

yes

multi-tenant?

no. single job with multiple operators

implementation

Apache Nemo

Problem and motivation

what is the problem this paper is solving?
why is it important?
why is it challenging?

challenge: [ch3]

Main ideas and insights

describe the paper gist in 1-2 sentences
what is important to remember? What did we learn?

[ch1]

Solution description

explain how the solution work

1. Redirect-and-merge by Compile-time Graph Rewriting [ch4.1, 4.2]

in order to rapidly forward increased input load to available resources in SF instances, adding 3 types of operators in advance when compiling the job. These 3 types of operators are only activated only upon offloading actions.

comments:

2. Dynamic Offloading Policy [ch4.3]

decide when to triggers offloading, how many SF instances to use, and how many events to offload.

overview

details:

comments the main idea makes sense, but still lack many details. eg

Important results

describe the experimental setup
summarize the main results

setup:

results

Limitations and opportunities for improvement

when doesn't it work?
what assumptions does the paper make and when are they valid?

assumptions

Closely related work

list of main competitors and how they differ

Follow-up research ideas (Optional)

If you were to base your next research project on this paper, what would you do?
Propose concrete ways to achieve one or more of the following:

Build a better (faster, more efficient, more user-friendly...) system to solve the same problem
Solve a generalization of the problem
Address one of the work's limitations
Solve the same problem in a different context
Solve the problem in a much larger scale
Apply the paper's methods to a different (but similar) problem
Solve a new problem created by this work

some background information about Serverless Functions: [ch2.2]