How to efficiently re-partition Spark DataFrames -번역

Spark DataFrames를 효율적으로 다시 파티션하는 방법

스파크 데이터 프레임의 수를 늘리거나 줄이는 방법

Photo by Mae Mu on Unsplash

Apache Spark는 합리적인 시간에 엄청난 양의 데이터를 사용할 수있는 프레임 워크입니다.이 통합 엔진의 효율성은 데이터 컬렉션을 통해 수행 된 작업을 배포하고 평행하는 기능에 대단히 의존합니다.

이 기사에서는 스파크로 파티션을 도입하고 데이터 프레임을 다시 파티션하는 방법을 설명합니다.또한 실행 시간을 최대한 많이 최적화하기 위해 스파크 데이터 프레임의 파티션 수를 증가 시키거나 감소시킬 가치가있는 경우에도 논의 할 것입니다.

간단한 분할 분할

순서대로 순서대로 높은 병렬 처리를 달성하기 위해 스파크는 스파크 클러스터의 다른 노드에 분산 된 파티션이라는 파티션이라는 작은 청크로 데이터를 분리합니다.모든 노드는 두 가지 이상의 실행 프로그램이 작업을 실행할 수 있습니다.

여러 실행 업체에 대한 작업 분포는 특정 작업에 대한 데이터 처리를 최적화하기 위해 데이터 처리를 병렬로 수행 할 수 있도록 데이터를 병렬로 수행 할 수 있도록 데이터를 병렬로 수행 할 수 있습니다.

현재 파티션 수를 얻는 방법

다시 파티셔닝으로 점프하기 전에 스파크 데이터 프레임의 현재 파티션 수를 얻는 데 사용할 수있는 방법을 설명 할 가치가 있습니다.예를 들어, 우리가 다음과 같은 최소한의 점화 데이터를 가지고 있다고 가정 해 봅시다.

위의 데이터 프레임의 파티션 수를 얻으려면 다음을 수행해야합니다.

출력은 현재 설정 및 구성에 의존하여 다른 출력을 볼 수 있습니다.

파티션 수를 늘리는 방법

데이터 프레임의 파티션을 늘리려면 다음을 수행해야합니다.재진입 ()함수.

새로운 것을 반환합니다데이터 프레임지정된 분할 식별로 분할됩니다.결과 데이터 프레임은 해시 분할됩니다.

아래 코드는 파티션 수를 1000으로 증가시킵니다.

파티션 수를 줄이는 방법

이제 파티션이 줄어들 수 있도록 Spark DataFrame을 다시 확인하려면 여전히 사용할 수 있습니다.재진입 ()하나,그렇게 할 수있는보다 효율적인 방법이 있습니다.

합병 ()좁은 의존성이 좁아 지므로 파티션 수를 줄이는 데 사용될 때는셔플 없음,아마도 아마도 스파크에서 가장 비용이 많이 드는 작업 중 하나 일 것입니다.

새로운 것을 반환합니다데이터 프레임그건 정확히 n 개의 파티션이 있습니다.

아래 예에서 우리는 파티션을 100으로 제한합니다. 원래 1000 개의 파티션이있는 Spark DataFrame은 셔플없이 100 개의 파티션으로 해결됩니다.우리는 그것을 의미하지 않습니다각 100 개의 새로운 파티션이 10 개의 기존 파티션에 할당됩니다.…에그러므로 그것은 더 효율적으로 전화하는 것이 더 효율적입니다합병 ()하나가 Spark DataFrame의 파티션 수를 줄이려면.

결론

이 기사에서는 스파크 클러스터의 실행 업체에 작업을 수행 할 수있는 파티션을 통해 데이터 처리가 어떻게 최적화되는지 논의했습니다.또한 데이터 프레임의 파티션 수를 늘리거나 줄이기 위해 사용할 수있는 두 가지 가능한 방법을 탐색했습니다.

재진입 ()Spark DataFrame의 파티션 수를 증가 또는 감소시키는 데 사용할 수 있습니다.하나,재진입 ()비용이 많이 드는 작업 인 셔플 링이 포함됩니다.

다른 한편으로,합병 ()이 메소드가 스파크 클러스터의 노드를 가로 질러 데이터를 섞지 않을 것이라는 사실 때문에이 방법으로 인해 파티션 수를 줄이려면 사용할 수 있습니다.

My Favorite Mac Utilities -번역

내가 좋아하는 MAC 유틸리티

