데이터 이야기
공부하고 경험한 것들 차근차근 정리하자 :)
-
[Data-Intensive] Ch6. 파티셔닝 (Partitioning)
파티셔닝 ‘데이터 중심 애플리케이션 설계’를 읽고 정리하고자함 대용량 데이터셋을 작은 데이터셋으로 파티셔닝하는 전략에 대해 설명 저장하고 처리할 데이터가 한대의 서버에서 처리하지 못할 시, 파티셔닝을 해야함 파티셔닝의 목적 핫스팟이 생기지 않게 해야함 불균형적으로 높은 부하를 받는 노드 = 핫스팟 데이터와 질의 부하를 여러장비에 균등하게 분배해야함 그러기 위해서는 ? 데이터에 적합한 파티셔닝...
-
[HP-Spark] 파티셔너와 키/값 데이터
파티셔너와 키/값 데이터 스파크의 파티션 하나는 하나의 태스크와 연관되는 병렬 실행의 한 단위 명시적 파티셔너가 없는 RDD는 데이터 크기와 파티션 크기에 의해서만 데이터를 파티션들에 할당함 RDD 파티션되는 방식을 변경하는 메소드 repartition / coalesce RDD의 값에 개의치 않고 파티션 개수를 바꾸는데 쓸 수 있음 repartition은 RDD를 해시파티셔너와 주어진 파티션 개수와 함께...
-
[HP-Spark] groupByKey 함수는 왜 그렇게 위험한가?
GroupByKey 함수는 왜 그렇게 위험한가? 각 키에 대해 반복자(Iterable)를 되돌려 주는 함수 groupByKey의 확장성에 대해 경고함 groupByKey가 크기와 관련해 문제를 발생시킬 수 있으며 groupByKey 대신 사용할 수 있는 방법에 대한 제안과 조언을 설명할 것 골디락스 GroupByKey 해결책 기존 소스 및 방법 Map으로 그룹처리 def findRankStatistics(dataFrame: DataFrame, ranks: List[Long]): Map[Int, Iterable[Double]]...
-
[Data-Intensive] Ch5. 복제 (Leaderless Replication)
미완성.. 복제 ‘데이터 중심 애플리케이션 설계’를 읽고 정리하고자함 복제는 3가지 접근 방식으로 나눠서 정리할 예정 도입 및 단일 리더 복제 다중 리더 복제 3. 리더 없는 복제 이 글은 복제에 대한 리더 없는 복제(Leaderless Replication) 방법에 대해 다룰 것 리더 없는 복제 일부 데이터 저장소는 리더의 개념을 버리고, 모든 복제...
-
[Data-Intensive] Ch5. 복제 (Multi-leader based Replication)
복제 ‘데이터 중심 애플리케이션 설계’를 읽고 정리하고자함 복제는 3가지 접근 방식으로 나눠서 정리할 예정 도입 및 단일 리더 복제 2. 다중 리더 복제 리더 없는 복제 이 글은 복제에 대한 다중 리더 복제(Multi-leader based Replication) 방법에 대해 다룰 것 다중 리더 복제 리더 기반 복제의 한계 리더가 하나만 존재해, 모든...