기금넷 공식사이트 - 펀드 투자 - Alibaba는 어떤 서버를 사용합니까? Alibaba는 어떤 서버를 사용합니까?

Alibaba는 어떤 서버를 사용합니까? Alibaba는 어떤 서버를 사용합니까?

재인쇄: Alibaba가 Apache Flink를 선택한 이유는 무엇입니까?

이 기사는 알리바바 컴퓨팅 플랫폼 부문 수석 기술 전문가인 Mo Wen이 Yunqi 컨퍼런스에서 한 연설을 주로 편집한 것입니다.

작은 묘목에서 큰 나무가 자라나고, 작은 도토리가 큰 나무로 자랄 수도 있다

인공지능 시대의 도래와 데이터 양의 폭발적인 증가로 인해, 빅 데이터 비즈니스 시나리오에서 가장 일반적인 데이터 비즈니스 방법은 일괄 처리 기술을 사용하여 전체 데이터를 처리하고 스트리밍 컴퓨팅을 사용하여 실시간 증분 데이터를 처리하는 것입니다. 대부분의 비즈니스 시나리오에서 사용자의 비즈니스 논리는 일괄 처리와 스트림 처리에서 동일한 경우가 많습니다. 그러나 사용자가 일괄 처리와 스트림 처리에 사용하는 두 가지 컴퓨팅 엔진 세트는 서로 다릅니다.

결과적으로 사용자는 일반적으로 두 세트의 코드를 작성해야 합니다. 의심할 바 없이 이로 인해 추가적인 부담과 비용이 발생합니다. Alibaba의 제품 데이터 처리에는 증분 및 전체 볼륨이라는 두 가지 다른 비즈니스 프로세스가 필요한 경우가 많기 때문에 Alibaba는 통합된 빅 데이터 엔진 기술을 가질 수 있는지 궁금합니다. 사용자는 자신의 비즈니스 로직을 기반으로 코드 세트를 개발하기만 하면 됩니다. 전체 데이터, 증분 데이터, 실시간 처리 등 다양한 시나리오에서 완전한 솔루션 세트를 지원할 수 있습니다. 이는 Alibaba가 Flink를 선택한 배경이자 원래 의도이기도 합니다.

현재 Storm, Samza, Flink, KafkaStream 등 선택할 수 있는 오픈 소스 빅 데이터 컴퓨팅 엔진이 많이 있습니다. , Spark, Hive, Pig, Flink 등을 사용한 일괄 처리 그러나 스트림 처리와 일괄 처리를 모두 지원하는 컴퓨팅 엔진에는 두 가지 옵션만 있습니다. 하나는 Apache Spark이고 다른 하나는 Apache Flink입니다.

기술, 생태학, 기타 측면을 종합적으로 고려합니다. 우선 Spark의 기술적 아이디어는 배치 기반 트래픽 계산을 시뮬레이션하는 것입니다. 반면 Flink는 스트림 기반 계산을 사용하여 배치 계산을 시뮬레이션합니다.

기술 개발의 관점에서 볼 때 배치 처리를 사용하여 프로세스를 시뮬레이션하는 데에는 특정한 기술적 한계가 있으며 이러한 한계를 극복하기 어려울 수 있습니다. Flink는 스트림 시뮬레이션 배치 처리를 기반으로 하며 기술적으로 더 나은 확장성을 제공합니다. 장기적으로 Alibaba는 향후 선택으로 Flink를 통합되고 보편적인 빅 데이터 엔진으로 사용하기로 결정했습니다.

Flink는 대기 시간이 짧고 처리량이 높은 통합 빅 데이터 컴퓨팅 엔진입니다. Alibaba의 생산 환경에서 Flink의 컴퓨팅 플랫폼은 밀리초 수준의 대기 시간으로 초당 수억 개의 메시지 또는 이벤트를 처리할 수 있습니다. 동시에 Flink는 일회성 일관성 의미 체계를 제공합니다. 데이터의 정확성이 보장됩니다. 이러한 방식으로 Flink 빅데이터 엔진은 금융 데이터 처리 기능을 제공할 수 있습니다.

