스트리밍 레이크 웨어하우스 개선, Hologres + Flink, 엔터프라이즈급 실시간 데이터 웨어하우스 구축

1. 많은 고객들의 Alibaba Cloud 실시간 데이터 웨어하우스를 위한 첫 번째 선택인 Hologres+Flink

빅데이터가 규모에서 실시간으로 이동함에 따라 실시간 데이터에 대한 수요는 인터넷, 교통, 미디어, 금융, 정부 등 다양한 분야를 포괄합니다. 기업 빅데이터 플랫폼에서 실시간 컴퓨팅이 차지하는 비중도 지속적으로 증가해 일부 산업에서는 50%에 달한다. Hologres+Flink는 다양한 유형의 복잡한 오픈 소스 기술 구성 요소를 풍부한 엔터프라이즈급 기능으로 대체하여 여러 기술 스택 학습, 여러 클러스터 운영 및 유지 관리, 여러 위치에서 데이터 일관성 유지와 같은 비용을 절감하여 기업이 비즈니스 및 비용 절감을 달성하고 효율성을 높입니다.

  • Xiaohongshu OLAP 시나리오에서는 Hologres를 사용하여 Clickhouse를 대체하여 쿼리 성능이 크게 향상되었으며, 추천 시나리오에서는 Hologres+Flink를 사용하여 사용자 A/B 그룹 테스트 결과를 실시간으로 분석하고 추천 전략을 조정합니다. 실시간으로 추천 모델을 업데이트합니다.
  • Xiaomai Technology는 Hologres+Flink를 사용하여 고성능 쓰기, 매우 빠른 복잡한 쿼리, 고가용성 격리 등의 요구 사항을 충족하기 위해 수백억 개의 광고로 구성된 실시간 데이터 웨어하우스를 구축하여 사용자 행동 분석을 통해 두 번째 목표를 달성합니다. 수준의 대응과 비즈니스 요구에 신속하게 대응합니다.
  • Kingdee Guanyi Cloud는 실시간 데이터 창고를 Hologres+Flink로 업그레이드하여 데이터 지연을 30S+에서 초로 줄였습니다. Hologres의 강력한 실시간 분석 및 집계 기능을 통해 데이터 통계 지연 문제를 해결했습니다. 전체 자원 비용이 50% 감소했습니다.
  • TAL은 원래 OLAP 엔진으로 Kudu를 사용하고 데이터 로딩 및 계산을 위해 Impala를 사용했으며 Kudu/Impala를 Hologres로 대체하여 백만 수준의 쓰기 및 밀리초 수준의 쿼리 기능을 구현하여 연간 거의 백만 달러의 비용을 절감했습니다.
  • 르엘리먼츠는 테스트를 통해 프레스토에 비해 성능이 5~10배 향상된 것으로 확인됐다.64코어 홀고레스는 96코어 프레스토 클러스터를 직접 대체할 수 있어 데이터 웨어하우스 아키텍처를 업그레이드해 비즈니스 운영 효율을 10배 높였다. 배+.

원스톱 실시간 데이터 웨어하우스 Hologres

Hologres는 Alibaba Cloud가 자체 개발한 원스톱 실시간 데이터 창고로, 통합 분석 서비스 아키텍처와 통합 데이터 플랫폼 아키텍처를 사용하여 하나의 데이터를 실현하며 다차원 분석, 온라인 서비스, 레이크 창고도 지원합니다. 다음을 포함한 통합 및 벡터 계산 시나리오:

  • 다차원 분석(CK, Doris 등과 동일한 쿼리 시나리오 구현)

고성능 실시간 데이터 쓰기, 업데이트 및 쿼리, 쓰기 직후 쿼리 가능, 컬럼 스토리지 지원 및 내장된 인덱스 가속 기능

  • 온라인 서비스 (Hbase, Redis 등과 동일한 쿼리 시나리오 구현)

KV 및 SQL 쿼리, 매우 높은 QPS에서 기본 키가 아닌 쿼리, 행 스토리지 지원 및 고가용성 기능 보유

  • 호수 창고 분석(Presto와 동일한 대화형 분석 시나리오 구현)

데이터 마이그레이션이 필요하지 않으며 MaxCompute 및 데이터 레이크의 테이블에 대한 2차 대화형 쿼리 및 메타데이터 자동 검색이 가능합니다.

  • 벡터 계산(Faiss와 동일한 벡터 쿼리 시나리오 구현)

내장된 DAMO Academy Proxima 벡터 엔진, QPS 및 리콜 성능은 오픈 소스 벡터 데이터베이스보다 몇 배 더 높습니다.

엔터프라이즈급 실시간 데이터 웨어하우스 기능

