데이터 시대, 빅 데이터 컴퓨팅은 각계 각층에 침투, 빅 데이터 컴퓨팅은 이런 식으로 사업을 구동하기 위해 계속 새로운 비즈니스 가치를 창출하기 위해 계산 된 비즈니스 강수량 데이터, 앞으로. (11) 이중 전기 사업자, 기업과 소비자 카니발 뒤, 분리 될 수 없다 같은 큰 데이터의 값이 특히 널리 '실시간 시스템'에 도포하고, 기부를 제공 구한다.
실제 세계에서 데이터는 지속적으로 생성되고 실시간으로 수집 및 계산됩니다.
같은 사용자와 시간 데이터를 지속적으로 생성이, 상품, 마우스 클릭의 시리즈를 탐색 우리는 그림을, 광산 제품의 상업적 가치는, 본질적인 문제는 데이터. 실제 세계의 문제가 종종있을 것이다 배경 데이터의 일련의, 자동차 네비게이션 휴대 전화를 사용, 수시로 업데이트 GPS 위치, 로그 데이터를 생성하는 것, 사용자는 뉴스 피드 검색 곡을 검색 할 감시 카메라 클라우드 스토리지, 라이브 비디오 등 현장에 업로드 캡처 시간 초과 이미지, 이 뒤에 생성 된 데이터는 연속적으로 생성되며 지속적으로 생성 된 비즈니스 데이터는 실시간으로 수집되어 데이터 흐름을 형성합니다.
사람들의 습관 전에, 스트리밍 데이터는 수집 한 번, 즉시 계산 참여할 수 있으며, 실시간으로 계산되는 비즈니스 애플리케이션에 계산 된 결과. 실시간 데이터 계산 사실은 이미 사람들의 삶의 모든 측면에 입력하고, 일기 예보 등 이 업데이트 데이터 수집 및 실시간 데이터 컴퓨팅의 효과 제공을 모니터링 할 수있는 시간을 접근함에 따라 날씨가 더 정확한 것입니다 시간의 동일한 지점을 예측, 이제 실시간 일기 예보를 볼 수 있습니다, 하루에 한 번 일기 예보 정보를 수신하는 단계를 포함한다.
맞춤형, 실시간 컴퓨팅의 이익에 따라 제품을 사용자가 더 많이 이해하게합니다.
점점 더 많은 실시간 데이터 소스가 등장하면서 그 수가 증가하고 있으며, 매년 데이터 양이 기하 급수적으로 증가하고있어 실시간 컴퓨팅에 적합합니다. 더 많은 애플리케이션 시나리오, 더 나은 애플리케이션 효과 및 혁명적 인 변화를 일으 킵니다. 그러면 큰 데이터 실시간 컴퓨팅이 가능합니까?
Netease, Koalahai 이중 바다 11, 618 바다 Amoy 축제 및 기타 활동, 최신 총 현재 판매, 각 제품 카테고리의 판매 비율, 주문 성장 추세, 활성 사용자 위치 NetEase 큰 화면 실시간 디스플레이의 큰 숫자가 될 것입니다 정보의 모든 종류의 크기가 지속적으로 화면에 꺾고있다. 각 사용자의 영향력의 모든 순서는 큰 화면에 실시간 업데이 트됩니다. 전자 상거래 카니발 분위기를 추가 할뿐만 아니라 시각적 실시간 응용 프로그램 결과 데이터의 가치를 쉽게 찾고, 시장 결정을 지원하고, 비즈니스 의사 결정을 지원합니다.
재무 위험 관리는 실시간 컴퓨팅의 또 다른 전형적인 시나리오입니다. 금융 서비스의 위험에 민감한 비즈니스를 고려할 때 데이터를 시각화하는 데는 너무 멀리 떨어져 있습니다. 흐름 컴퓨팅 시스템이 일부 위험 모델 매칭 규칙을 활용할 수 있어야합니다 , 거대한 사용자 행동 데이터의 실시간 분석, 예외 발견, 위험 수준 결정, 비즈니스 프로세스를 변경하기 위해 경보를 자동화하는 적절한 위험 통제 조치를 수행합니다. 금융 실시간 재무 위험 관리, 이점은 다음과 같습니다. 더 빠르고 정확하며 폭 넓은 다른 Windchill과 같은 많은 이벤트 중심 컴퓨팅 시나리오는 실시간 계산을 해결합니다.
권장 영역에서 실시간 컴퓨팅 응용 프로그램도 매우 깊었습니다. 뉴스 추천, 음악 추천 또는 독서 권장 사항이 없으면 기본적으로 수천 명의 사람들이 수행했으며, 각 개인은 푸시 콘텐츠를 받으면 개별 관심사 환경 설정에 맞춰졌습니다 사용자의 관심 선호도 중 자주 실시간 데이터를 통해 계산 된 뉴스를 푸시하기 위해 예를 들어, 사용자가 바를 클릭하여 메시지를 푸시 할 때 실시간으로 사용자의 동작을 실시간으로 분석하여 사용자를 업데이트합니다 관심 환경 설정은 사용자에 대한 관심의 새로운 지점을 찾기 위해, 점점 더 많은 사용자가 이해하고, 마지막으로 사용자가 더 많은 콘텐츠에 관심이 그를 밀어. 예를 들어, 음악 추천은 몇 슬픈 노래의 시간 컬렉션 , 실시간 데이터 분석, 시스템이 정보를 식별 할 수 있으며, 사용자가 진정시키기 위해 몇 가지 노래를 밀어 타겟팅.이 시나리오는 실시간 컴퓨팅이 해결 될 수 있지만 또한 가장 실시간 컴퓨팅의 가치를 반영합니다.
점점 더 많은 실시간 컴퓨팅 시나리오가 개발 될 것이고, 미래의 모든 사람들은 점점 더 심화 될 것입니다.
'저장 전'에서 '저장 중 계산'까지 실시간 컴퓨팅은 더 이상 '큰'데이터를 두려워하지 않습니다.
실시간 컴퓨팅이 매우 좋고 실현 단계에서해야 할 일, 해결해야 할 어려움과 도전은 무엇입니까?
첫째, 전반적인 아키텍처, 데이터 계산, 세 가지보다 아무것도 볼 : 데이터베이스에 대한 기존의 컴퓨팅 모델 → 출력 데이터의 계산 → 데이터 입력, 예를 들어, 데이터가 먼저 데이터 테이블에 저장되고, 사용자가 쿼리를 실행합니다. 데이터베이스, 데이터베이스 그리고 마지막으로 출력 계산 완료 후. 빅 데이터 컴퓨팅 시나리오가 작동하지 않는 실시간이 '첫번째 예금 수 후'모델. 우리는 데이터, 계산의 결과 '큰'입니다 계산하려는의 발사 작업을 계산 비용이 매우 큰, 그래서 최종 효과가있을 것입니다 각각의 모든 데이터를 다시 계산 간주되고, 새로운 데이터를 추가하면 지난 날의 데이터에 적용 할 수있다 관련된 소스 데이터는. 데이터 레코드의 수 천억이 될 수 있습니다 매우 '느린'효과를보다 합리적인 접근 방식은 컴퓨팅 시스템을 실시간으로 데이터를 의미하는 '사이드 에지 카운트를 유지'하는 것입니다 실시간에 도달, 반드시 직접 계산에 참여하고, 계산이 여기에있다 할 수있다, 저장 할 필요가 없습니다 이전의 과거 데이터 계산 결과의 현재 새 데이터는 '증분 계산'을 수행하고, 동일한 데이터는 반복 계산 계산에 관여하지 않으며, 그런 다음 비즈니스 사용을 위해 함께 결과를 저장 한 후 데이터가 저장 압력은 훨씬 작아 '빅'은 데이터가 높은 복잡 것을 의미하는 동안, 당신은 초당 천만 새로운 데이터를 계산해야 할 수도 있습니다,이 금액은 계산되지 않습니다 독립형은 견딜 수 있으므로 실시간 컴퓨팅은 해결해야 할 대용량 데이터가 분산 시스템 아키텍처에서 일련의 기술적 인 문제입니다.
전체 프로세스의 출력을 계산하는 실제 문제에서 데이터 수집을 포함하여 많은 측면을 분산 컴퓨팅은 '증가 계산 "모델을 사용하여 계산되는 노드 자체에 더하여, 낮은 지연을 수행 할뿐만 아니라, 높은 상향 데이터 전송 모듈을 필요로해야 처리량의 역할 및 낮은 지연이 전제 실시간 출력을 위해 최적화 된 대 유량 시나리오, 데이터 압축, 일괄 출력에 필요한 다운 스트림 출력 모듈을 재생할 수있는 버퍼 내의 데이터를 캐시하는 능력 개진 등 다수의 소비자가 동시에 청구되는 이중 11 0:00 같은 높은 요구, 실시간 컴퓨팅 시스템의 다른 특징은, 컴퓨팅 시스템, 시스템 요구 엄청나 실시간 데이터의 즉각적인 양 붓고 이는 높은 스루풋이 여전히 낮은 보장된다 경우의 결과와 함께 전체를 계산하기 위해 데이터를 병렬로 처리하기위한 강력한 기능, 연산 노드, 노드와 수렴 연산 결과의 일시 수백 많은 트래픽의 적절한 할당을 갖는다 지연되었습니다.
'일괄 계산'에서 '점진적 계산'에 이르기까지 가장 어려운 점은 정확성과 사용 용이성입니다.
그리고 낮은 대기 시간 같은 핵심 과제는 정확성이다. 당신이 정확도 측면에서 문제를 과거의 기술 경험을 복사 할 수 없습니다 그렇지 않은 경우가있을 것입니다, 그래서 '증분 컴퓨팅'모델과 기존의 "배치 컴퓨팅 '모델은 다르다. 분명히 생각해야 어떻게 최종 결과의 정확성을 보장하기 위해 이전의 결과로부터 계산 된 계산 값의 일부의 제거를 지원하는 심지어 일부 시나리오에서, 이전의 계산에 겹쳐 새로운 데이터를 입력한다.
노드 장애의 분산 시스템에 오류가 발생하면, 시스템은 빠른 복구, 또는 시스템의 출력을 업데이트해야하기 때문에, 컴퓨팅 시스템 장애 복구 기능 실시간 스트리밍이 정체 할 수있다, 또한 중요하다 매우 일반적이다, 실시간 그것은 실패가 '증가 컴퓨팅'모델을 파괴 할 수는 없지만, 그렇지 않으면, 발생하는 실시간 결과에 '배치 컴퓨팅'모델로 변질하지, 그리고 결과의 정확성을 보장하기 어렵다하지 않습니다.
사실, 자체 연구 흐름 계산 플랫폼 Sloth의 과정에서 NetEase 큰 데이터가 발생하고 위의 기술적 인 어려움을 극복. 제품 플랫폼, 사용의 제품 용이성, 멀티 세입자 절연 완료로 Nieflow 컴퓨팅 플랫폼 Sloth 많은 작업이 필요합니다. 실시간 컴퓨팅의 경우 사용 편의성에 대해 더 많은 논의가 이루어졌습니다.
</ s>
개발자가 독립형 프로그램을 작성하는 것보다 분산 형 프로그램을 작성하는 것이 어렵고 분산 형 실시간 프로그램을 작성하는 것이 어려울 것입니다 많은 산업 분야에서 많은 수의 작업을 수행하는 데 도움을 준 수많은 오픈 소스 스트리밍 컴퓨팅 엔진이 있으며, 사람들은 이러한 흐름 계산 엔진을 사용하여 흐름 계산 태스크 개발을 완료 할 수 있으며 더 이상 계산 작업을 여러 계산 노드에 배포하는 방법과 계산 노드간에 데이터를 전송하는 방법을 염려 할 필요가 없으며 계산 논리, 컴퓨팅 병렬 처리의 여러 계산 단계를 제어합니다.
문서의 단어의 수를 계산하기 위해, 예를 들어, 분산 컴퓨팅 프로그램 내용이 세 부분을 포함 할 수있다, 제 몇 컴퓨팅 분할 공통적 인 하나 개의 단어에 텍스트의 각 라인 노드, 두 번째 단계는 서로를 사용하는 일부 계산 노드는 단어의 수를 계산합니다 (데이터의 엄청난 양을 고려하여 하나 이상의 노드를 사용하여 계산을 수행해야합니다). 세 번째 단계는 계산 노드가 각 부품의 업스트림 노드를 계산하여 하나로 계산합니다 총 횟수. 따라서 간단한 시나리오 개발해야하는 코드의 양을 약 200 라인이다. 실제 비즈니스 시나리오, 컴퓨팅 노드 데이터 스트림까지 개 이상, 가산에 기초하여 계산의 형태보다 더 복잡 많이 흐름 계산 엔진과 함께, 실시간 실시간 계산 프로그램 개발은 여전히 더 어렵습니다. 또한, 개발이 완료 되더라도, 또한 컴퓨팅이 바뀌면 디버깅, 컴퓨팅 프레임 워크 유지 보수 등 많은 시간을 소비해야합니다. , 모든 작업을 다시 반복해야합니다. 이것은 더 고통스러운 과정입니다. 흐름 계산 프로그램을 작성하기 쉽도록 만드는 방법은 실시간입니다. 플랫폼 도전을 완료하는 데 필요한.
그리고, 유사한 문제를 해결하는 방법입니다 실시간 스트림 컴퓨팅 시스템 문제를 쉽게 컴퓨터 과학의 발전 과정을보고 해결하는 방법에 대해 생각하지 않습니다. 그것은 프로그래밍 그래서 점점 더 높은 수준의 프로그래밍 언어 밖으로 발명 된, 쉽게 될 수 있다는 희망 사람들은 데이터 계산을 더 쉽게하고, 데이터베이스와 SQL 언어 (구조화 된 쿼리 언어)를 원하지만 대형 데이터 시대에 사람들은 여전히 연산 엔진 프로그래밍 컴플렉스에 의존 할 때 오프라인 일괄 컴퓨팅에 어려움을 겪고 있습니다 문제는 결국 분산 된 오프라인 컴퓨팅 시스템에 SQL 언어를 적용하여 문제를 해결했습니다. 오늘날 실시간 컴퓨팅의 급속한 발전이 SQL에서도 동일하게 해결 될 수 있을까요? 그렇습니다. 그렇지만 많은 것이 있습니다. 문제의 세부 사항을 면밀히 조사 할 필요가 있습니다.
실시간 흐름 계산에서 데이터의 흐름은 동적 데이터 테이블로 이해할 수 있습니다.
위에서 언급 한 오프라인 일괄 계산 모델과 실시간 점진적 계산 모델은 SQL 언어와 각각 일괄 처리 및 스트리밍 컴퓨팅이 다르면 그 의미도 달라야합니다. 컴퓨팅 및 컴퓨팅의 주요 일괄 처리 차이는 이전의 데이터가 제한됩니다 후자는 무제한 데이터가 지속적으로 시스템에 수집됩니다. 위의 오프라인 데이터의 그룹에 대한 SQL 쿼리, 계산이 완료되면 출력 결과,이 SQL 쿼리 SQL이 완료 될 때까지 오프라인 SQL의 의미에 따라 데이터가 지속적으로 유입되기 때문에 계산이 결과를 출력하지 않을 것이므로 분명하지 않습니다. 원하는 효과의 흐름 계산, 그래서 스트리밍 SQL의 본질은 계산 작업의 결과가 출력되는 동안 실행되는 동안 일련의 흐름 계산 작업을 정의해야합니다.
오프라인 SQL은 정적 데이터 시트를 처리하지만 스트림 SQL은 데이터 스트림을 처리하고 SQL의 계산 의미 (합, 평균, 데이터 테이블 조인 등)는 데이터 스트림에서 유효합니다. 변환의 개념 : 오프라인 SQL은 다른 정적 데이터 테이블에 정적 데이터 테이블이며, 실시간 스트림 계산은 동적 데이터 테이블로 해석 될 수 있습니다 (데이터는 동적 데이터 테이블을 계속 확장 할 것입니다) 다른 시간 데이터 테이블이 다르다, SQL의 구현은 다른 계산 결과, 같은 시리즈의 영화 슬라이드 쇼와 같은 이러한 다른 계산의 결과, 우리는 동적 결과 테이블을 가지고 - 스트리밍 SQL은 동적 데이터 테이블을 다른 동적 데이터 테이블로 변환하여 SQL 컴퓨팅 의미의 흐름을 이해하기 쉽도록합니다. 실시간 스트리밍 컴퓨팅 시스템은 문제를 해결하기 위해 '어떻게 동적 데이터 테이블을 얻는 지 계산해라.
스트리밍 SQL 엔진 최적화는 현재 기술적 진보의 주된 방향입니다
컴퓨팅 시스템을 스트리밍 사용, 실시간의 용이성, NetEase는 스트림 컴퓨팅 플랫폼 나무 늘보도이 이론을 확인 SQL 언어, 생산 관행을 해결하기 위해 사용할 수 없습니다. 사용자가 더 이상 엔진 프로그래밍 인터페이스를 다양한 컴퓨팅을 배울 필요를 더 이상 디버깅 할 필요가 없습니다 분산 컴퓨팅 프로그램, 더 이상 자신의 스트림 컴퓨팅 시스템을 관리 할 필요가 없으며, 단지 라이브 스트림 컴퓨팅 플랫폼에 SQL로 마이그레이션 할 원래의 오프라인 플랫폼에서 실행해야합니다, 우리는 복잡한 실시간 계산 논리를 완료 할 수 있습니다.
클라이언트 작업이 크게 감소, 작업의 실시간 스트림 컴퓨팅 플랫폼이 증가 할 수밖에 없다, 더 어려운 부분은 실제 계산 논리에 SQL 쿼리는 데이터베이스 엔진과 같은 스트리밍 SQL 계산 엔진 지원을 달성하는 방법입니다 전술 한 바와 같이 역할, 그리고, '증가 컴퓨팅'모델을 준수해야이 계산 로직 엔진. 한편, 비즈니스 시나리오의 다양한 실시간 계산 결과를 만들기 위해, 계산 엔진 역할 엉덩이의 다양한 저장 할 수 있어야합니다 이러한 예 오프라인 스토리지와 같은 데이터, 메시지 큐, 등.
응용 프로그램 시나리오의 실시간 스트리밍을 계산하는 이중 11 대형 화면 바로 빅 데이터가있을 것입니다 점점 더 많은 텍스트뿐만 아니라 실시간 컴퓨팅, 이미지, 음성도 실시간으로 계산할 수 있습니다, 온라인 기계 학습, 네트워킹과 같은 실시간 컴퓨팅 시나리오, 실시간 시스템 등의 실시간 데이터 및 실시간 플로우 계산 씬의 종류는 기하 급수적이며, 실시간 계산 엔진이 흐름에 점점 더 많은 것이다 앞서 더 작은 도전에 직면하지 대해서도 설명 SQL 기반 플로우 계산의 진화 것 같은 출력 트리거, 오래된 데이터 처리와 같은 특정 속성의 계산, 데이터 윈도우는 다양한 규칙으로 나누어 져 있습니다. SQL 엔진이 자동으로 전류의 흐름을 최적화하는 주요 기술 혁신 방향, 나는 기술, 응용 프로그램의 발전과 함께 실시간 유량 계산의 미래를 생각하다 심층적이고 광범위합니다.
데이터 시대, 빅 데이터 컴퓨팅은 각계 각층에 침투, 빅 데이터 컴퓨팅은 이런 식으로 사업을 구동하기 위해 계속 새로운 비즈니스 가치를 창출하기 위해 계산 된 비즈니스 강수량 데이터, 앞으로. (11) 이중 전기 사업자, 기업과 소비자 카니발 뒤, 분리 될 수 없다 같은 큰 데이터의 값이 특히 널리 '실시간 시스템'에 도포하고, 기부를 제공 구한다.
실제 세계에서 데이터는 지속적으로 생성되고 실시간으로 수집 및 계산됩니다.
같은 사용자와 시간 데이터를 지속적으로 생성이, 상품, 마우스 클릭의 시리즈를 탐색 우리는 그림을, 광산 제품의 상업적 가치는, 본질적인 문제는 데이터. 실제 세계의 문제가 종종있을 것이다 배경 데이터의 일련의, 자동차 네비게이션 휴대 전화를 사용, 수시로 업데이트 GPS 위치, 로그 데이터를 생성하는 것, 사용자는 뉴스 피드 검색 곡을 검색 할 감시 카메라 클라우드 스토리지, 라이브 비디오 등 현장에 업로드 캡처 시간 초과 이미지, 이 뒤에 생성 된 데이터는 연속적으로 생성되며 지속적으로 생성 된 비즈니스 데이터는 실시간으로 수집되어 데이터 흐름을 형성합니다.
사람들의 습관 전에, 스트리밍 데이터는 수집 한 번, 즉시 계산 참여할 수 있으며, 실시간으로 계산되는 비즈니스 애플리케이션에 계산 된 결과. 실시간 데이터 계산 사실은 이미 사람들의 삶의 모든 측면에 입력하고, 일기 예보 등 이 업데이트 데이터 수집 및 실시간 데이터 컴퓨팅의 효과 제공을 모니터링 할 수있는 시간을 접근함에 따라 날씨가 더 정확한 것입니다 시간의 동일한 지점을 예측, 이제 실시간 일기 예보를 볼 수 있습니다, 하루에 한 번 일기 예보 정보를 수신하는 단계를 포함한다.
맞춤형, 실시간 컴퓨팅의 이익에 따라 제품을 사용자가 더 많이 이해하게합니다.
데이터의 연간 양의 수를 증가 점점 더 많은 실시간 데이터 소스가이 실시간 계산 자체가 좋은 기하 급수적으로 성장하고있다, 당신은 아마도 더 많은 시나리오, 더 나은 응용 프로그램의 영향을 미칠 수 있습니다 혁명적 인 변화를 일으 킵니다. 그러면 큰 데이터 실시간 컴퓨팅이 가능합니까?
바다의 Amoy 행사 및 기타 활동 중에 NetEase는, 라하이나 테스트 구매 이중 11, 618이하는 NetEase는 여러 대형 화면에 실시간으로 현재 날짜 총 판매 표시가있을 것입니다, 각 제품 카테고리의 판매의 비율, 주문 성장 추세, 활성 사용자의 지리적 위치 등 , 다양한 크기에 대한 정보를 지속적으로 하나의 화면에 치고있다. 각 주문에 대한 각 사용자뿐만 아니라 큰 화면에 실시간 업데이트의 영향. 실시간 응용 프로그램의 시각 효과 일 것이다 전기 공급 업체 카니발 분위기를 추가로 데이터의 가치를 쉽게 찾고 시장 운영을 안내하고 비즈니스 의사 결정을 지원합니다.
금융 리스크 관리가 다른 일반적인 실시간 컴퓨팅 시나리오.이 위험에 민감한 금융 서비스 사업, 유일하게 할 수있는 데이터 시각화, 그것은 위험 모델의 일부를 사용하는 규칙을 일치 할 수있는 컴퓨팅 시스템의 흐름 필요가 충분하지됩니다 데이터, 특별한 이벤트, 방대한 양의 사용자 행동의 실시간 분석의 이점은 비즈니스 프로세스를 변경, 위험의 수준을 결정하고, 자동 경고 알림을 수행하는 적절한 위험 관리 조치를 확인합니다. 금융 리스크 관리의 실시간 계산을 수행하여 데려 더 빠르고 정확하며 폭 넓은 다른 Windchill과 같은 많은 이벤트 중심 컴퓨팅 시나리오는 실시간 계산을 해결합니다.
권장 영역에서 실시간 컴퓨팅 응용 프로그램도 매우 깊었습니다. 뉴스 권고, 음악 추천 또는 독서 권장 사항에 상관없이 기본은 수천 명의 사람들을 수행했으며, 각 개인은 푸시 콘텐츠를 받았으며 개인의 관심과 선호에 맞게 조정되었습니다. 사용자의 관심 선호도 중 자주 실시간 데이터를 통해 계산 된 뉴스를 푸시하기 위해 예를 들어, 사용자가 바를 클릭하여 메시지를 푸시 할 때 실시간으로 사용자의 동작을 실시간으로 분석하여 사용자를 업데이트합니다 관심 선호도는 계속해서 사용자에 대한 새로운 관심 지점을 찾고, 점점 더 많은 사용자가 이해하고, 마지막으로 사용자에게 더 관심을 갖도록 유도합니다. 음악 추천은 예를 들어 사용자가 몇 곡의 슬픈 노래 , 실시간 데이터 분석, 시스템이 정보를 식별 할 수 있으며, 사용자가 진정시키기 위해 몇 가지 노래를 밀어 타겟팅.이 시나리오는 실시간 컴퓨팅은 해결 될 수 있지만 또한 실시간 컴퓨팅의 가치를 반영합니다.
점점 더 많은 실시간 컴퓨팅 시나리오가 개발 될 것이고, 미래의 모든 사람들은 점점 더 심화 될 것입니다.
'저장 전'에서 '저장 중 계산'까지 실시간 컴퓨팅은 더 이상 '큰'데이터를 두려워하지 않습니다.
실시간 컴퓨팅이 매우 좋고 실현 단계에서해야 할 일, 해결해야 할 어려움과 도전은 무엇입니까?
첫째, 전반적인 아키텍처, 데이터 계산, 세 가지보다 아무것도 볼 : 데이터베이스에 대한 기존의 컴퓨팅 모델 → 출력 데이터의 계산 → 데이터 입력, 예를 들어, 데이터가 먼저 데이터 테이블에 저장되고, 사용자가 쿼리를 실행합니다. 데이터베이스, 데이터베이스 그리고 마지막으로 출력 계산 완료 후. 빅 데이터 컴퓨팅 시나리오가 작동하지 않는 실시간이 '첫번째 예금 수 후'모델. 우리는 데이터, 계산의 결과 '큰'입니다 계산하려는의 발사 작업을 계산 비용이 매우 큰, 그래서 최종 효과가있을 것입니다 각각의 모든 데이터를 다시 계산 간주되고, 새로운 데이터를 추가하면 지난 날의 데이터에 적용 할 수있다 관련된 소스 데이터는. 데이터 레코드의 수 천억이 될 수 있습니다 매우 '느린'효과를보다 합리적인 접근 방식은 컴퓨팅 시스템을 실시간으로 데이터를 의미하는 '사이드 에지 카운트를 유지'하는 것입니다 실시간에 도달, 반드시 직접 계산에 참여하고, 계산이 여기에있다 할 수있다, 저장 할 필요가 없습니다 현재 새로운 데이터 기록 데이터 '증분 컴퓨팅'을 계산하기 전에, 계산 종료 후, 계산에 포함 된 동일한 데이터를 반복하지 않는다 그런 다음 비즈니스 사용을 위해 함께 결과를 저장 한 후 데이터가 저장 압력은 훨씬 작아 '빅'은 데이터가 높은 복잡 것을 의미하는 동안, 당신은 초당 천만 새로운 데이터를 계산해야 할 수도 있습니다,이 금액은 계산되지 않습니다 독립형은 견딜 수 있으므로 실시간 컴퓨팅은 해결해야 할 대용량 데이터가 분산 시스템 아키텍처에서 일련의 기술적 인 문제입니다.
전체 프로세스의 출력을 계산하는 실제 문제에서 데이터 수집을 포함하여 많은 측면을 분산 컴퓨팅은 '증가 계산 "모델을 사용하여 계산되는 노드 자체에 더하여, 낮은 지연을 수행 할뿐만 아니라, 높은 상향 데이터 전송 모듈을 필요로해야 처리량의 역할 및 낮은 지연이 전제 실시간 출력을 위해 최적화 된 대 유량 시나리오, 데이터 압축, 일괄 출력에 필요한 다운 스트림 출력 모듈을 재생할 수있는 버퍼 내의 데이터를 캐시하는 능력 개진 등 다수의 소비자가 동시에 청구되는 이중 11 0:00 같은 높은 요구, 실시간 컴퓨팅 시스템의 다른 특징은, 컴퓨팅 시스템, 시스템 요구 엄청나 실시간 데이터의 즉각적인 양 붓고 이는 높은 스루풋이 여전히 낮은 보장된다 경우의 결과와 함께 전체를 계산하기 위해 데이터를 병렬로 처리하기위한 강력한 기능, 연산 노드, 노드와 수렴 연산 결과의 일시 수백 많은 트래픽의 적절한 할당을 갖는다 지연되었습니다.
'일괄 계산'에서 '점진적 계산'에 이르기까지 가장 어려운 점은 정확성과 사용 용이성입니다.
그리고 낮은 대기 시간 같은 핵심 과제는 정확성이다. 당신이 정확도 측면에서 문제를 과거의 기술 경험을 복사 할 수 없습니다 그렇지 않은 경우가있을 것입니다, 그래서 '증분 컴퓨팅'모델과 기존의 "배치 컴퓨팅 '모델은 다르다. 분명히 생각해야 어떻게 최종 결과의 정확성을 보장하기 위해 이전의 결과로부터 계산 된 계산 값의 일부의 제거를 지원하는 심지어 일부 시나리오에서, 이전의 계산에 겹쳐 새로운 데이터를 입력한다.
노드 장애의 분산 시스템에 오류가 발생하면, 시스템은 빠른 복구, 또는 시스템의 출력을 업데이트해야하기 때문에, 컴퓨팅 시스템 장애 복구 기능 실시간 스트리밍이 정체 할 수있다, 또한 중요하다 매우 일반적이다, 실시간 그것은 실패가 '증가 컴퓨팅'모델을 파괴 할 수는 없지만, 그렇지 않으면, 발생하는 실시간 결과에 '배치 컴퓨팅'모델로 변질하지, 그리고 결과의 정확성을 보장하기 어렵다하지 않습니다.
사실, 자체 연구 흐름 계산 플랫폼 Sloth의 과정에서 NetEase 큰 데이터가 발생하고 위의 기술적 인 어려움을 극복. 제품 플랫폼, 사용의 제품 용이성, 멀티 세입자 절연 완료로 Nieflow 컴퓨팅 플랫폼 Sloth 많은 작업이 필요합니다. 실시간 컴퓨팅의 경우 사용 편의성에 대해 더 많은 논의가 이루어졌습니다.
</ s>
개발자가 독립형 프로그램을 작성하는 것보다 분산 형 프로그램을 작성하는 것이 어렵고 분산 형 실시간 프로그램을 작성하는 것이 어려울 것입니다 많은 산업 분야에서 많은 수의 작업을 수행하는 데 도움을 준 수많은 오픈 소스 스트리밍 컴퓨팅 엔진이 있으며, 사람들은 이러한 흐름 계산 엔진을 사용하여 흐름 계산 태스크의 개발을 완료 할 수 있으며 더 이상 계산 작업을 여러 계산 노드에 배포하는 방법과 계산 노드간에 데이터를 전송하는 방법을 염려 할 필요가 없으며 계산 논리, 컴퓨팅 병렬 처리의 여러 계산 단계를 제어합니다.
예를 들어 기사의 단어 수를 계산할 때 분산 컴퓨팅 프로그램의 내용은 세 부분으로 구성 될 수 있습니다. 첫째, 여러 컴퓨팅 노드가 함께 작업하여 텍스트의 각 줄을 하나씩 단어로 나눕니다. 두 번째 단계는 다른 일부 계산 노드는 단어의 수를 계산합니다 (데이터의 엄청난 양을 고려하여 하나 이상의 노드를 사용하여 계산을 수행해야합니다). 세 번째 단계는 계산의 각 부분의 업스트림 노드를 하나씩 계산하는 계산 노드입니다 총 수 :이 간단한 시나리오에서 개발해야하는 코드의 양은 약 200 개입니다. 실제 비즈니스 시나리오에서는 데이터가 흐르는 컴퓨팅 노드의 수가 3 개를 훨씬 넘고 계산 유형도 기본 요약보다 훨씬 복잡합니다. 흐름 계산 엔진과 함께, 실시간 실시간 계산 프로그램 개발은 여전히 더 어렵습니다. 또한, 개발이 완료 되더라도, 또한 컴퓨팅이 바뀌면 디버깅, 컴퓨팅 프레임 워크 유지 보수 등 많은 시간을 소비해야합니다. , 모든 작업을 다시 반복해야합니다. 이것은 더 고통스러운 과정입니다. 흐름 계산 프로그램을 작성하기 쉽도록 만드는 방법은 실시간입니다. 플랫폼 도전을 완료하는 데 필요한.
실시간 스트리밍 컴퓨팅 시스템이 사용 편의성을 어떻게 처리하는지에 관계없이 컴퓨터 과학 프로세스에서 유사한 문제가 어떻게 해결되는지 살펴보십시오. 사람들은 프로그래밍을 더 쉽게 만들고 싶어하므로 점점 더 높은 수준의 프로그래밍 언어가 발명되었습니다 사람들은 데이터 계산을 더 쉽게하고, 데이터베이스와 SQL 언어 (구조화 된 쿼리 언어)를 원하지만 대형 데이터 시대에 사람들은 여전히 연산 엔진 프로그래밍 컴플렉스에 의존 할 때 오프라인 일괄 컴퓨팅에 어려움을 겪고 있습니다 문제는 결국 분산 된 오프라인 컴퓨팅 시스템에 SQL 언어를 적용하여 문제를 해결했습니다. 오늘날 실시간 컴퓨팅의 급속한 발전이 SQL에서도 동일하게 해결 될 수 있을까요? 그렇습니다. 그렇지만 많은 것이 있습니다. 문제의 세부 사항을 면밀히 조사 할 필요가 있습니다.
실시간 흐름 계산에서 데이터의 흐름은 동적 데이터 테이블로 이해할 수 있습니다.
상술 된 오프라인 실시간 계산 모델 배치 증분 계산 모델은 다른 경우에도 양의 계산 및 메인 흐름 컴퓨팅 의미의 변화를 필요로하는 각 SQL 언어 기능, 벌크 흐름 계산 및 계산 차이는 이전의 데이터가 제한됩니다 후자는 무제한 데이터가 지속적으로 시스템에 수집됩니다. 위의 오프라인 데이터의 그룹에 대한 SQL 쿼리, 계산이 완료되면 출력 결과,이 SQL 쿼리 SQL이 완료 될 때까지 오프라인 SQL의 의미에 따라 데이터가 지속적으로 유입되기 때문에 계산이 결과를 출력하지 않을 것이므로 분명하지 않습니다. 원하는 효과의 흐름 계산, 그래서 스트리밍 SQL의 본질은 계산 작업의 결과가 출력되는 동안 실행되는 동안 일련의 흐름 계산 작업을 정의해야합니다.
오프라인 SQL은 정적 데이터 시트를 처리하지만 스트림 SQL은 데이터 스트림을 처리하고 SQL의 계산 의미 (합, 평균, 데이터 테이블 조인 등)는 데이터 스트림에서 유효합니다. 개념적 변환 : 오프라인 SQL 정적 인 다른 데이터 테이블에 정적 데이터 테이블 변환이고 실시간 데이터 흐름 계산 스트리밍은, (데이터가 동영상 테이블 성장) 동적 데이터 테이블로 이해할 수있다 이 데이터 시트의 다른 순간 다른 모습을 가지고 SQL은 다른 결과를 얻을 것입니다 실행, 함께 슬라이드 쇼와 같은 영화와 같은 서로 다른 결과, 우리는 결과의 동적 테이블을 얻을 - 스트리밍 할 수있는 SQL은 다른 동적 데이터 테이블에 동적 데이터 테이블을 변환하는 것입니다, 그래서 계산 스트림 SQL의 의미는 '어떻게 동적 데이터 테이블을 구현하는 감소 될 것이다 실시간 스트림 컴퓨팅 시스템에서 해결해야 할 문제를 이해하는 것이 더 쉽습니다 계산해라.
스트리밍 SQL 엔진 최적화는 현재 기술적 진보의 주된 방향입니다
컴퓨팅 시스템을 스트리밍 사용, 실시간의 용이성, NetEase는 스트림 컴퓨팅 플랫폼 나무 늘보도이 이론을 확인 SQL 언어, 생산 관행을 해결하기 위해 사용할 수 없습니다. 사용자가 더 이상 엔진 프로그래밍 인터페이스를 다양한 컴퓨팅을 배울 필요를 더 이상 디버깅 할 필요가 없습니다 분산 컴퓨팅 프로그램은 더 이상 자신의 스트림 컴퓨팅 시스템을 유지할 필요가 없습니다 그냥 오프라인 플랫폼에서 실시간 스트리밍 컴퓨팅 플랫폼으로 실행되는 SQL을 마이 그 레이션해야합니다, 당신은 복잡한 실시간 컴퓨팅 논리를 완료 할 수 있습니다.
클라이언트 작업이 크게 감소, 작업의 실시간 스트림 컴퓨팅 플랫폼이 증가 할 수밖에 없다, 더 어려운 부분은 실제 계산 논리에 SQL 쿼리는 데이터베이스 엔진과 같은 스트리밍 SQL 계산 엔진 지원을 달성하는 방법입니다 전술 한 바와 같이 역할, 그리고, '증가 컴퓨팅'모델을 준수해야이 계산 로직 엔진. 한편, 비즈니스 시나리오의 다양한 실시간 계산 결과를 만들기 위해, 계산 엔진 역할 엉덩이의 다양한 저장 할 수 있어야합니다 , 데이터, 메시지 큐, 오프라인 스토리지 등.
응용 프로그램 시나리오의 실시간 스트리밍을 계산하는 이중 11 대형 화면 바로 빅 데이터가있을 것입니다 점점 더 많은 텍스트뿐만 아니라 실시간 컴퓨팅, 이미지, 음성도 실시간으로 계산할 수 있습니다, 온라인 기계 학습, 네트워킹과 같은 실시간 컴퓨팅 시나리오, 실시간 시스템 등의 실시간 데이터 및 실시간 플로우 계산 씬의 종류는 기하 급수적이며, 실시간 계산 엔진이 흐름에 점점 더 많은 것이다 앞서 더 작은 도전에 직면하지 대해서도 설명 SQL 기반 플로우 계산의 진화 것 같은 출력 트리거, 오래된 데이터 처리와 같은 특정 속성의 계산, 데이터 윈도우는 다양한 규칙으로 나누어 져 있습니다. SQL 엔진이 자동으로 전류의 흐름을 최적화하는 주요 기술 혁신 방향, 나는 기술, 응용 프로그램의 발전과 함께 실시간 유량 계산의 미래를 생각하다 심층적이고 광범위합니다.