Flink의 Alibaba 현황

Apache Flink를 기반으로 Alibaba를 기반으로 구축된 플랫폼은 2016년 공식 출시되었으며 Alibaba의 검색 및 추천 시나리오를 바탕으로 구현되었습니다. 현재 모든 Alibaba 자회사를 포함한 모든 Alibaba 사업체는 Flink 기반의 실시간 컴퓨팅 플랫폼을 사용하고 있습니다. 동시에 Flink 컴퓨팅 플랫폼은 오픈 소스 Hadoop 클러스터에서 실행됩니다. Hadoop의 YARN은 리소스 관리 및 스케줄링 역할을 하고 HDFS는 데이터 스토리지 역할을 합니다. 따라서 Flink는 오픈 소스 빅 데이터 소프트웨어 Hadoop과 원활하게 연결할 수 있습니다.

현재 이 Flink 기반 실시간 컴퓨팅 플랫폼은 Alibaba Group에 서비스를 제공할 뿐만 아니라 Alibaba Cloud의 클라우드 제품 API를 통해 전체 개발자 생태계에 Flink 기반 클라우드 제품 지원을 제공합니다.

Flink의 알리바바 대규모 애플리케이션 성능은 어떤가요?

규모: 시스템이 성숙했는지 여부에 관계없이 규모는 중요한 지표입니다. Flink는 처음에는 알리바바에서 단 수백 대의 서버로 출시되었으나 현재는 세계에서 몇 안 되는 수만 대의 서버를 보유하고 있습니다.

상태 데이터: 내부적으로 축적된 상태 데이터인 Flink를 기반으로 합니다. 이미 페타바이트 규모입니다.

p>

이벤트: 현재 Flink의 컴퓨팅 플랫폼에서는 매일 1조 개가 넘는 데이터가 처리됩니다.

PS: 가능합니다. 피크 기간 동안 초당 4억 7,200만 건 이상의 방문을 처리하며, 이는 가장 일반적인 응용 시나리오입니다. Alibaba의 Double 11의 대형 화면입니다.

Flink의 개발 경로

다음으로, 오픈소스 기술을 바탕으로 Apache Flink가 어떻게 탄생하고 어떻게 성장했는지 이야기해 보겠습니다. 그리고 이 중요한 성장의 순간에 알리는 어떻게 등장했는가? 당신은 어떤 기여와 지원을 했습니까?

Flink는 유럽 빅데이터 연구 프로젝트의 성층권에서 탄생했습니다. 이 프로젝트는 베를린 공과대학의 연구 프로젝트입니다. 초기에는 Flink가 일괄 계산을 수행했지만 2014년에 Stratosphere의 핵심 구성원이 Flink를 인큐베이션하고 같은 해에 Flink를 Apache에 기부했습니다. 이는 나중에 Apache의 최고 빅 데이터 프로젝트가 되었습니다. 동시에 Flink 컴퓨팅의 주류 방향은 스트리밍으로 위치합니다. 즉 스트리밍 컴퓨팅을 사용하여 모든 빅 데이터를 계산합니다. 이것이 플링크 기술의 탄생 배경이다.

2014년, 스트림 컴퓨팅에 중점을 둔 빅데이터 엔진인 Flink가 오픈소스 빅데이터 산업에 등장하기 시작했습니다.

Storm 및 SparkStreaming과 같은 스트림 컴퓨팅 엔진과 달리 처리량이 많고 대기 시간이 짧은 컴퓨팅 엔진일 뿐만 아니라 다양한 고급 기능을 제공합니다. 예를 들어, 상태 저장 컴퓨팅을 제공하고, 상태 관리를 지원하고, 데이터 의미론의 강력한 일관성을 지원하고, 이벤트 시간을 지원하고, 메시지 장애를 처리하기 위한 워터마크를 지원합니다.

Flink의 핵심 개념 및 기본 개념

Flink가 다른 스트림 컴퓨팅 엔진과 구별되는 점은 상태 관리입니다.