오픈 소스 구성 요소와 달리 기업 수준의 실시간 데이터 웨어하우스는 기업이 다양한 리소스 격리, 데이터 보안, 민첩한 운영 및 유지 관리 및 기타 기능을 신속하게 달성하여 기업이 데이터를 지속적이고 안정적이며 효율적으로 사용할 수 있도록 지원해야 합니다. 온라인에서 실시간으로 실행되는 빅데이터 플랫폼. Hologres는 리소스 격리, 데이터 암호화, 데이터 둔감화, 재해 복구, 데이터 백업 및 복구, IP 화이트리스트, 데이터 거버넌스 및 데이터 계보와 같은 풍부한 엔터프라이즈 수준 기능을 갖추고 있습니다.

  • 부하 격리

여러 컴퓨팅 인스턴스는 마스터-다중-슬레이브 모델을 형성하며, 인스턴스는 스토리지를 공유하고 컴퓨팅 리소스를 격리하여 쓰기 및 읽기 격리, 쿼리 및 서비스 격리를 달성합니다. 오류 관리, 오류가 발생한 노드의 빠르고 자동 복구를 지원하며 Pangu 3개의 복사본은 매우 안정적인 중복 스토리지를 제공합니다.

  • 엔터프라이즈급 운영 및 유지보수

특정 자체 운영 및 유지 관리 기능을 갖추고 있으며 쿼리 이력 및 메타데이터 테이블과 같은 운영 및 유지 관리 진단 정보가 내장되어 있습니다. 사용자는 쿼리 이력 및 테이블 메타데이터를 기반으로 풍부한 모니터링 및 경보 표시기를 제공하고 시스템 병목 현상 및 위험을 신속하게 찾을 수 있습니다. 포인트를 획득하고 자체 운용 능력을 향상시킵니다.

  • 데이터 보안

세분화된 액세스 제어 정책, BYOK 데이터 스토리지 암호화 및 데이터 둔감화, 데이터 백업 및 복구를 지원하고 RAM, STS 및 독립 계정과 같은 다중 인증 시스템을 지원하며 PCI-DSS 보안 인증을 통과했습니다(PCI-DSS는 현재 세계 최고의 보안 인증입니다). 가장 엄격하고 최고 수준의 금융 데이터 보안 표준).

  • 데이터 거버넌스

실시간 데이터 처리로 인해 비용이 증가하지만, Hologres는 다양한 유형의 데이터 사용에 대한 로그 정보가 포함된 테이블 정보를 제공합니다. 누군가가 데이터를 사용하고 있는지, 몇 번이나 사용했는지 알 수 있어 기업이 비용을 더 효과적으로 통제할 수 있어 편리합니다.

2. Hologres와 Flink의 긴밀한 통합

Hologres+Flink의 조합은 Alibaba Group 내에서 수년간의 실시간 시나리오 폴리싱을 통해 탐구한 최고의 아키텍처입니다. 예를 들어 Taotian 사용자 성장 팀은 3~5분 세로 분석을 약 10초로 성공적으로 개선했으며 CCO 고객 서비스 팀의 데이터 분석 효율성이 10배 증가하면 Taocai의 연간 비용이 수백만 달러 감소합니다. 수년간 축적된 후 Hologres+Flink의 제품 기능은 점차 서로 보완되었습니다.Flink의 실시간 계산을 중심으로 실시간 데이터 창고 Hologres는 주변에 여러 제품 사용 경로를 가지고 있습니다. Hologres를 차원으로 사용할 수 있습니다. Flink의 테이블, 처리된 데이터는 Flink를 통해 처리 가능, 결과는 Hologres에 기록, Hologres는 Flink에서 사용할 수 있는 binlog 제공, Hologres Catalog는 메타데이터 서비스, 전체 데이터베이스 동기화, SchemaEvolution 등을 지원하는데, 이에 대해 자세히 소개합니다. 나중에.

실시간 차원 테이블 조회

Flink의 실시간 차원 테이블인 Hologres는 다른 차원 테이블에 비해 다음과 같은 장점이 있습니다.

  • 차원 테이블 백만 RPS 쿼리입니다. 매우 높은 RPS 쿼리를 지원하므로 초당 수억 개의 단일 쿼리에 도달하기가 더 쉽습니다. 일부 내부 비즈니스에서는 수천만, 수억 개의 쿼리에 도달할 수도 있습니다.
  • 차원 테이블은 실시간으로 업데이트될 수 있습니다. 차원 테이블과 그 안의 일부 필드를 업데이트하여 운영 및 유지 관리의 어려움을 줄이고 효율성을 향상시킬 수 있습니다.
  • 1-N 포인트 스캔(접두사 스캔)을 지원합니다. 일대일 쿼리뿐만 아니라 일대다 쿼리도 지원합니다. 예를 들어 보험 고객 중 우리는 신분증을 기준으로 어떤 보험에 가입했는지 확인해야 합니다. 해당 사람은 여러 보험 정책에 해당할 수 있으며 Hologres는 이러한 종류의 pair-N 쿼리도 지원할 수 있습니다.
  • InsertIfNotExist가 지원됩니다. 이것은 아주 특별한 능력인데, 일반 차원 테이블을 질의할 때, 찾으면 반환하고, 발견되지 않으면 빈 값을 반환하는데, Hologres는 질의가 찾을 수 없을 때 값을 삽입한 후 반환한다. 삽입된 값. 이는 주로 교통 상황에서 정확한 UV 장면 문제를 해결하는 데 사용되며 RoaringBitmap 이미징 솔루션을 통해 수천억 건의 인물 분석을 몇 분에서 몇 초로 단축할 수 있습니다.

