개인 재정 HiveQL에서 윈도우 잉

HiveQL에서 윈도우 잉

비디오: Intro to Hadoop MapReduce with C# 2024

비디오: Intro to Hadoop MapReduce with C# 2024
Anonim

SQL: 2003 표준에 소개 된 윈도 윙의 개념은 SQL 프로그래머가 집계 및 기타 창 기능이 작동 할 수 있습니다. 이제 HiveQL은 SQL 표준에 따라 윈도우 작업을 지원합니다. 예제는 창 작업 및 집계 함수를 설명 할 때 매우 유용합니다. 출발 지연은 선택한 비행 모드로 비행 할 때의 영토와 함께 제공됩니다. 따라서 RITA에서 작성한 비행 데이터에이 정보가 포함되어 있다는 것은 놀랄 일이 아닙니다. & ldquo; 하루 평균 비행 지연은 정확히 무엇입니까 & rdquo; ? 다음 목록의 쿼리는 2008 년 하루 평균 출발 지연을 산출합니다.

(A)
하이브 (비행 데이터)>보기 생성 avgdepdelay AS> 선택 DayOfWeek, AVG (DepDelay) From FlightInfo2008 GROUP BY DayOfWeek; OK 찍은 시간: 0. 121 초 (B) 하이브 (비행 데이터)> SELECT * FROM avgdepdelay; … 확인 1 10. 269990244459473 2 8. 97689712068735 3 8. 289761053658728 4 9. 772897177836702 5 12. 158036387869656 6 8. 645680904903614 7 11. 568973392595312 소요 시간: 18. 6 초, 가져 오는 수: 7 행 TGIF, 또는 & ldquo; 금요일에 감사합니다. & rdquo; 모든 사람에게 적용되는 것은 아닙니다. 금요일 (5 일)의 결과 (5 월)가 가장 많은 지연을 보인 것은 놀라운 일이 아닙니다. 

HiveQL에서 뷰가 참조되면 하이브는 쿼리를 실행 한 다음 더 큰 쿼리의 일부일 수있는 결과를 사용합니다. 이것은 복잡한 쿼리를 단순화하고 논리적 구성 요소로 분해하는 데 매우 유용 할 수 있습니다. 또한 주당 모든 요일을 수집하고 AVG 집계 함수가 하루에 통합 된 응답을 제공 할 수 있도록하는 GROUP BY 절을 주목하십시오.

물론이 정보는 유용하지만 하루에 개인 전화 번호를보고 싶다면 어떻게해야할까요? GROUP BY로 데이터를 통합하면 원하는 정보를 잃어 버렸지 만 원하는 답변을 찾을 수 있습니다. 이 정보 손실 문제를 해결하면 윈도우 잉이 매우 편리합니다.

Apache Hive가 답변 할 수있는 RITA 2008 비행 데이터에 대한 또 다른 질문은 다음과 같습니다. & ldquo; 공항 X와 Y & R 사이의 첫 번째 항공편은 무엇입니까? ? 이 정보에 덧붙여, 후속 항공편에 대해 알고 싶다고 가정 해보십시오. 단지 & ldquo가 아닌 경우에 대비하십시오. 아침 사람.& rdquo; 이것은 HiveQL에서 윈도우 잉 작업입니다! 다음 목록은 이러한 질문에 대한 대답을 제공합니다.

(A)