상태는 어떤가요? 예를 들어 트래픽 계산 시스템을 개발하거나 데이터 처리 작업을 수행하는 경우 Sum, Count, Min, Max 등의 데이터에 대한 통계를 작성해야 하는 경우가 종종 있습니다. 지속적으로 업데이트되기 때문에 이러한 값이나 변수는 상태로 이해될 수 있습니다. 데이터 소스가 Kafka, RocketMQ를 읽는 경우 읽기 위치를 기록하고 오프셋을 기록해야 할 수도 있습니다. 이러한 오프셋 변수는 계산할 상태입니다.

Flink는 이러한 상태를 외부 시스템에 저장하지 않고 Flink 내부에 저장할 수 있는 기본 상태 관리 기능을 제공합니다. 여기에는 다음과 같은 장점이 있습니다. 첫째, 외부 시스템에 대한 컴퓨팅 엔진의 의존성과 배포가 줄어들어 운영 및 유지 관리가 더 간단해집니다. 둘째, 성능이 크게 향상됩니다. Redis와 같이 외부에서 액세스하는 경우 HBase는 네트워크 및 RPC 액세스를 통과해야 합니다. . Flink가 내부적으로 이러한 변수에 액세스하는 경우 자체 프로세스를 통해서만 이러한 변수에 액세스합니다. 동시에 Flink는 이러한 상태의 체크포인트를 주기적으로 유지하고 HDFS와 같은 분산 지속성 시스템에 체크포인트를 저장합니다. 이런 방식으로 Flink의 작업이 잘못되면 최신 체크포인트에서 전체 스트림의 상태를 복원한 다음 스트림 처리를 계속 실행합니다. 사용자에게 데이터 영향은 없습니다.

Flink는 체크포인트 복구 중에 데이터 손실이나 중복이 없음을 어떻게 보장합니까? 계산이 정확한지 확인하고 싶으십니까?

이유는 Flink가 일련의 고전적인 Chandy-Lamport 알고리즘을 사용하기 때문입니다. 핵심 아이디어는 이 흐름 계산을 흐름 토폴로지로 처리하고 이 토폴로지의 선두에 소스의 데이터를 정기적으로 삽입하는 것입니다. 포인트를 위한 특수 장벽으로 업스트림에서 다운스트림으로 장벽을 방송합니다. 각 노드가 모든 펜스를 수신하면 상태의 스냅샷을 찍습니다. 각 노드가 스냅샷을 완료한 후 전체 토폴로지는 완전한 체크포인트로 간주됩니다. 다음에는 장애가 발생하더라도 가장 최근의 체크포인트부터 복구가 이루어집니다.

Flink는 이 고전적인 알고리즘을 사용하여 강력한 의미적 일관성을 보장합니다. 이는 Flink와 다른 상태 비저장 흐름 컴퓨팅 엔진 간의 핵심 차이점이기도 합니다.

플링크가 장애 문제를 해결하는 방법은 다음과 같습니다. 예를 들어 스타워즈의 시퀀스를 개봉시기에 따라 살펴보면 스토리가 휙휙 돌아다니는 것을 발견할 수 있습니다.

트래픽 계산 측면에서는 이 예와 매우 유사합니다. 모든 메시지의 도착 시간이 원본 온라인 시스템 로그의 실제 발생 시간과 일치하지 않습니다. 스트림 처리 중에는 메시지가 실제로 프로그램에 도착한 시간이 아닌 소스에서 실제로 발생한 순서대로 메시지가 처리되기를 원합니다. Flink는 비순차적 문제를 해결하기 위해 몇 가지 고급 이벤트 시간 및 워터마킹 기술을 제공합니다. 사용자가 메시지를 순서대로 처리할 수 있도록 합니다. 이것은 Flink의 매우 중요한 기능입니다.

다음으로 플링크가 시작되었을 때의 핵심 컨셉과 아이디어를 소개하겠습니다. 2015년과 2017년의 플링크 개발의 첫 번째 단계입니다. 이 단계는 Flink가 개발되고 Alibaba가 개입하는 단계이기도 합니다. 이 이야기는 2015년 중반에 검색 그룹에서 실시한 설문 조사에서 비롯되었습니다. 당시 알리바바는 자체 개발 및 오픈 소스 모두에서 자체 배치 처리 기술과 스트림 컴퓨팅 기술을 보유하고 있었습니다. 그러나 차세대 빅데이터 엔진의 방향과 미래 동향을 고민하기 위해 우리는 신기술에 대한 많은 연구를 진행해 왔습니다.

많은 연구 결과를 바탕으로 우리는 마침내 일반적인 빅데이터 컴퓨팅 요구 사항을 해결하고 배치 흐름 컴퓨팅 엔진을 통합하는 것이 빅데이터 기술의 발전 방향이라는 결론을 내렸습니다.

그러나 2015년의 플링크는 충분히 성숙되지 않았고, 규모도 안정성도 모두 구현되지 않았습니다. 결국 우리는 Alibaba에 Flink 지점을 설립하고 Alibaba의 대규모 비즈니스 시나리오에 적응하기 위해 Flink를 많이 수정하고 개선하기로 결정했습니다. 이 과정에서 우리 팀은 Flink의 성능과 안정성을 개선하고 최적화했을 뿐만 아니라 핵심 아키텍처와 기능에서 많은 혁신과 개선을 이루어 다음과 같이 커뮤니티에 기여했습니다. Flink의 새로운 분산 아키텍처, 정량적 체크포인트 메커니즘, 크레딧 기반 네트워크 흐름 제어 메커니즘 및 스트리밍 SQL.

Flink 커뮤니티에 대한 Alibaba의 기여

두 가지 디자인 사례를 살펴보겠습니다. 첫 번째는 Alibaba가 Flink의 분산 아키텍처를 재구성하고 Flink의 작업 일정 관리 및 리소스 관리를 명확하게 계층화하고 분리했다는 것입니다. 이것의 첫 번째 이점은 Flink가 다양한 오픈 소스 리소스 관리자에서 기본적으로 실행될 수 있다는 것입니다. 이 분산 아키텍처를 개선한 후 Flink는 가장 일반적인 두 가지 리소스 관리 시스템인 HadoopYarn과 Kubernetes에서 기본적으로 실행될 수 있습니다. 동시에 Flink의 작업 스케줄링은 중앙 집중식 스케줄링에서 분산 스케줄링으로 변경되므로 Flink는 더 큰 클러스터를 지원하고 더 나은 리소스 격리를 얻을 수 있습니다.

다른 하나는 증분 체크포인트 메커니즘을 구현하는 것입니다. Flink는 상태 저장 컴퓨팅 및 규칙 체크포인트 메커니즘을 제공하기 때문입니다. 내부 데이터가 많아지면 체크포인트가 점점 커지게 되어 결국 실패로 이어질 수 있습니다. 증분 체크포인트를 제공한 후 Flink는 어떤 데이터가 점진적으로 변경되었는지, 어떤 데이터가 수정되었는지 자동으로 찾아냅니다. 동시에 수정된 데이터만 유지됩니다. 이런 방식으로 시간이 지나도 체크포인트 실행이 점점 더 어려워지지 않을 것이며, 전체 시스템의 성능이 매우 안정적이 될 것입니다. 이는 우리가 커뮤니티에 기여하는 매우 중요한 기능이기도 합니다.

2015년부터 2017년까지 Flink의 스트리밍 기능을 개선한 후 Flink 커뮤니티는 점차 성숙해졌습니다. Flink는 또한 스트리밍 미디어 분야에서 가장 주류인 컴퓨팅 엔진이 되었습니다. Flink는 원래 스트리밍과 일괄 처리를 통합하는 빅데이터 엔진이 되기를 원했기 때문에 이 작업은 이미 2018년에 시작되었습니다. 이 목표를 달성하기 위해 Alibaba는 새로운 통합 API 아키텍처와 통합 SQL 솔루션을 제안했습니다. 동시에 스트리밍 컴퓨팅의 다양한 기능이 개선된 후 배치 컴퓨팅에도 다양한 개선이 필요하다고 생각합니다. 작업 스케줄링 계층이든 데이터 셔플링 계층이든 내결함성과 사용 편의성 측면에서 개선해야 할 작업이 많이 있습니다.

이유를 조사하기 위해 공유해야 할 두 가지 핵심 사항은 다음과 같습니다.

●통합 API 스택

●통합 SQL 솔루션

FlinkAPI 스택의 현재 상태를 살펴보겠습니다. Flink를 연구했거나 Flink를 사용해 본 개발자라면 이 사실을 알아야 합니다. Flink에는 두 가지 기본 API가 있습니다. 하나는 데이터 흐름이고 다른 하나는 데이터 세트입니다. 데이터 흐름 API는 스트리밍 사용자에게 제공되고, 데이터 세트 API는 배치 사용자에게 제공됩니다. 그러나 이 두 API의 실행 경로는 완전히 다르며 실행을 위해 서로 다른 작업을 생성해야 합니다. 따라서 이는 통합 API와 충돌하고 불완전하며 최종 솔루션이 아닙니다. 런타임 위에 배치 프로세스 통합을 통합하는 기본 API 레이어가 있어야 합니다. API 레이어가 통합될 수 있기를 바랍니다.

따라서 우리는 새로운 아키텍처에서 배치 스트림을 위한 통합 API 레이어로 DAG(Finite Acycling Graph) API를 채택할 것입니다. 이러한 유한 비순환 그래프의 경우 배치 계산 및 흐름 계산을 명시적으로 표현할 필요가 없습니다. 개발자는 데이터가 스트림 속성인지 배치 속성인지 계획하기 위해 다양한 노드와 에지에서 다양한 속성을 정의하기만 하면 됩니다. 전체 토폴로지는 배치 흐름을 통합할 수 있는 통일된 의미 표현입니다. 전체 계산에서는 흐름 계산과 일괄 계산을 구분할 필요가 없으며 자신의 요구 사항만 표현하면 됩니다. 이 API를 사용하면 Flink의 API 스택이 통합됩니다.

통합된 기본 API 레이어와 통합 API 스택 외에도 SQL 솔루션도 상위 레이어에서 통합되었습니다. 배치 SQL의 경우 스트림 컴퓨팅과 배치 컴퓨팅을 위한 데이터 소스가 있다고 생각할 수 있으며, 이 두 데이터 소스를 데이터 테이블로 시뮬레이션할 수 있습니다. 스트리밍 데이터의 데이터 소스는 지속적으로 업데이트되는 데이터 테이블로 생각할 수 있는 반면, 배치 데이터의 데이터 소스는 업데이트된 데이터 테이블이 없는 비교적 정적인 테이블로 생각할 수 있습니다. 전체 데이터 처리는 SQL 쿼리로 간주할 수 있으며, 최종 결과는 결과 테이블로 시뮬레이션할 수도 있습니다.

스트림 컴퓨팅의 경우 결과 테이블은 지속적으로 업데이트되는 결과 테이블입니다. 일괄 처리의 경우 결과 테이블은 업데이트된 결과 테이블과 동일합니다. 전체 SOL 의미 표현 관점에서 보면 흐름과 배치가 통합될 수 있습니다. 또한 스트리밍 SQL과 일괄 SQL 모두 동일한 쿼리를 사용하여 재사용을 표현할 수 있습니다. 이러한 방식으로 모든 스트리밍 배치를 동일한 쿼리로 최적화하거나 구문 분석할 수 있습니다. 많은 스트림 및 배치 연산자도 재사용할 수 있습니다.

Flink의 미래 방향

먼저 Alibaba는 Flink의 본질을 바탕으로 전방위 통합 빅데이터 컴퓨팅 엔진을 구축할 것입니다. 생태와 장면의 바닥에 배치됩니다. 현재 Flink는 주류 스트림 컴퓨팅 엔진입니다. 많은 인터넷 회사는 Flink가 빅 데이터의 미래이자 최고의 스트림 컴퓨팅 엔진이라는 합의에 도달했습니다. 다음으로 중요한 작업은 Flink가 배치 컴퓨팅 분야에서 획기적인 발전을 이루도록 하는 것입니다. 더 많은 시나리오에서 이는 주류 배치 컴퓨팅 엔진이 되었습니다. 그런 다음 흐름과 배치 간의 원활한 전환이 수행되고 흐름과 배치 간의 경계가 점점 흐려집니다. Flink를 사용하면 하나의 계산으로 유량 계산과 배치 계산을 동시에 수행할 수 있습니다.