고성능 실시간 쓰기 및 업데이트

Flink+Hologres 조합은 고성능 실시간 쓰기를 지원합니다. 오른쪽은 1년 전 측정 데이터로 올해는 더 높아질 것입니다. 128CU 구성에서 쓰기 테이블에 기본 키가 없으면 초당 약 230만 개의 항목을 쓸 수 있고, 쓰기 테이블에 기본 키가 있으면 기본 키 충돌로 인해 새 행이 삭제되고 최대 230만 개의 항목을 쓸 수 있음을 알 수 있습니다. 초당 최대 200만 개의 항목을 쓸 수 있습니다. 일반적으로 테이블 업데이트에는 백체킹이 필요하며 데이터 양이 증가하면 업데이트 성능이 저하됩니다. Hologres는 이미 초당 70만 항목의 업데이트 성능을 달성할 수도 있습니다. 업데이트할 데이터 테이블이 20억 개에 달하며, 이러한 실시간 쓰기 및 업데이트 성능은 Flink와 같이 대량의 업데이트 및 삭제에 사용하기에 매우 적합합니다.

Hologres에는 강력한 업데이트 기능이 있지만 넓은 테이블의 부분 업데이트도 지원하여 Flink의 멀티 스트림 조인을 어느 정도 대체하고 매우 세부적인 최적화도 수행했습니다. 예를 들어 업스트림 데이터 사업의 데이터는 가끔 순서가 어긋나는 경우가 있는데, 1시에 생성된 데이터와 1시 5분에 생성된 데이터, 1시 5분에 생성된 데이터가 이전 데이터를 덮어주기를 바라기 때문이다. 데이터는 업무 시간을 기준으로 합니다. 나중에 데이터가 이전 데이터를 덮어쓰길 원할 것입니다. 하지만 전체 계산 링크의 불확실성으로 인해 1시 5분의 데이터가 먼저 도착하고 1시의 데이터가 나중에 도착할 가능성이 있습니다. 맹목적으로 직접 쓰면 1시 방향의 데이터가 1시 5분의 데이터를 덮어쓰게 됩니다. 그러나 Hologres는 이 경우 이 적용을 수행하지 않으며 업스트림이 고장난 경우에도 업스트림 및 다운스트림 데이터의 일관성을 보장하기 위해 최신 데이터를 저장할 수 있습니다.

마지막으로 Flink가 아직 출시하지 않은 버전 1.19에서 Hologres는 고정 복사라는 모드를 도입했습니다. 오른쪽 그림과 비교하면 이 모드는 쓰기 성능이 더 좋고 CPU 리소스를 더 많이 절약합니다.

멀티스트림 병합

지금의 차원 테이블 조인 외에도 스트림 컴퓨팅의 또 다른 문제점은 듀얼 스트림 조인입니다. 각 경로가 완전한 상태를 보장해야 한다면 이론적으로 비용이 매우 많이 듭니다. 우리의 솔루션은 듀얼 스트림 조인을 완전히 대체하지는 않지만 사용자 초상화 시나리오의 경우 명확한 ID가 있으며 이 기존 ID를 기반으로 여러 스트림의 데이터를 연결하기를 희망합니다. 이 시나리오에서 Hologres는 듀얼 스트림 조인을 쉽게 대체하여 이러한 저렴한 연결을 구현할 수 있습니다.

세로 시나리오에서는 사용자의 세로 또는 제품의 세로를 설명해야 하며 이는 다양한 차원을 가지고 있습니다. 예를 들어 사용자의 탐색 습관은 무엇인지, 이행 습관은 무엇인지, 반품 습관은 무엇인지 등, 우리는 이 고객을 다양한 차원에서 볼 수 있으며, 그런 다음 그가 어떤 유형의 사용자에 속하는지 결정하기 위해 사용자의 초상화를 그려야 합니다. 분류할 때 우선 우리는 이 사용자에 대한 모든 정보를 확실히 알고 싶습니다. 우리는 사용자 ID를 세분성으로 사용하여 모든 사용자 정보를 종합한 다음 이를 분류자에게 넘겨 사용자가 어떤 카테고리에 속하는지 분류하고 결정하기를 희망합니다. 이는 사용자 초상화의 매우 고전적인 사용입니다.

