kth.sePublications
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Reducing read and write latency in a Delta Lake-backed offline feature store: Adding support for HDFS and HopsFS in the delta-rs Rust library to reduce read and write latency on the Delta Lake-backed Hopsworks offline feature store
KTH, School of Electrical Engineering and Computer Science (EECS).
2024 (English)Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesisAlternative title
Minskning av läs- och skrivlatens i ett Delta Lake-baserat offline feature store : Tillägg av HDFS- och HopsFS-stöd i Rust-biblioteket delta-rs för att minska läs- och skrivlatens i Delta Lake-baserat Hopsworks offline feature store (Swedish)
Abstract [en]

The need to build Machine Learning (ML) models based on ever-increasing amounts of data brought new challenges to data management systems. Feature stores have emerged as a centralized data platform enabling feature reuse while organizing data transformations and ensuring consistency between feature engineering, model training, and inference. Recent publications demonstrate that the Hopsworks feature store outperforms existing cloud-based alternatives in training and online inference query workloads. In its offline feature store, the Hopsworks feature store stores batch or historical data, collecting it into feature groups, i.e., logical tables of features, organized in Apache Hudi tables, i.e., a data management layer, and stored on HopsFS, Hopsworks HDFS distribution. However, even in this system, the latency to perform a write operation is at least one or more minutes, even for small quantities of data (1 GB or less). A previous improvement in read latency using an Arrow Flight and DuckDB server suggests that this limitation is caused by Spark, which the system uses to write data on Apache Hudi tables. A promising approach to avoid using Spark appears to be adopting Delta Lake instead of Apache Hudi to manage and access data using a Rust library called delta-rs. This thesis investigates the possibility of reducing the read and write latency in the offline feature store by expanding the delta-rs library to support the Hopsworks feature store file system called HopsFS and comparatively evaluating the performance of the legacy and newly implemented system. Two major iterations of storage support in delta-rs for HopsFS were developed to meet the strict production-ready requirements defined before development. The system was then evaluated by performing and measuring read and write operations in four different CPU configurations, increasing the number of CPU cores up to eight. Experiments were performed fifty times to estimate a confidence interval, allowing an accurate comparative evaluation of the systems. Results confirmed the superior performance of the delta-rs library over the Spark system in all write operations with a latency reduction from ten up to forty times. Delta-rs also surpassed the Spark alternative in read operations with a latency reduction of forty-seven percent, up to forty times. These findings encourage future research investigating Spark alternative when optimizing performance in small-scale (1 GB - 100 GB) data management systems. The system developed will find application in the Hopsworks feature store production environment.

Abstract [sv]

Behovet av att bygga modeller för maskininlärning (ML) baserat på ständigt ökande datamängder har medfört nya utmaningar för datahanteringssystemen. Feature Stores har uppmärksammats som centraliserade dataplattformar som möjliggör återanvändning av features vid organisering av datatransformationer och säkerställer att feature-utveckling, modellträning och modellinferens är konsistenta. Nya publikationer visar att Hopsworks Feature Store har bättre prestanda än befintliga molnbaserade alternativ under modellträning och under beräkningslast för online-inferens. I sitt offline feature store lagrar Hopsworks feature store batchdata, dvs. historisk data, samlar det i feature groups, dvs. logiska tabeller med features, organiserade i Apache Hudi-tabeller, dvs. ett datahanteringslager, och lagrade i HopsFS, Hopsworks HDFS-distribution.Men även i detta system är latensen för att utföra en skrivoperation minst en eller flera minuter, även för små datamängder (1 GB eller mindre). En tidigare förbättring av läslatens med hjälp av en Arrow Flight- och DuckDB-server tyder på att denna begränsning orsakas av Spark, som systemet använder för att skriva data i Apache Hudi-tabeller. En lovande metod för att undvika Spark verkar vara att använda Delta Lake istället för Apache Hudi för datahantering, och använda ett Rust-bibliotek som heter delta-rs för dataåtkomst. Den här avhandlingen undersöker möjligheten att minska läs- och skrivfördröjningen i offline-funktionslagret genom att utöka delta-rs-biblioteket för att stödja Hopsworks-funktionslagrets filsystem som kallas HopsFS och jämförande utvärdera prestanda för det äldre och det nyligen implementerade systemet. Två större iterationer av utveckling av stöd för HopsFS-lagring i delta-rs utfördes för att uppfylla de strikta krav på produktionsfärdighet som definierades före utvecklingen. Systemet utvärderades sedan genom att utföra och mäta läs- och skrivoperationer i fyra olika CPU-konfigurationer, där antalet CPU-kärnor ökades upp till åtta. Experimenten utfördes femtio gånger för att uppskatta ett konfidensintervall, vilket möjliggjorde en korrekt jämförande utvärdering av systemen. Resultaten bekräftade delta-rs-bibliotekets överlägsna prestanda jämfört med Spark-systemet i alla skrivoperationer med en latensminskning från tio upp till fyrtio gånger. Delta-rs överträffade också Spark-alternativet i läsoperationer med en latensminskning på fyrtiosju procent, upp till fyrtio gånger. Dessa resultat uppmuntrar till framtida forskning där Spark alternativet undersöks för att optimera prestanda i småskaliga (1 GB - 100 GB) datahanteringssystem. Det utvecklade systemet kommer att användas i produktionsmiljön för Hopsworks feature store.

Place, publisher, year, edition, pages
Stockholm: KTH Royal Institute of Technology , 2024. , p. 77
Series
TRITA-EECS-EX ; 2024:862
Keywords [en]
Machine Learning, Feature Store, Spark, Delta Lake, delta-rs library, Read/write latency
Keywords [sv]
Maskininlärning, Feature Store, Spark-specifik begränsning, Delta Lake, delta-rs-bibliotek, Läs- och skrivlatens
National Category
Computer Sciences Computer Engineering
Identifiers
URN: urn:nbn:se:kth:diva-358961OAI: oai:DiVA.org:kth-358961DiVA, id: diva2:1931137
External cooperation
Hopsworks AB
Subject / course
Computer Science
Presentation
2024-10-25, via Zoom https://kth-se.zoom.us/j/5144985999, Isafjordsgatan 22 (Kistagången 16), Stockholm, 10:00 (English)
Supervisors
Examiners
Available from: 2025-01-24 Created: 2025-01-24 Last updated: 2025-01-24Bibliographically approved

Open Access in DiVA

fulltext(4390 kB)80 downloads
File information
File name FULLTEXT01.pdfFile size 4390 kBChecksum SHA-512
837af703508597f5a998d42c2d2f625946451ccbcb46d820e5107f7d7e9aa00bf57be96e8fb622ca782256cf57b16b052e703227c231d6b97ee9884e99827b58
Type fulltextMimetype application/pdf

Search in DiVA

By author/editor
Manfredi, Giovanni
By organisation
School of Electrical Engineering and Computer Science (EECS)
Computer SciencesComputer Engineering

Search outside of DiVA

GoogleGoogle Scholar
Total: 80 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 798 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf