Meftah, S., Zhang, S., Veeravalli, B., & Aung, K. M. M. (2022). Revisiting the Design of Parallel Stream Joins on Trusted Execution Environments. Algorithms, 15(6), 183. https://doi.org/10.3390/a15060183
The appealing properties of secure hardware solutions such as trusted execution environment (TEE) including low computational overhead, confidentiality guarantee, and reduced attack surface have prompted considerable interest in adopting them for secure stream processing applications. In this paper, we revisit the design of parallel stream join algorithms on multicore processors with TEEs. In particular, we conduct a series of profiling experiments to investigate the impact of alternative design choices to parallelize stream joins on TEE including: (1) execution approaches, (2) partitioning schemes, and (3) distributed scheduling strategies. From the profiling study, we observe three major high-performance impediments: (a) the computational overhead introduced with cryptographic primitives associated with page swapping operations, (b) the restrictive Enclave Page Cache (EPC) size that limits the supported amount of in-memory processing, and (c) the lack of vertical scalability to support the increasing workload often required for near real-time applications. Addressing these issues allowed us to design SecJoin, a more efficient parallel stream join algorithm that exploits modern scale-out architectures with TEEs rendering no trade-offs on security whilst optimizing performance. We present our model-driven parameterization of SecJoin and share our experimental results which have shown up to 4-folds of improvements in terms of throughput and latency.
Attribution 4.0 International (CC BY 4.0)
This research / project is supported by the A*STAR - Advanced Manufacturing and Engineering (AME) Programmatic Programme
Grant Reference no. : A19E3b0099
This research / project is supported by the Singapore University of Technology and Design (SUTD) - Start-up Research Grant
Grant Reference no. : SRT3IS21164