Hologres 제품이 추가되기 전에는 Flink를 사용하여 듀얼 스트림 조인만 수행할 수 있었는데 Flink를 사용하여 이렇게 넓은 필드를 형성했으며 차원마다 다른 필드가 있었습니다. 그러나 Hologres에 가입한 후에는 Hologres에서 넓은 테이블을 구축하는 것과 같습니다. 이 테이블의 기본 키는 사용자 ID이며, 다른 Flink 작업은 다른 필드를 작성합니다. 이는 하나의 작업이 전체 행을 모두 쓴다는 의미가 아니라 각 작업이 자체 필드 중 몇 개만 쓰고 동일한 테이블에 서로 다른 필드가 있다는 의미입니다. 이 경우 Hologres의 로컬 업데이트 기능을 사용하는 것은 서로 다른 차원의 사용자 데이터를 자동으로 연결하는 것과 같습니다.

위의 성능을 통해 Hologres는 binlog도 지원한다는 점에서 다른 데이터 웨어하우스 제품에 비해 장점이 있습니다. 이 넓은 테이블의 필드가 변경되면 binlog는 데이터의 전체 행을 뱉어내고 이를 binlog에 표시합니다. 그런 다음 Flink는 binlog에 연결하여 이 행의 데이터를 알게 됩니다. 최신 상황은 무엇입니까? ? 이 사용자의 초상화를 다시 계산할 수 있습니다.

Flink의 데이터 소스인 Hologres

Hologres의 점진적인 업데이트와 Flink와 결합된 binlog를 활용하면 실시간 사용자 초상화를 얻을 수 있어 비용을 크게 절감할 수 있습니다. 반면에 Hologres를 Flink의 소스 테이블로 사용하면 Flink는 스트림 모드와 배치 모드 모두에서 테이블 데이터를 읽을 수 있습니다. 또한 전체 증분 통합 읽기와 같은 변경 사항을 사용자 정의하거나 스톡 부분은 증분만 읽을 수 있습니다.

메타데이터 자동 검색 및 업데이트

Hologres는 메타데이터를 직접 읽을 수 있는 Flink의 카탈로그에도 연결되어 있으며, 스키마 진화를 포함하여 Flink의 create table as 및 create Database as 구문을 잘 적용할 수 있습니다.

3. Hologres+Flink는 엔터프라이즈급 실시간 데이터 웨어하우스를 구축합니다.

실시간 데이터 웨어하우스를 구축하는 방법은 무엇입니까? 오프라인 데이터웨어 하우스 구축을 위해 매우 표준적인 방법론 시스템을 갖추고 있으며 데이터가 들어온 후 ODS 레이어, DWD 레이어, DWS 레이어, ADS 레이어의 레이어별로 처리되며 각 레이어는 예약된 스케줄링을 통해 완료됩니다. 작업.의.

실시간 데이터 웨어하우스에서는 데이터 웨어하우스의 관점에서 분명히 계층적 요구 사항이 있습니다. 어떻게 하면 보다 유용한 솔루션을 만들 수 있나요? 실시간 데이터 웨어하우스 계층화 문제를 해결하는 방법은 무엇입니까? 이러한 문제를 해결할 수 있다면 데이터 웨어하우스의 다양한 수준 간에 데이터가 자유롭게 흐르도록 할 수 있습니다. 다음은 특정 실시간 데이터 웨어하우스 계층 구성표에 대한 소개입니다.

기존 실시간 데이터 웨어하우스 계층화 솔루션 1: 스트리밍 ETL

첫 번째이자 가장 고전적인 데이터 웨어하우스 계층화 방식은 Flink로 처리하여 Kafka에 전달하는 것입니다. 각 처리 계층은 Kafka에 전달된 후 처리되어 Flink를 통해 Kafka의 다음 계층에 기록됩니다. 마지막으로 Kafka에 기록됩니다. Flink 계산을 통해 파일을 생성합니다. KV 엔진은 외부 세계에 서비스를 제공합니다. 사람들은 웨어하우스의 개념을 보지 못하고 데이터 웨어하우스 데이터 처리의 레이어만 있기 때문에 이를 데이터 웨어하우스 계층화라고 생각하지 않는 경우가 있습니다.