하이브 (비행 데이터)> SELECT f08. 월, f08. DayOfMonth, cr. 설명, f08. 원점, f08. 목적지, f08. FlightNum, f08. DepTime, MIN (f08. DepTime) OVER (PARTITION BY f08. DayOfMonth ORDER BY f08. DepTime) FROM flightinfo2008 f08 JOIN 통신사에서 CR ON f08. UniqueCarrier = cr. 코드는 어디 f08. 원점 = 'JFK'AND f08. Dest = 'ORD'AND f08. 월 = 1 AND f08. DepTime! = 0; … OK 1 1 JetBlue Airways JFK ORD 903 641 641 1 1 아메리칸 항공 Inc. JFK ORD 1323 833 641 1 1 JetBlue Airways JFK ORD 907 929 641 1 1 Comair Inc. JFK ORD 5083 945 641 1 1 Comair Inc. JFK ORD 5634 1215 641 1 1 JetBlue Airways JFK ORD 915 1352 641 1 1 아메리칸 항공 Inc. JFK ORD 1323 833 641 1 1 JetBlue Airways JFK ORD 907 929 641 1 1 Comair Inc. JFK ORD 5083 945 641 1 1 Comair Inc. JFK ORD 5634 1215 641 1 1 JetBlue Airways JFK ORD 915 1352 641 1 1 아메리칸 항공 Inc. JFK ORD 1815 1610 641 1 1 JetBlue Airways JFK ORD 917 1735 641 1 1 Comair Inc. JFK ORD 5469 1749 641 1 1 Comair Inc. JFK ORD 5492 2000 641 1 1 JetBlue Airways JFK ORD 919 2102 641 1 31 JetBlue Airways JFK ORD 919 48 48 1 31 JetBlue Airways JFK ORD 903 635 48 1 31 Comair Inc. JFK ORD 5447 650 48 1 31 아메리칸 항공 Inc. JFK ORD 1323 840 48 1 31 제트 블루 Airways JFK ORD 907 921 48 1 31 JetBlue Airways JFK ORD 917 1859 48

단계 (A)에서 GROUP BY 절이 OVER 절로 대체되었습니다. MIN 집계 함수가 작동하게 할 PARTITION 또는 창. 또한 ORDER BY 절이 포함되어 있으므로 첫 번째 비행 이후의 후속 비행을 볼 수 있습니다.


목록에서 알 수 있듯이 1 월 31 일에 JetBlue는 12시 48 분에 멋진 비행을했습니다. 엠. 나중에 6시 35 분에 선택하십시오. 엠. 조기 - 라이저 문제는 제쳐두고, GROUP BY 절을 다시 사용하도록 선택했다면 잃어버린 정보를 쿼리 출력에 보관했습니다.

이 기능 하나만으로도 강력한 윈도우 기능을 구현할 수 있습니다. Hive 0.1 릴리스의 창 작업과 함께이 커뮤니티는 창 작업과 함께 사용할 수있는 몇 가지 분석 기능을 제공했습니다. 또한 RANK, ROW_NUMBER, DENSE_RANK, CUME_DIST, PERCENT_RANK 및 NTILE과 같은 기능을 사용할 수 있습니다.

HiveQL에서 윈도우 잉

편집자의 선택

JavaScript에서 HTML 양식 요소에 액세스하는 방법 - 다른 HTML 요소와 마찬가지로

JavaScript에서 HTML 양식 요소에 액세스하는 방법 - 다른 HTML 요소와 마찬가지로

자바 스크립트에서 HTML5 요소와 직접 상호 작용할 수 있습니다. 트릭은 선택한 요소가 지원해야하는 브라우저 및 플랫폼에서 작동하는지 확인하는 것입니다. 이 예제에서는 및 태그를 다음과 같은 솔루션의 일부로 사용하는 방법을 보여줍니다.

CSS 값 정의에 대한 빠른 가이드 구문 - 인형

CSS 값 정의에 대한 빠른 가이드 구문 - 인형

W3C (World Wide Web Consortium)에서 모든 CSS 속성의 구문과 가능한 값을 정의합니다. 정의를 가능한 한 정확하게 만들기 위해 W3C는 CSS 값 정의 구문이라는 공식 시스템을 사용합니다. 정의 구문은 가능한 값을 매우 정확하게 정의하지만 CSS 값 정의 구문을 읽는 중 ...

JavaScript로 동적 HTML 요소를 작성하는 방법 - 더미