두 번째 방향은 Flink가 Java와 Scala뿐만 아니라 기계 학습을 위한 Python과 Go까지 더 많은 언어에서 생태학적 지원을 얻는 것입니다. 앞으로는 더 풍부한 언어를 사용하여 Flink 컴퓨팅 작업을 개발하고, 컴퓨팅 로직을 설명하고, 더 많은 생태계를 연결하고 싶습니다.

마지막으로 AI에 대해 이야기해야 합니다. 왜냐하면 많은 빅 데이터 컴퓨팅 요구 사항과 데이터 볼륨이 매우 인기 있는 AI 시나리오를 지원하기 때문입니다. 따라서 Flink의 스트리밍 일괄 생태계 개선을 기반으로 상위 계층 Flink의 기계 학습 알고리즘 라이브러리를 지속적으로 개선하고 개선할 것입니다. 동시에 Flink는 성숙한 기계를 활용하고 딥 러닝을 통합할 것입니다. 예를 들어 Flink의 Tensorflow를 사용하면 빅데이터 ETL 데이터 처리와 머신러닝 기능 계산, 기능 계산, 훈련 계산을 통합하여 개발자가 동시에 여러 생태계의 이점을 누릴 수 있습니다.

Alibaba Cloud Realm이란 무엇인가요?

이것은 Alibaba가 주로 중소기업을 대상으로 만든 정보 시스템 제품으로 서버와 하드웨어 지원은 모두 Alibaba가 클라우드에 배치합니다. Alibaba가 귀하를 위해 데이터를 관리하도록 하는 것과 같습니다. 고객의 하드웨어 투자가 매우 낮고 시스템 관리 비용도 일반적으로 연회비 형태로 운영됩니다.

알리바바, 텐센트 등 기업이 미국에 서버를 설치하는 이유는 무엇일까?

미국 국민들이 알리바바와 텐센트의 서비스를 누릴 수 있도록 하기 위해서는 더불어 국내 사람들도 미국에 갈 때 관련 서비스가 필요하다.

알리바바는 어떤 산업에 속해 있나요?

알리바바의 주요 사업은 전자상거래이며 여기에는 인터넷 금융, 전자결제, 물류 등도 포함된다. 동시에 알리바바의 지속적인 발전에는 미디어, 사물 인터넷 등 더 넓은 범위의 분야도 포함됩니다.

Alibaba 그룹의 주요 산업: Alibaba, Taobao, Alipay, Alibaba Software, Alimama, Koubei.com, Alibaba Cloud, 중국 Yahoo, Yitao.com, Taobao Mall, 중국 Wanwang, Juhuasuan, Cloud Peak Fund, Ant 재정적인.

일반적인 온라인 상점에는 얼마나 큰 서버가 필요합니까?

신청하신 타오바오 매장은 알리바바가 구축한 컴퓨터실에서 바로 이용이 가능합니다. 매장을 꾸미고 진열대에 상품만 올려두기만 하면 된다

알리바바 첸다오호 데이터센터가 호수 바닥에 세워진 걸까?

네, 알리바바의 서버 센터 중 하나가 첸다오호 바닥에 있습니다. 알리바바 클라우드 첸다오호 데이터센터는 건축면적 3만㎡, 11층 규모로 최소 5만대 이상의 기기를 수용할 수 있다. 수냉식 산업용 데이터센터 구축을 위한 템플릿으로서 매우 혁신적이고 대표적이다. 데이터 센터에는 90%의 시간 동안 전기 냉각이 필요하지 않습니다. 깊은 호수 물은 서버를 식히기 위해 완전히 밀봉된 파이프를 통해 데이터 센터를 통과한 다음 칭시 신도시의 2.5km 중심 축 하천을 통해 흐릅니다. 자연 냉각 후 데이터 센터로 돌아옵니다.