Flink+Kafka 솔루션에는 매우 심각한 문제가 있습니다: Kafka 데이터의 각 레이어는 Flink에서 사용되며 다른 작업을 거의 수행할 수 없습니다.물론 Presto를 사용하여 Kafka 데이터 소스를 연결한 다음 데이터에 오류가 있는지 쿼리하지만 그게 유용한 전부입니다. 그래서 일반적으로 다들 아래의 또 다른 실시간 데이터 웨어하우스를 연결해 모든 개발 데이터를 실시간 데이터 웨어하우스에 동기화하는 방식을 택하고 있습니다.데이터를 쿼리하고 분석하려면 실시간 데이터 웨어하우스를 사용한 후 Kafka를 사용하세요 Flink 소비용으로 고전적인 아키텍처이며 매우 성숙합니다. 그러나 단점은 다양한 동기화된 데이터의 사본 2개를 저장해야 하므로 많은 리소스를 소비하고 전체 처리 링크도 매우 복잡하며 중간 데이터 Kafka 문제는 해결하기 쉽지 않으며 데이터 수정이 번거롭다는 것입니다. 때로는 업스트림에서 필드를 추가하려고 하고 다운스트림에서 더 많은 필드를 변경해야 하므로 스키마의 동적 변경에 대응하기가 어려워집니다.

기존 실시간 데이터 웨어하우스 계층화 솔루션 2: 예약 스케줄링

두 번째 방법은 오프라인 방법을 이용하는 것입니다. Flink는 데이터 정리 및 연결을 담당하며, 정리된 상세 데이터는 실시간 데이터 웨어하우스에 실시간으로 기록되어 DWD 레이어를 형성합니다. 그런 다음 DWS/ADS 계층은 고주파 스케줄링(분 수준)을 통해 구축되어 분 수준 증분 업데이트를 달성합니다.

장점은 솔루션이 성숙하고 단순하며 비용이 낮다는 것입니다. 하지만 적시성이 떨어진다는 것이 단점이다. Flink가 작성한 데이터는 실제로 매우 시의적절하지만 작업을 매우 자주 예약하기가 실제로 어렵기 때문입니다. 5분 조정 등 더 아래로 조정을 하면 난이도가 갑자기 높아지기 때문이죠. 데이터의 양이 많은 경우 때로는 데이터를 5분 안에 실행할 수 없고 증분적으로만 예약할 수 있어 더 복잡해지기 때문입니다. 따라서 많은 사용자가 실제 사용 시 시간 단위 스케줄링을 선택하는 경우가 많으며, 실시간 데이터 웨어하우스는 준실시간 데이터 웨어하우스로 전락하고 있습니다.

기존 실시간 데이터 웨어하우스 계층화 솔루션 3: 구체화된 뷰

세 번째 솔루션은 구체화된 뷰입니다. 사실 이는 본질적으로 이전 두 솔루션의 결합으로, Flink는 데이터 정리 및 연결을 담당하며, 정리된 세부 데이터는 실시간 데이터 웨어하우스에 실시간으로 기록되어 DWD 레이어를 형성합니다. 실시간 데이터 웨어하우스의 구체화된 뷰를 통해 DWS 또는 ADS를 처리합니다. 오늘날 모든 사람이 제공하는 제품 기능은 기본적으로 일정 관리 작업을 시스템에 통합하는 배치 구체화 모드에서 실행됩니다. 홀로그레스 역시 그룹 내에서 이미 활용하고 있는 실시간 구현화 작업을 진행하고 있으며, 향후 퍼블릭 클라우드에도 오픈할 예정이지만, 이런 실시간 구현화 뷰는 여전히 상대적으로 큰 기술적 과제를 안고 있다.

위의 세 가지 데이터 웨어하우스 파티셔닝 솔루션을 분석한 후 Kafka를 Hologres로 완전히 대체하고 행-열 공존을 사용하여 저장하면 Flink와 Hologres 간의 데이터 전송이 실현될 수 있습니다. 통합 아키텍처를 기반으로 데이터 웨어하우스의 각 계층에 있는 데이터를 조회하고 수정할 수 있으며 Flink 및 Hologres의 강력한 리소스 격리 기능을 사용하여 전체 시스템의 프로덕션 환경에서 높은 가용성을 제공합니다. 다음은 Flink+Hologres 기반 Streaming Warehouse 솔루션의 세부 내용을 소개합니다.

Hologres+Hologres의 스트리밍 창고 솔루션

