Designing a Multi-Level Caching Forward Index for Recommendation System Services
DOI:
https://doi.org/10.54097/q077zb60Keywords:
Recommendation system, Multi-level caching, Forward index, Microservices architecture, Video recommendation, Cache hit rate, Heterogeneous data storage, Recommendation index, Recommendation system architecture, Index architectureAbstract
This paper introduces a forward index based on microservices, which effectively addresses the issue of forward read amplification in recommendation systems through a multi-layer caching mechanism. This allows the forward service to handle a large number of concurrent requests with limited resources while ensuring service stability and final value rate. The paper provides a detailed description of the forward index's data structure design, traffic penetration calculation, and overall service architecture design, dividing the system into three parts: SDK, proxy service, and storage, corresponding to data query, data processing, and data storage respectively. In the SDK design, three components are employed: Cache Slot, synchronous queue, and timer, supporting synchronous, asynchronous, and flexible request forms. The proxy service design handles heterogeneous data and online computation, supporting batch and asynchronous designs, and provides a dynamic data protocol to adapt to the characteristic needs of different microservices. The storage layer design considers performance, cost, and maintainability, utilizing a Cache & SSD model to cope with high-concurrency scenarios.
References
[1] McDonald, D. W., & Ackerman, M. S. (2000, December). Expertise recommender: a flexible recommendation system and architecture. In Proceedings of the 2000 ACM conference on Computer supported cooperative work (pp. 231-240).
[2] Schafer, J. B., Frankowski, D., Herlocker, J., & Sen, S. (2007). Collaborative filtering recommender systems. In The adaptive web: methods and strategies of web personalization (pp. 291-324). Berlin, Heidelberg: Springer Berlin Heidelberg.
[3] Zhang, S., Yao, L., Sun, A., & Tay, Y. (2019). Deep learning based recommender system: A survey and new perspectives. ACM computing surveys (CSUR), 52(1), 1-38.
[4] Chunyan Mao, Shuaishuai Huang, Mingxiu Sui, Haowei Yang, Xueshe Wang, Analysis and Design of a Personalized Recommendation System Based on a Dynamic User Interest Model. Advances in Computer, Signals and Systems (2024) Vol. 8: 109-118.
[5] Zhizhong Wu, Xueshe Wang, Shuaishuai Huang, Haowei Yang, Danqing Ma, Research on Prediction Recommendation System Based on Improved Markov Model. Advances in Computer, Signals and Systems (2024) Vol. 8: 87-97.
[6] Liu, D., Waleffe, R., Jiang, M., & Venkataraman, S. (2024). GraphSnapShot: Graph Machine Learning Acceleration with Fast Storage and Retrieval. arXiv preprint arXiv:2406.17918.
[7] Tao, Y., Jia, Y., Wang, N., & Wang, H. (2019, July). The fact: Taming latent factor models for explainability with factorization trees. In Proceedings of the 42nd international ACM SIGIR conference on research and development in information retrieval (pp. 295-304).
[8] Yang, H., Zi, Y., Qin, H., Zheng, H., & Hu, Y. (2024). Advancing Emotional Analysis with Large Language Models. Journal of Computer Science and Software Applications, 4(3), 8-15.
[9] Zheng, H., Wang, B., Xiao, M., Qin, H., Wu, Z., & Tan, L. (2024). Adaptive Friction in Deep Learning: Enhancing Optimizers with Sigmoid and Tanh Function. arXiv preprint arXiv:2408.11839.
[10] Li, S., Dong, X., Ma, D., Dang, B., Zang, H., & Gong, Y. (2024). Utilizing the lightgbm algorithm for operator user credit assessment research. arXiv preprint arXiv:2403.14483
[11] Pradana, M. A., Rakhmatsyah, A., & Wardana, A. A. (2019, September). Flatbuffers implementation on mqtt publish/subscribe communication as data delivery format. In 2019 6th International Conference on Electrical Engineering, Computer Science and Informatics (EECSI) (pp. 142-146). IEEE.
[12] Li, S., Dong, X., Ma, D., Dang, B., Zang, H., & Gong, Y. (2024). Utilizing the lightgbm algorithm for operator user credit assessment research. arXiv preprint arXiv:2403.14483.
[13] Kara, K., & Alonso, G. (2016, August). Fast and robust hashing for database operators. In 2016 26th International Conference on Field Programmable Logic and Applications (FPL) (pp. 1-4). IEEE.
[14] Pan, C., Luo, Y., Wang, X., & Wang, Z. (2019, November). predis: Penalty and locality aware memory allocation in redis. In Proceedings of the ACM Symposium on Cloud Computing (pp. 193-205).
[15] Cao, Z., Dong, S., Vemuri, S., & Du, D. H. (2020). Characterizing, modeling, and benchmarking {RocksDB}{Key-Value} workloads at facebook. In 18th USENIX Conference on File and Storage Technologies (FAST 20) (pp. 209-223).
Downloads
Published
Issue
Section
License
This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.