Abstract
Recently top-k query processing has been extremely important along with the explosion of data produced by a variety of applications. Top-k queries return the best k results ordered by a user-provided monotone scoring function. As cloud computing service has been getting more popular than ever, a hot attention has been paid to cloud-based data outsourcing in which clients' data are stored and managed by the cloud. The cloud-based data outsourcing, though, exposes a critical secuity concern of sensitive data, resulting in the misuse of unauthorized users. Hence it is essential to encrypt sensitive data before outsourcing the data to the cloud. However, there has been little attention to efficient top-k processing on the encrypted cloud data. In this paper we propose a novel top-k processing algorithm that can efficiently process a large amount of encrypted data in the cloud. The main idea of the algorithm is to prune unpromising intermediate results at the early phase without decrypting the encrypted data by leveraging an order-preserving encrypted technique. Experiment results show that the proposed top-k processing algorithm significantly reduces the overhead of client systems from 10X to 10000X.
최근 다양한 분야에서 생산되는 데이터의 양이 폭발적으로 증가함에 따라 사용자가 가장 관심 있어 하는 몇 개의 데이터를 검색하는 top-k 질의에 대한 관심이 고조되고 있다. Top-k 질의는 사용자의 점수 함수를 이용하여, 사용자가 원하는 모든 조건을 만족시키는 데이터들 중에서 최상위 (또는 최하위) 점수를 가지는 k개의 데이터를 사용자에게 반환한다. 최근 들어 클라우드 컴퓨팅 서비스의 대중화로 인하여 사용자의 대용량 데이터를 클라우드에 아웃소싱하여 경제적으로 저장 및 관리하는 데이터 아웃소싱이 크게 주목받고 있다. 그러나 데이터 아웃소싱으로 인하여 사용자의 민감한 데이터가 클라우드 서비스 제공자에게 노출될 수 있다는 위험이 존재하며, 이러한 문제를 방지하기 위해서는 사용자의 민감한 데이터를 암호화하여 클라우드에 저장하는 것이 필수적으로 요구된다. 본 논문은 클라우드 컴퓨팅 환경에서 암호화된 데이터에 대한 top-k 질의를 효율적으로 처리하는 알고리즘을 제안한다. 제안되는 알고리즘은 순서보존 암호화 기법을 이용하여, 암호화된 데이터만을 대상으로 top-k 질의 결과에 포함되지 않을 것으로 예상되는 중간 결과들을 클라우드 내에서 미리 제거함으로써 효율적인 top-k 질의 처리가 가능하게 한다. 논문의 실험 결과는 제안된 top-k 질의 처리 알고리즘이 단순 방법과 비교하여 사용자 시스템의 부하를 10배~10000배 줄일 수 있음을 증명한다.