Kafka를 모두 Hologres로, KV를 Hologres로 교체했으며, 전체 링크에서는 Flink에서 데이터를 작성한 후 바로 Hologres로 전송할 수 있습니다. 행-열 공존 테이블은 행과 열에 대해 각각 하나씩 두 개의 데이터 복사본을 동시에 저장합니다. 두 복사본은 추가 관리 오버헤드 없이 강력한 일관성을 유지하며 일부 시나리오에서는 성능이 향상될 수도 있습니다. 이전 Kafaka 아키텍처와 비교하여 Flink+Hologres는 다음과 같은 장점이 있습니다.

  • 기존 중간 계층 Kafka 데이터의 확인, 업데이트 및 수정이 어려웠던 문제를 해결하며, 각 계층을 확인하고 수정할 수 있습니다.
  • Middle Layer 데이터는 Flink에서 소비될 뿐만 아니라 누구나 확인할 수 있고 외부 서비스를 직접 제공할 수도 있으며 OLAP/온라인 서비스 및 기타 소비와 인터페이스할 수도 있습니다.
  • 아키텍처가 통합되고, 운영 및 유지 관리 비용이 절감되며, 비즈니스 효율성이 향상되고, 모델이 통합됩니다.

Flink+Hologres의 스트리밍 웨어하우스 솔루션을 기반으로 하는 실시간 데이터 웨어하우스 Hologres는 주로 세 가지 핵심 기능을 제공합니다.

  • Binlog는 테이블 업데이트 이벤트의 Binlog 공개 기능을 지원합니다. Flink를 통해 Hologres Binlog를 사용하여 데이터 웨어하우스 수준 간 전체 링크의 실시간 개발을 실현하고 계층적 거버넌스의 전제를 충족하면서 데이터 처리의 종단 간 지연을 단축합니다. .
  • 행과 열의 공존을 통해 Flink와 Hologres 간의 데이터 전송이 실현되고, 각 계층의 데이터를 쿼리하고 수정할 수 있습니다.
  • 강력한 리소스 격리, 여러 계산 간의 리소스 격리, 쓰기 및 읽기 격리 달성, 쿼리 및 서비스 격리.

그림에서 볼 수 있듯이 아키텍처 다이어그램에서 Flink 스트리밍이 표시된 경우 전체 실시간 데이터 처리 링크에 Hologres SQL을 작성할 필요가 없으며 전체 데이터 처리 링크가 FlinkSQL로 완전히 표현됩니다. FlinkSQL과 Hologres SQL의 구문은 상대적으로 다르지만 데이터 웨어하우스의 각 계층에 대한 스토리지를 동시에 쿼리하고 재사용할 수 있습니다.

적용 사례: 고객의 실시간 데이터 웨어하우스 업그레이드 경로

이 고객은 물류 고객이며 핵심 비즈니스는 웨어하우스를 중심으로 이루어집니다. 데이터 웨어하우스 비즈니스 시나리오는 비교적 복잡하며 주요 비즈니스는 세 가지 범주로 나뉩니다.

  • 실시간 방송. 창고 입출고, 배송 등의 내용을 실시간으로 방송하기 위해서는 높은 보안이 요구됩니다.
  • 고성능과 지속적인 서비스가 필요한 실시간 창고 운영이 많이 있습니다.
  • 다양한 공통지표센터 및 셀프서비스 분석을 위해서는 다차원적인 OLAP 분석과 유연성이 요구됩니다.

위 3개 사업 중 고객의 실시간 데이터 웨어하우스는 수만 CU 실시간 컴퓨팅 규모를 활용해 약 350여 개의 태스크를 보유하고 있다. 동시에 몇 가지 중요한 작업이 조정됩니다. 예를 들어 P2 이상의 작업은 작업의 70% 이상을 차지할 수 있으며 비즈니스 시나리오에서는 실시간이 매우 중요하다는 것을 알 수 있습니다. 둘째, 비즈니스 데이터의 실시간 처리량이 높으며 일일 평균 흐름 쓰기량이 초당 2천만 건에 달합니다. 최고 수준에서는 초당 6천만 개의 레코드에 도달할 수 있으며 매일 초당 50만 개 이상의 출력 결과가 생성되며 전체 데이터 볼륨은 약 수백 TB에 이릅니다.

실시간 데이터 웨어하우스 1.0 - 비용 70%-120% 절감

해당 고객은 Hologres와 Flink의 초기 고객으로, 2020년 Hologres는 상용화 원년에 접어들고 있으며, OLAP 엔진을 대체하기 위해 Hologres만 사용하고 있습니다. 맨 아래부터 Kafka와 Flink를 사용하여 처리하고, 처리가 완료된 후 데이터를 이중으로 작성하여 각각 물류 운영 시스템과 OLAP 쿼리 시스템에서 사용하게 되는데, 전자의 데이터는 높은 보장성을 갖는다. 실패하면 창고 전체가 영향을 받게 되고 관리가 혼란스러워집니다. 고객들은 초기에도 Hologres 제품에 대해 여전히 의구심을 갖고 있었기 때문에 외부적으로는 중요한 서비스에 대한 KV 확인 기능을 제공하기 위해 Lindorm에 한 통의 편지를 보냈고, 내부적으로는 OLAP 유연한 분석을 제공하기 위해 또 다른 편지를 Hologres에 보냈습니다. 이는 고객이 취한 최초의 접근 방식으로 주로 OLAP 엔진을 대체하고 Hologres의 강력한 쓰기 및 쿼리 성능을 사용하며 주로 비용을 70%-120% 절감합니다.

