VK Cloud logo

Cloud Spark Data Lakehouse архитектурасында

Cloud Spark — бұл бірнеше есептеу тораптары арасында кластерлерге біріктірілген міндеттерді үлестіру мүмкіндігі бар нақты уақыт режиміндегі деректерді өңдеу фреймворкі. Деректер көздерінен S3 қоймасы арқылы соңғы тұтынушыларға дейін деректерді өңдеудің күрделі көпкезеңді сквозной ETL-пайплайндарын іске асыру қажет болған жағдайда DLH архитектурасына қосымша түрде енгізіледі.

Cloud Spark ірі деректерді өңдеуді іске асырылған технологиялық шешімдердің арқасында жеделдетеді:

  • In-memory processing — деректерді жедел жадта сақтау және өңдеу.
  • Lazy Evaluation — есептеулердің орындалуы олардың нәтижесі қажет болған сәтке дейін кейінге қалдырылатын деректерді өңдеу стратегиясы.
  • Resilient Distributed Datasets (RDD) — деректерді объектілердің үлестірілген жиыны ретінде сақтау стратегиясы, мұнда бастапқы датасеттер мен есептеу нәтижелері кластердің бірнеше тораптарында репликацияланады, бұл сұрауларды өңдеуді жеделдетуге және жүйенің ақауға төзімділігін арттыруға мүмкіндік береді.
  • Параллель өңдеу және операцияларды біріктіру — нақты уақыт режимінде операцияларды параллель орындау мүмкіндігі үшін кластер тораптары бойынша жүктемені теңгеру.

Компонент келесі функцияларды орындайды:

  • Деректерді көздерден жүктеп шығару мүмкіндігі үшін API ұсынады – интеграциялық сервистер Python, Java және R тілдерінде жазылуы мүмкін, бұл DLH-ке кіру шегін едәуір төмендетеді.

  • Көздерден алынған деректерді оларды DLH негізгі S3 қоймасына сақтағанға дейін түрлендіреді.

  • Түрлі деректер типтерін қолдай отырып, DLH негізгі S3 қоймасымен екіжақты деректер алмасуға арналған кітапханаларды ұсынады:

    • Spark SQL – құрылымдалған деректермен реляциялық СУБД-ларға тән операцияларды орындау.
    • Spark Streaming – кіріс деректер ағынын нақты уақыт режимінде өңдеу.
    • GraphX – графтық аналитиканың типтік міндеттерін шешу үшін «Төбе - Қыр» түріндегі өзара байланысты объектілердің орасан массивтері бойынша есептеулерді орындау (мысалы, subgraph, joinVerticles және aggregateMessages).
    • MLlib – ML-модельдерін оқытуға арналған датасеттер мен алгоритмдерді дайындау үшін деректерді жіктеу, регрессиялау және кластерлеуді орындау.
  • DLH деректерін есептерге, BI-аналитикаға және машиналық оқытуға қажет форматқа түрлендіреді.

  • DLH ақпаратын тұтынушылармен тікелей немесе аналитикаға арналған мамандандырылған СУБД арқылы өзара әрекеттеседі, мысалы, ClickHouse немесе PostgreSQL.

Cloud Spark DLH архитектурасында Сloud Trino компонентін толықтырады: Сloud Trino интерактивті аналитикалық сұраулар мен data science міндеттеріне жарайды, ал Cloud Spark ETL және ELT өңдеуді, ағындық есептеулерді және машиналық оқытуды қамтамасыз етеді. Екі компонентті де пайдалану әр құрал ең қолайлы міндеттер үшін қолданылатын теңгерімді орта құруға мүмкіндік береді.