내 맥을 훨씬 더 잘 만드는 다섯 가지 간단한 유틸리티.

MacBook Air with my five favorite utilites.

저는 노트북, 헤드폰 또는 펜 및 노트북과 같은 하드웨어에 대해 쓸 수 있습니다.내가 충분히 말하지 않는 것은 해당 하드웨어에 사용하는 응용 프로그램이나 도구입니다.

나는 이제 iPads를 풀 타임으로 사용하는 시간 외에도 거의 10 년 동안 Mac을 사용 해왔다.그 당시, 나는 몇 가지 도구, 유틸리티 및 정기적으로 사용하기를 원하는 앱을 집어 들었습니다.

이 게시물을 위해서, 나는 그것을 원합니다이자형내가 사용하는 유틸리티를 넘겨주는 것.새로운 MacBook에서 즉시 다시 설치된 것들.이들 중 일부는 응용 프로그램으로 간주 될 수 있지만, 나를 필요로하지 않고 백그라운드에서 실행되는 것을 설정하는 곳으로 나를 데리고 나가는 도구로 볼 수 있습니다.

응용 프로그램 및 다른 프로세스 및 도구를 사용하여 더 많은 게시물을 계속 지켜 보지만, 지금은 간단하게 시작하고 싶었습니다.그래서 내가 가장 좋아하는 유틸리티가 내 맥에서 끊임없이 사용하는 것입니다.

바텐더 4.($ 15)

이 유틸리티는 연령대를 위해 주변에있었습니다.나는 심지어 Mac을 사용하여 선택의 컴퓨터를 사용하기 전에였습니다.이 유틸리티는 정확하게 그 이름이 말하는 것입니다.그것은 메뉴 “바”의 “입찰”입니다.

내 MAC의 앱 또는 기타 유틸리티를위한 모든 메뉴 표시 줄 아이콘.한 번 이처럼 보였던 것은 무엇입니까?

바텐더가 모든 아이콘을 보여주는 바텐더가 확장되면 메뉴 표시 줄을 보여줍니다.

이제는 다음과 같습니다.

바텐더가 활성화되면 메뉴 바를 보여줍니다. 아이콘을 숨기십시오.

내가 전에 말했듯이, 이것은 잠시 동안 주변에있었습니다.간단한 기능은 모든 메뉴 항목을 숨기기 위해 모든 메뉴 항목을 숨기면 청결한 메뉴 모음을 제공합니다.선글라스, 3 개의 점 또는 별의 한 쌍과 같이 주요 아이콘을 원하는 것에 대해 몇 가지 옵션이 있습니다.

바텐더는 거기에서 멈추지 않습니다.또한 각 메뉴 아이콘을 원하는 방식에서 선택할 수있는 다양한 옵션이 제공됩니다.Bartender의 특정 메뉴 아이콘을 숨길 수 있으며, 전혀 볼 수 없거나 항상 볼 수 있습니다.

바텐더 환경 설정.

Bartender 4는 MacOS Big Sur에서 사용할 수 있으며 현재 공개 베타 속에 있으므로 베타에서는 여전히 무료입니다.베타가 더 이상 활성화되지 않은 경우 15 달러의 비용이 듭니다.이전 매크로 버전을 사용하는 모든 사용자를 위해바텐더 3.여전히 구매할 수 있습니다.

메뉴 바를 분명히 유지하는 간단한 솔루션을 제공하는 간단한 도구입니다.나는 많은 사람들이 톤의 메뉴 아이콘을 가지고 있고 바텐더를 관리하고 유지하는 데 더 유용한 바텐더를 찾는다는 것을 알고 있습니다.

자석($ 7.99)

Mac의 창 관리는 당신이 사랑하거나 싫어하는 것입니다.창 관리가 매우 구조화되고 제한되므로 많은 사랑 iPados가 있습니다.Mac에서는 일부를 위해 ChaOS를 만들 수있는 Windows를 겹칠 수 있습니다.

파인더 창을 중심으로 자석.

자석은 간단한 클릭으로 Windows를 이동하고 크기를 조정할 수있는 옵션을 제공하여 Mac에서 Window Management를 돕고 있습니다.Magnet을 사용하고 싶은 방법의 몇 가지 예제는 바탕 화면에서 무언가를 중심적으로 가운데 전체 화면 모드로 들어 가지 않고 풀 크기로 설정하고 싶습니다.