실시간 데이터 웨어하우스 2.0 - 개발 효율성 100% 향상

2022년까지 Hologres의 Binlog 제품 기능은 많은 고객에게 사용되었으며, 어느 정도 익숙해진 후 고객은 Hologres의 제품에 대해 더 많은 신뢰를 갖게 되었습니다. 동시에 Hologres는 마스터-슬레이브 인스턴스를 출시했습니다. 하나의 데이터에는 하나 이상의 인스턴스가 있으며 인스턴스는 동일한 데이터를 완전히 공유할 수 있습니다. 컴퓨팅 리소스도 강력하게 격리되어 있으므로 고객은 실시간 데이터 웨어하우스 아키텍처를 다음으로 업그레이드했습니다. 2.0.

가장 낮은 수준에서 MaxCompute는 오프라인 데이터 처리를 수행하고 Flink는 Hologres 마스터 인스턴스에 쓴 다음 구독하고 2차 소비를 수행한 다음 다시 작성하여 루프를 형성합니다. 모든 고객 쿼리는 슬레이브 인스턴스를 통해 외부적으로 제공되며, 물류 운영 선택과 같은 높은 보증 작업이든, 많은 리소스가 필요하지만 상대적으로 보증 수준이 낮은 OLAP 분석 작업이든 여러 슬레이브 간에 격리될 수 있습니다. 인스턴스 리소스 격리를 보장합니다. 전체 링크에서 Flink와 Hologres는 폐쇄 루프를 형성하며 Hologres는 통합된 외부 데이터 서비스를 제공하는 데 사용됩니다.

고객의 관점에서 보면 읽기와 쓰기의 분리, 동일한 도시에서의 재해 복구, 스토리지의 여러 컴퓨팅 리소스 격리, 가용성과 비용 간의 더 나은 균형을 달성했습니다. 고객 자체의 오류 통계가 6에서 0으로 감소하고 전체 스토리지 볼륨이 수백 TB 감소했으며 전반적인 개발 효율성이 크게 향상되었습니다.

실시간 데이터 웨어하우스 3.0 - 성능 개선 100%-200%:

2023년 홀로그레스는 마스터-슬레이브 인스턴스의 업그레이드 버전인 컴퓨팅 그룹 인스턴스를 출시했는데, 마스터-슬레이브 인스턴스는 계산 간 강력한 분리라는 장점이 있지만 가장 큰 문제는 각 인스턴스가 독립적인 입구를 갖고 있다는 점이다. 낮 동안 두 개의 슬레이브 인스턴스를 줄이고 밤에 비즈니스가 바쁘지 않을 때 이를 줄이려면 달성하기 어렵고 비즈니스를 다시 릴리스해야 합니다.

컴퓨팅 그룹 인스턴스는 마스터-슬레이브 인스턴스로 간주될 수도 있지만 그 위에 통합 입구가 있습니다. 컴퓨팅 그룹을 추가하거나 이름을 컴퓨팅 그룹으로 변경하는 데에는 변경이 필요하지 않습니다. 컴퓨팅 그룹을 추가하려면 관리자가 라우팅 규칙을 구성하기만 하면 됩니다. 이 라우팅 규칙은 새 컴퓨팅 그룹을 가리킬 수 있습니다. 따라서 동급생이나 비즈니스 부서에서는 이제 새로운 비즈니스를 추가해야 하는데, 이때 계산 그룹을 추가하는 것만으로도 비즈니스 룰을 갖추는 것과 같으며 작업이 매우 간단합니다.

이 경우 모든 고객은 컴퓨팅 그룹 인스턴스로 대체되어 외부 서비스를 제공합니다. 컴퓨팅 그룹은 수동으로 생성하거나 제거할 수 있습니다. 컴퓨팅 그룹은 비즈니스의 탄력적인 리소스 요구 사항을 충족하기 위해 수직으로 확장 또는 축소하고 수평으로 늘리거나 줄일 수 있습니다. 비즈니스 격리 및 작업 격리는 서버리스 환경을 유지하면서 유연성을 유지하여 고객이 비즈니스 성능을 100배 향상시킬 수 있도록 합니다. %-200%.%.

Hologres+ 실시간 데이터 레이크

