Skip to main content
QUICK REVIEW

[논문 리뷰] On the Complexity of Processing Massive, Unordered, Distributed Data

Jon Feldman, S. Muthukrishnan|ArXiv.org|2006. 11. 21.
Distributed systems and fault tolerance참고 문헌 16인용 수 11
한 줄 요약

이 논문은 Google의 MapReduce와 Apache Hadoop와 같은 현대 대규모 데이터 처리 시스템을 형식화하기 위해 대규모, 무작위, 분산(Mud) 계산 모델을 도입한다. 스트리밍 알고리즘으로 계산 가능한 임의의 대칭 함수는 공간 및 통신 복잡도가 유사한 Mud 알고리즘으로도 계산 가능하다는 것을 증명하여, 스트리밍 계산과 분산 무작위 계산 간의 기초적인 동등성을 확립한다.

ABSTRACT

An existing approach for dealing with massive data sets is to stream over the input in few passes and perform computations with sublinear resources. This method does not work for truly massive data where even making a single pass over the data with a processor is prohibitive. Successful log processing systems in practice such as Google's MapReduce and Apache's Hadoop use multiple machines. They efficiently perform a certain class of highly distributable computations defined by local computations that can be applied in any order to the input. Motivated by the success of these systems, we introduce a simple algorithmic model for massive, unordered, distributed (mud) computation. We initiate the study of understanding its computational complexity. Our main result is a positive one: any unordered function that can be computed by a streaming algorithm can also be computed with a mud algorithm, with comparable space and communication complexity. We extend this result to some useful classes of approximate and randomized streaming algorithms. We also give negative results, using communication complexity arguments to prove that extensions to private randomness, promise problems and indeterminate functions are impossible. We believe that the line of research we introduce in this paper has the potential for tremendous impact. The distributed systems that motivate our work successfully process data at an unprecedented scale, distributed over hundreds or even thousands of machines, and perform hundreds of such analyses each day. The mud model (and its generalizations) inspire a set of complexity-theoretic questions that lie at their heart.

연구 동기 및 목표

  • Google의 MapReduce와 Apache Hadoop와 같은 현대 분산 데이터 처리 시스템의 계산 모델을 형식화하기 위해.
  • 실제 시스템을 반영하는 방식으로 대규모, 무작위, 분산 데이터 처리의 계산 복잡도를 이해하기 위해.
  • 스트리밍 알고리즘과 분산 무작위 계산(Mud 알고리즘) 간의 공식적 관계를 수립하기 위해.
  • 통신 복잡도와 하한을 통한 Mud 계산의 한계를 조사하기 위해.
  • Mud 알고리즘을 확장하여 더 넓은 범위의 분산 데이터 처리 워크로드를 포괄할 수 있는 잠재적 가능성을 탐색하기 위해.

제안 방법

  • 로컬 함수 Φ, 결합 함수 ⊕, 후처리 함수 η로 구성된 삼중조합 (Φ, ⊕, η)으로 정의된 형식적 Mud 알고리즘 모델을 제안한다. 여기서 ⊕는 결합 법칙과 교환 법칙을 만족한다.
  • 스트리밍 알고리즘의 비결정적 시뮬레이션을 통해 스트림 순서를 추측한 후, Savitch의 정리를 적용하여 Mud 모델 내에서 공간 효율적인 계산을 달성한다.
  • 통신 복잡도 기법을 적용하여 하한을 증명하며, 특히 대칭 인덱스(SymmetricIndex) 문제에 대해 결정적 프로토콜이 Ω(n)의 통신을 요구한다는 것을 보여준다.
  • 결과를 근사 및 난수 기반 스트리밍 알고리즘으로 확장하여, 특정 확장(예: 개인 난수)이 Mud 모델 하에서는 불가능하다는 것을 보여준다.
  • 다중 정답이 허용되는 불확정 함수를 모델링하기 위해 iMUD 및 iSS 클래스를 도입하고, стрict containment iMUD ⊂ iSS 를 증명한다.
  • 부분 함수를 총합 불확정 함수로 연결하기 위해 약속 문제 프레임워크를 활용하며, 스트리밍 결과를 Mud 모델로 이전할 수 있도록 한다.

실험 결과

연구 질문

  • RQ1스트리밍 알고리즘으로 계산 가능한 임의의 대칭 함수는 공간 및 통신 복잡도가 비슷한 Mud 알고리즘으로도 계산 가능한가?
  • RQ2개인 난수, 약속 문제, 또는 불확정 함수로 확장되었을 때 Mud 모델의 한계는 무엇인가?
  • RQ3전통적 스트리밍보다 Mud 모델이 더 효율적이거나 실용적인 계산 프레임워크를 제공하는 자연스러운 문제들이 존재하는가?
  • RQ4표현력과 자원 효율성 측면에서 Mud 모델의 계산 능력은 스트리밍 알고리즘과 비교해 어떻게 되는가?
  • RQ5Mud 모델은 다중 키 또는 더 복잡한 분산 데이터 처리 패턴을 대규모로 지원하기 위해 일반화될 수 있는가?

주요 결과

  • 공간 및 통신 복잡도가 polylog(n)인 스트리밍 알고리즘으로 계산 가능한 임의의 대칭 함수는 공간 및 통신 복잡도가 유사한 polylog(n)인 Mud 알고리즘으로도 계산 가능하다.
  • 비결정적 시뮬레이션과 Savitch의 정리를 통해 스트리밍 계산과 Mud 계산 간의 동등성이 확립되며, 이는 Mud 모델이 대칭 함수에 대해 스트리밍의 능력을 충분히 포괄함을 증명한다.
  • 통신 복잡도 하한을 통해 개인 난수 및 불확정 함수로의 확장이 Mud 모델 하에서는 불가능하다는 것이 입증된다.
  • SymmetricIndex 문제에 대해 다항로그(n) 공간에서 결정적 스트리밍 알고리즘이 존재하지만, 동일한 문제에 대해 결정적 통신 프로토콜은 Ω(n)의 통신을 요구하므로, 통신 모델 내에서의 분리가 입증된다.
  • Mud 알고리즘으로 계산 가능한 불확정 함수의 클래스 iMUD 는 스트리밍 알고리즘으로 계산 가능한 클래스 iSS 에 대해 엄격히 포함된다. 즉, iMUD ⊂ iSS 이다.
  • 결과들은 현대 분산 로그 처리 시스템 설계 배경에 대한 통찰을 형식화하고 검증하며, 이들의 계산 모델이 강력하고 이론적으로 탄탄하다는 것을 보여준다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.