나는 전체 화면으로가는 대신 ulysses를 최대화하고 싶습니다. 그래서 나는 항상 나에게 항상 볼 수있는 메뉴 바가 있습니다.앱을 열고 Magnet에서 최대화 옵션을 클릭하는 것입니다.별도의 데스크톱에서 나는 트위터를 화면의 3 분의 1을 차지하고 이메일을 보내고 화면의 다른 2/3을 차지합니다.

자석을 사용하여 ulysses 앱을 최대화합니다.

자석은 창을 수동으로 끌 필요없이 많은 창을 가지고 있지 않아도 정리 또는 크기 조정을 원하면 자석이 우수합니다.

스포트라이트(수은)

매크로에 스포트라이트를 트리거링합니다.

일단 스포트라이트를 불러 오는 명령 + 스페이스 바 키보드 바로 가기를 암기했을 때, 나는이 방법으로 앱 만 출시하고 내 도킹을 자동 숨기기 위해 설정했습니다.나는 스포트라이트가 잠시 동안 주변에 있었다는 것을 알고 있지만, 나는 그것을 더 많이 사용하기 시작했던 단지 몇 년이 아니 었습니다.

ulyses를 스포트라이트에 입력하십시오.

Spotlight에 대한 훌륭한 것은 앱을 검색하고 출시하는 것 이상을 수행 할 수 있다는 것입니다.문서, 이메일, 음악을 검색 할 수 있으며 웹에서 텍스트 상자에서 똑바로 항목을 검색 할 수 있습니다.

수년 동안 Spotlight는 제공되는 기능이 제한되어 있으며, 지역 사물을 검색 할 수 있습니다.그러나 시간이 지남에 따라 퀵실버가 수년 동안 퀵실버가 수행 한 많은 것들을 제공합니다.QuickSilver는 자동화 및 기타 기능을 제공하지만 Mac의 모든 것에 대한 간단한 검색 도구를 위해 스포트라이트는 잘 작동합니다.

수십억을 스포트라이트로 입력하십시오.

1password.(매월 6.99 달러, 매년 $ 59.99)

암호는 특히 온라인 서비스 중 하나에 대해 안전한 암호를 갖고 싶을 때 추적하는 통증입니다.애플의 iCloud 키 체인은 훌륭하지만, 제 아내와 공유 할 수있는 것을 원했습니다.

1password 응용 프로그램.

너무 어두워지지 않고이 유용성과 다음은 내 장치가 깨지는 경우뿐만 아니라 어떻게 든 사라질 경우에뿐만 아니라 마음의 평화를주는 것들입니다.죽음은 결코 생각하고 싶은 것이 아닙니다. 그러나 저를 위해, 나는 조금 더 쉽게 가치가있는 어려운 상황을 다루기 위해 아내가 어려운 상황을 처리 할 수 있도록 설립 된 특정 일이 있음을 알고 있습니다.

메뉴 막대에서 1password 사용 가능.

1Password는 내가 생각할 수있는 모든 기록을 추적 할 수있는 개인용 금고를 제공합니다.심지어 iPhone 및 iPad에서 1Password를 사용할 때 설정 한 로그인에 대해 2 인증을 설정하고 해당 로그인을 복사 할 수 있습니다.

1password Safari 확장 문법 웹 사이트의 자동 채우기 로그인.

가장 좋은 부분은 공유 금고입니다.제 아내와 저는이 공유 금고에서 우리 모두가 더 중요한 로그인이 너무 유용합니다. 우리 중 한 사람에게 일어나는 경우뿐만 아니라 우리 중 하나가있는 경우에만 로그인 할 필요가있을뿐만 아니라 뭔가에 로그인해야합니다.그녀가 자신을 로그인 할 수 없을 때 자신의 간단한 클릭으로 액세스 할 수 있습니다.

뒤판책(한 달에 6 달러)

이 유틸리티는 순전히 마음의 평화입니다.나는 몇 년 전에 그 존재에 대해 배웠던 즉시 항상 내 아내의 맥북에 항상 갔다.그것은 단지 작동하는 저렴한 오프 사이트 백업 서비스입니다.

Backblaze 환경 설정 창.

수년 동안 단일 컴퓨터 및 한 달에 5 달러에 연결된 외부 드라이브에 무제한 백업을 제공했습니다.최근에 그 가격이 6 달러로 확대되었지만 여전히 살인자 거래라고 생각합니다.MacBook Air가 백업 된 300GB 이상의 데이터뿐만 아니라 외부 하드 드라이브에도 2TB의 데이터도 백업했습니다.나에게서 6 달러에 불과합니다.