방금 이야기한 것은 실시간 데이터 웨어하우스이며, 이는 현재 고객이 사용하는 가장 성숙한 아키텍처이기도 합니다. 스트리밍 레이크 창고에 대한 수요가 증가함에 따라 현재 기술은 주로 두 가지 개발 방향으로 나뉩니다. 한편으로는 Paimon과 같은 새로운 스트리밍 데이터 레이크 스토리지를 포함한 데이터 레이크 스토리지가 있어 데이터가 레이크에 더 쉽고 효율적으로 입력될 수 있습니다. 그런 다음 쿼리 분석 수준에서는 Presto 및 Hologres와 같은 효율적인 쿼리 분석 엔진을 사용하여 더 나은 데이터 쿼리 가속화를 달성합니다. Hologres는 OSS에 저장된 Hudi, Delta, ORC, Parquet, CSV, SequenceFile 및 기타 형식의 데이터 읽기 및 쓰기를 직접 가속화할 수 있습니다. Paimon의 레이어 모델링은 개발, 운영 및 유지 관리 비용을 줄이고 데이터 사일로를 깨고 비즈니스 통찰력을 제공합니다.

Flow Lake 창고 계층적 모델링

방금 논의한 데이터 웨어하우스 계층으로 돌아가서 Hologres와 Paimon 모두 스트리밍 액세스 기능을 갖추고 있습니다. 스트리밍 레이크 웨어하우스가 Hologres+Paimon을 기반으로 계층화되면 데이터 웨어하우스의 각 계층은 기업의 스토리지 비용 및 비즈니스 적시성에 따라 유연하게 조정될 수 있습니다.

쿼리 가속화를 위한 데이터 스토리지 Paimon, Hologres: 분 수준의 적시성 + 두 번째 수준의 OLAP 성능 제공

예를 들어 적시성에 민감하지 않은 일부 ODS 레이어 데이터의 경우 Paimon에 데이터를 저장하고, 쿼리 속도를 높이기 위해 Hologres를 사용하는데, Hologres는 상대적으로 비용이 적게 드는 분 단위의 적시성을 제공할 수 있으며, Paimon과 결합하면 가능하다. 쿼리 속도를 높이기 위해 지속적으로 성능을 최적화하고 개선하고 있습니다.

데이터는 Paimon에서 Hologres로 기록됩니다. 2단계 적시성 + 최고의 OLAP 성능 제공

예를 들어 쿼리 성능 요구 사항이 상대적으로 높은 일부 ADS 계층의 경우 데이터를 Hologres에 직접 입력할 수 있으며 Flink와 결합하여 두 번째 수준의 적시성과 궁극적인 쿼리 성능을 제공할 수 있습니다. 쿼리 시간은 수십 밀리초가 될 수 있습니다. 비용은 상대적으로 높아지지만 성능은 훨씬 빨라집니다.

기업 수준의 실시간 데이터 웨어하우스를 구축하기 위해 Flink와 긴밀하게 통합되거나, 스트리밍 레이크 웨어하우스를 탐색하고 최적화하기 위해 Paimon과 결합하든, Hologres는 진화 과정에서 항상 실시간 시나리오에 집중해 왔다는 것을 알 수 있습니다. 실시간 데이터 웨어하우스의 성능과 가용성을 지속적으로 개선합니다. ,사용자 경험. Hologres는 원스톱 실시간 데이터 웨어하우스 개념을 통해 기업의 복잡한 데이터 웨어하우스 아키텍처를 대체하여 실시간 데이터 웨어하우스를 더욱 깨끗하고 친근하며 효율적으로 만들고 기업이 지속적으로 비용을 절감하고 디지털 혁신을 가속화할 수 있도록 지원하고자 합니다. 업그레이드.

원본 링크

이 기사는 Alibaba Cloud의 원본 콘텐츠이므로 허가 없이 복제할 수 없습니다.

Bilibili 두 번 충돌, Tencent '3.29' 1급 사고... 2023년 상위 10개 다운타임 사고 살펴보기 Vue 3.4 'Slam Dunk' MySQL 5.7, Moqu, Li Tiaotiao 출시… 2023년 '정지' 살펴보기 더보기 ” (오픈 소스) 프로젝트와 웹 사이트는 30년 전의 IDE를 되돌아봅니다: 오직 TUI, 밝은 배경색... Redis의 아버지인 Bram Moolenaar에게 헌정하는 Vim 9.1 출시, "신속한 검토" LLM 프로그래밍: 전지적 그리고 Omnipotent&& Stupid "Post-Open Source" 시대가 왔습니다. 라이선스가 만료되어 일반 대중에게 서비스를 제공할 수 없습니다. China Unicom Broadband가 갑자기 업로드 속도를 제한했고 많은 사용자가 불만을 토로했습니다. Windows 경영진은 개선을 약속했습니다. Make the Start 메뉴가 다시 훌륭해졌습니다. Pascal의 아버지인 Niklaus Wirth가 세상을 떠났습니다.
{{o.이름}}
{{이름}}

추천

출처my.oschina.net/yunqi/blog/10584418