JavaScript로 동적 HTML 요소를 작성하는 방법 - 더미

모든 페이지에 대한 특수 효과는 페이지에 동적 HTML 변경 기능을 제공하는 것입니다. 예를 들어 다음 예제와 같이 선택한 요소에 특수 효과를 만들 수 있습니다. function ChangeStyles (event) {// 요소에 대한 참조를 얻습니다. var ThisElement ...

편집자의 선택

Excel 2013 통합 문서의 변경 내용 수락 또는 거부 방법 - 변경 내용 추적을 설정하면 더미

Excel 2013 통합 문서의 변경 내용 수락 또는 거부 방법 - 변경 내용 추적을 설정하면 더미

Excel 2013 통합 문서의 경우 리본의 검토 탭에있는 변경 내용 추적 명령 단추의 드롭 다운 메뉴에서 Alt / RGC를 눌러 변경 내용 적용 / 거부 옵션을 선택하여 수락 또는 거부 할 변경 내용을 결정할 수 있습니다. 이렇게하면 Excel이 강조 표시된 모든 변경 내용을 검토합니다 ...

Excel에서 셀에 설명을 추가하는 방법 2016 - 문자

Excel에서 셀에 설명을 추가하는 방법 2016 - 문자

Excel 2016 워크 시트의 특정 셀에 주석을 달 수 있습니다. 댓글은 스티커 메모의 전자 팝업 버전과 유사합니다. 셀에 주석을 추가하려면 다음과 같이하십시오. 셀 포인터를 이동하거나 주석을 추가 할 셀을 클릭하십시오. 새 주석을 클릭하십시오.

Excel 피벗 테이블에 계산 된 필드를 추가하는 방법 - 더미

Excel 피벗 테이블에 계산 된 필드를 추가하는 방법 - 더미

피벗 테이블 내부의 값을 계산합니다. 계산 된 필드 및 항목을 표에 추가 할 수 있습니다. 계산 된 필드를 추가하면 새로운 행이나 열을 피벗 테이블에 삽입 한 다음 수식을 사용하여 새 행이나 열을 채울 수 있습니다. 예를 들어 다음과 같이 나타납니다.

편집자의 선택

포토샵 CS6에서 히스토리 기능으로 채우기를 사용하는 방법 - 더미

포토샵 CS6에서 히스토리 기능으로 채우기를 사용하는 방법 - 더미

채우기 Adobe Photoshop의 기능 Creative Suite 6는 선택을 원할 때 유용합니다. 특정 상태로 바꿀 영역을 쉽게 선택할 수 있으면 기록으로 채우기 기능을 사용할 수 있습니다. 특정 이미지에서 하늘이 마음에 들지 않는다고 가정 해보십시오. 선택한 항목 ...

Photoshop CS6에서 패싯 필터를 사용하는 방법 -

Photoshop CS6에서 패싯 필터를 사용하는 방법 -

Photoshop CS6의 이미지는 먼지와 스크래치를 줄이거 나 날카로운 모서리를 부드럽게하는 것입니다. 패싯 필터는 포스터 라이징 효과를 사용하여 이미지를 분할합니다. Photoshop CS6에서 이미지를 흐리게 처리하려는 한 가지 이유는 먼지 및 스크래치를 줄이거 나 밝기를 비슷하게하는 픽셀 블록을 모아서 기하학적 모양을 사용하여 단일 값으로 변환하기 때문입니다.

Photoshop CS6에서 손 도구 사용 방법 - 인형

Photoshop CS6에서 손 도구 사용 방법 - 인형

Photoshop CS6 손 도구는 이미지 문서에서 빠르게 이동하고 스크롤 막대와 유사하게 작업하여 작업을보다 신속하게 수행 할 수 있습니다. 손 도구는 손 도구를 클릭 할 필요가 거의 없기 때문에 실제 도구보다 기능이 더 많습니다. 간단히 ...