사실, 제가하는 일에 대해 6 달러를 지불 할 수 있지만 최근에 추가로 2 달러의 추가로 Backblaze Affber를 제공하는 또 다른 새로운 기능을 선택했습니다.이 추가 기능은 1 년 동안 삭제 된 데이터를 보호하는 1 년 버전의 기록입니다.

그래서 실수로 오늘날 파일을 삭제하고 6 개월 만에 파일이 필요했습니다. Backblaze는 여전히 백업에서 회복하기 위해 여전히 사용할 수 있습니다.또한 영원히 버전 기록을 제공합니다. 즉, 여전히 고객이있는 한 삭제 된 파일을 복구 할 수 있습니다.

영원히 버전의 역사는 2 달에 2 달러이며, 한 달에 GB 당 $ .005를 청구합니다.제가 아내와 나에게 영원히 옵션을 선택해야한다면, 총계는 표준 기반 비용에 대해 약 12 달러, $ 4 + $ 13.05 (2.7 TB가 $ 0.005를 곱한 총 비용이 약 30 달러)입니다.

메뉴 바에서 사용 가능한 Backblaze 옵션.

2.7 테라 바이트의 데이터와 버전 기록의 2.7 terabytes for Sourcore는 영원히 그렇게 나쁘지는 않지만, 우리를 위해 조금 overboard입니다.우리가 랩톱과 1 년 버전의 역사를 위해 지금 지불하는 한 달에 16 달러는 충분합니다.

그러나 많은 양의 데이터가 있거나 장기간의 데이터 복구의 이점을 누릴 수있는 많은 가족 구성원이있는 경우 알아야 할 훌륭한 옵션입니다.수년 동안 일한 책의 원고와 마찬가지로 매우 민감한 데이터를 가진 일부와 마찬가지로 무엇이든 잃지 않도록하고 싶습니다.

나는 많은 다른 유틸리티를 가지고 있으며, 주로 매크로와 함께있는 것들이 있지만, 이것들은 내가 실제로 살 수없는 것들입니다.내 마음은 이러한 유틸리티가 제공하는 내 기본 요구 사항이므로 이러한 특정 버전에서는 죽지 않았습니다.

My Menu Bar를 구성하고 Windows 관리를 유지하면서 간단한 키보드 명령, 암호 관리자 및 신뢰할 수있는 오프 사이트 백업 소프트웨어가있는 내 Mac에서 검색 할 수있는 기능은 Mac이 최상의 Mac을 가장 잘 만드는 것들입니다.

비슷한 일을 할 수있는 다른 유틸리티가 있지만, 이들은 지속적으로 우리를 위해 일을 위해 일한 것들입니다.Mac에 유틸리티를 갖는 궁극적 인 목표는 컴퓨터가 당신을 위해 일하고 다른 방향으로 작동하지 않도록 더 잘 만들어야합니다.

따라서 Mac을보다 유용하게 만들려면 위 또는 귀하의 필요에 맞는 다른 도구 중 일부를 확인해 보겠습니다.가장 중요한 부분은 당신의 방식으로 들어 가지 않지만 당신을 위해 일하는 것입니다.

Multivariate Outlier Detection in Python -번역

파이썬에서 다 변수 이상 탐지

다 변수 아웃리어와 파이썬에서 Mahalanobis 거리

Mahalanobis 거리

그림 1 – 유클리드 거리 VS Mahalanobis 거리 (저자의 이미지)

그림 2- 유클리드 거리 VS Mahalanobis 거리 (작성자 별 이미지)

포뮬러 1 – Mahalanobis 두 점 사이의 거리

파이썬과 Mahalanobis 거리

그림 3 – 온도의 이상 – 오존 변수 (저자 별 이미지)

다음은 무엇입니까?

Interoperable Python and SQL in Jupyter Notebooks -번역

Jupyter 노트북의 상호 운용 가능한 파이썬 및 SQL.

팬더, 스파크 및 마스크 맨 위에 SQL 사용

First look at FugueSQL in Jupyter

Motivation

ANSI SQL을 통한 향상된 기능

데이터 프레임이있는 가변 할당

Ipython-SQL과 비교합니다

푸 듀 로고

스파크와 마스크가있는 분산 계산

판다와 간단한 중앙값

prepartition 및 medians를 얻으려는 불꽃

결론 및 더 많은 예

노트북의 설치

PIP 설치 Fugue
Fugue_Notebook 가져 오기 설정에서
설정()

Contact Us