Skip to main content
QUICK REVIEW

[논문 리뷰] Monotonic Properties of Completed Aggregates in Recursive Queries

Carlo Zaniolo, Ariyam Das|arXiv (Cornell University)|2019. 10. 20.
Logic, Reasoning, and Knowledge참고 문헌 22인용 수 6
한 줄 요약

이 논문은 고정된 원소 수를 가진 데이터셋에 대한 집합 기반 중복 제거를 포함한 재귀적 Datalog 프로그램에 대한 형식적 의미 이론을 제안한다. 이는 최소, 최대, 카운트와 같은 단조성 집합 연산이 고정점 수렴성을 유지하고, 반복적 계산을 효율적이고 확장 가능한 방식으로 수행할 수 있음을 보여준다. 주요 기여는 집합 완성 작업을 후행 제약 조건으로 간주하는 계층적 의미 이론을 제안하여, 기존 최적화 기법을 비단조성 문제 없이 적용할 수 있도록 한다.

ABSTRACT

The use of aggregates in recursion enables efficient and scalable support for a wide range of BigData algorithms, including those used in graph applications, KDD applications, and ML applications, which have proven difficult to be expressed and supported efficiently in BigData systems supporting Datalog or SQL. The problem with these languages and systems is that, to avoid the semantic and computational issues created by non-monotonic constructs in recursion, they only allow programs that are stratified with respect to negation and aggregates. Now, while this crippling restriction is well-justified for negation, it is frequently unjustified for aggregates, since (i) aggregates are often monotonic in the standard lattice of set-containment, (ii) the PreM property guarantees that programs with extrema in recursion are equivalent to stratified programs where extrema are used as post-constraints, and (iii) any program computing any aggregates on sets of facts of predictable cardinality tantamounts to stratified programs where the precomputation of the cardinality of the set is followed by a stratum where recursive rules only use monotonic constructs. With (i) and (ii) covered in previous papers, this paper focuses on (iii) using examples of great practical interest. For such examples, we provide a formal semantics that is conducive to efficient and scalable implementations via well-known techniques such as semi-naive fixpoint currently supported by most Datalog and SQL3 systems.

연구 동기 및 목표

  • 재귀성과 집합 연산을 포함한 복잡한 대규모 데이터 워크로드에서 Datalog 및 SQL의 계층적 의미 이론의 한계를 해결하기 위해.
  • 고정된 원소 수를 가진 데이터셋에서의 집합 연산이 집합 포함 관계 레이티스에서 단조성을 유지함을 보여주어, 안전한 재귀적 계산이 가능함을 입증하기 위해.
  • 최소, 최대, 카운트를 사용하는 재귀적 프로그램이 후행 제약 조건을 갖는 등가의 계층적 프로그램으로 변환될 수 있음을 보여주어 비단조성 문제를 피하기 위해.
  • 반복적 고정점 계산과 제약 조건 전파와 같은 표준 최적화 기법을 활용하여 효율적이고 확장 가능한 실행을 가능하게 하기 위해.
  • 형식적 비단조성 의미 이론과 고성능 대규모 데이터 처리 시스템 간 격차를 Pre-Mappability 성질을 활용하여 메우기 위해

제안 방법

  • 고정된 원소 수를 가진 집합에서의 재귀적 Datalog 프로그램에 대한 형식적 의미 이론을 Pre-Mappability 성질을 사용하여 정의한다.
  • 프로그램을 세 계층으로 구조화한다: (i) 카디널리티 계산 또는 사전 계산을 위한 하단 계층, (ii) 단조성 허니 규칙으로 구성된 중간 계층, (iii) 최소/최대 값으로 후행 선택을 수행하는 상단 계층.
  • 중간 계층의 단조성 부분에 대해 반복적 고정점 계산을 반복적 방식으로 수행하여 효율적이고 확장 가능한 평가를 달성한다.
  • 재귀 단계에서 본문 연산자의 완료를 시스템 수준에서 감지하여 최종 결과 추출을 유도함으로써 불필요한 계산을 제거한다.
  • 실세계 알고리즘인 마르코프 체인과 라이드 클러스터링에 이 접근법을 적용하여, 각 집합 연산의 대상이 고정된 크기의 집합임을 보여준다.
  • 다차원 값의 효율적 표현을 위해 인코딩/디코딩 함수(예: encd, decd)를 사용하여 재귀 규칙 내에 표현한다.

실험 결과

연구 질문

  • RQ1기본 데이터셋의 원소 수가 고정되고 예측 가능할 경우, 재귀적 Datalog 프로그램에서 집합 연산을 안전하게 사용할 수 있는가?
  • RQ2최소, 최대, 카운트와 같은 단조성 집합 연산이 비단조성 문제 없이 재귀적 프로그램에서 어떻게 의미론적으로 정당화될 수 있는가?
  • RQ3집합 연산을 사용하는 재귀적 프로그램이 후행 제약 조건을 갖는 등가의 계층적 프로그램으로 변환될 수 있는가? 이는 정확성 유지와 최적화 가능성을 보장한다.
  • RQ4반복적 고정점 계산과 제약 조건 전파와 같은 기존 최적화 기법이 집합 연산이 많은 재귀 쿼리에 얼마나 적용될 수 있는가?
  • RQ5Pre-Mappability 성질을 사용하여 대규모 데이터 워크로드에서 형식적 의미 이론과 성능 확장성을 동시에 달성할 수 있는가?

주요 결과

  • 고정된 원소 수를 가진 데이터셋에서 최소, 최대, 카운트와 같은 집합 연산은 표준 집합 포함 관계 레이티스에서 단조성을 유지하므로 안전한 재귀적 사용이 가능하다.
  • 최소/최대 값을 사용하는 재귀적 프로그램은 집합 연산을 후행 제약 조건으로 적용하는 계층적 프로그램과 의미적으로 동일하며, 비단조성 문제를 피할 수 있다.
  • 집합 연산의 완료는 델타 변화의 시스템 수준 모니터링을 통해 감지할 수 있으며, 이는 효율적인 종료 및 결과 추출을 가능하게 한다.
  • 마르코프 체인과 라이드 클러스터링의 경우, 각 집합 연산이 처리하는 원소의 수가 재귀 단계 동안 일정하며 사전에 계산할 수 있다.
  • 중간 계층의 단조성 부분에 대해 반복적 고정점 계산을 적용함으로써 효율적이고 확장 가능한 실행이 보장되며, 불필요한 중간 원소를 제거함으로써 메모리와 계산량이 감소한다.
  • Pre-Mappability 성질을 통해 데이터 왜곡을 보상함으로써 병렬 아키텍처에서도 고성능 실행이 가능하다.

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

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

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

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