• 제목/요약/키워드: cuckoo hashing

검색결과 4건 처리시간 0.018초

Cuckoo Hashing을 이용한 RCC에 대한 성능향상 (Enhancing RCC(Recyclable Counter With Confinement) with Cuckoo Hashing)

  • 장룡호;정창훈;김근영;양대헌;이경희
    • 한국통신학회논문지
    • /
    • 제41권6호
    • /
    • pp.663-671
    • /
    • 2016
  • 인터넷 트래픽양의 급증에 따라 고속 라우터의 수요가 많아졌다. 트래픽 통계 또는 보안 등의 목적으로 라우터에서 패킷을 측정해야 하는데 고속 라우터의 특성상 메모리공간이 제한적이다. RCC는 적은 메모리로 트래픽을 정확하고 효율적으로 측정하는 방법을 제시했다. RCC에서는 트래픽을 측정하는데 큰 Flow를 추가적인 Quadratic Probing 기반 해시 테이블에 누적하는 방법 사용한다. 그런데 Quadratic Probing은 적은 메모리 또는 메모리 사용률이 많은 상황에서 연산량이 많으며, 특히 갱신 또는 실시간 조회가 자주 발생하는 시스템에서 오버헤드가 크다. 이 논문에서는 RCC의 특성을 분석하고 실험을 통해 Quadratic Probing의 문제점을 증명하며 갱신 또는 조회에 효율적인 Cuckoo Hashing을 사용하여 RCC의 성능을 개선한다. 실험 결과에 따르면 RCC에서 Cuckoo Hashing을 사용할 때 메모리 사용률이 높은 상황에서도 높은 정확도를 보여주었고, 효율적으로 트래픽을 측정할 수 있었다.

Sorting Cuckoo: 삽입 정렬을 이용한 Cuckoo Hashing의 입력 연산의 성능 향상 (Sorting Cuckoo: Enhancing Lookup Performance of Cuckoo Hashing Using Insertion Sort)

  • 민대홍;장룡호;양대헌;이경희
    • 한국통신학회논문지
    • /
    • 제42권3호
    • /
    • pp.566-576
    • /
    • 2017
  • 키-값 저장소(key-value store)는 Redis, Memcached 등의 다양한 NoSQL 데이터베이스에 응용되어 그 우수성을 보였다. 그리고 키-값 저장소 응용프로그램은 대부분의 환경에서 삽입 연산(insert) 보다 탐색 연산(lookup)이 많이 발생하기 때문에 탐색의 성능이 중요하다. 하지만 기존의 응용프로그램은 해시 테이블을 링크 리스트(linked list) 형태로 유지하기 때문에 탐색 연산이 느릴 수 있다. 따라서 탐색 연산을 상수 시간 내에 완료할 수 있는 쿠쿠 해싱(cuckoo hashing)이 학계의 주목을 받기 시작했고, 그 후 메모리 사용률이 더 높은 버킷화 쿠쿠 해싱(Bucketized Cuckoo Hashing, BCH)이 제안되었다. 본 논문에서는 BCH 구조를 기반으로 하여 삽입 정렬 방법으로 데이터를 입력하는 Sorting Cuckoo를 소개한다. Sorting Cuckoo를 이용하면 데이터가 정렬된 상태에서 탐색을 수행하기 때문에 상대적으로 적은 메모리 접근을 통해 키의 존재 여부를 판단할 수 있으며, 메모리 점유율(load factor)이 높을수록 BCH보다 탐색의 성능이 좋아진다. 실험 결과에 의하면 Sorting Cuckoo는 메모리 점유율이 95%인 상황에서 BCH보다 천만 번의 negative 탐색(데이터가 존재하지 않는 탐색)에서는 최대 25%(약 1900만회), 천만 번의 positive 탐색(데이터가 존재하는 탐색)에서는 최대 10%(약 400만 회)만큼 더 적은 메모리 접근을 이용하였다.

월 쿠쿠: 해시 함수 분류를 이용한 메모리 접근 감소 방법 (Wall Cuckoo: A Method for Reducing Memory Access Using Hash Function Categorization)

  • 문성광;민대홍;장룡호;정창훈;양대헌;이경희
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제8권6호
    • /
    • pp.127-138
    • /
    • 2019
  • 데이터 응답 속도는 사용자 경험과 직결되기 때문에 클라우드 서비스의 중요한 이슈이다. 그렇기 때문에 사용자의 요청에 빠르게 응답하기 위하여 인-메모리 데이터베이스는 클라우드 기반 응용 프로그램에 널리 사용되고 있다. 하지만, 현재 인-메모리 데이터베이스는 대부분 연결리스트 기반의 해시 테이블로 구현되어 있어 상수 시간의 응답을 보장하지 못한다. 쿠쿠 해싱(cuckoo hashing)이 대안으로 제시되었지만, 할당된 메모리의 반만 사용할 수 있다는 단점이 있었다. 이후 버킷화 쿠쿠 해싱(bucketized cuckoo hashing)이 메모리 효율을 개선하였으나 삽입 연산시의 오버헤드를 여전히 극복하지 못하였다. 본 논문에서는 BCH의 삽입 성능과 탐색 성능을 동시에 향상시키는 데이터 관리 방법인 월 쿠쿠(wall cuckoo)를 제안한다. 월 쿠쿠의 핵심 아이디어는 버킷 내부의 데이터를 사용된 해시 함수에 따라 분리하는 것이다. 이를 통하여 버킷의 탐색 범위가 줄어들어 접근해야 하는 슬롯의 수를 줄일 수 있는데, 이렇게 탐색 연산의 성능이 향상되기 때문에 탐색 과정이 포함되어 있는 삽입 연산 또한 개선된다. 분석에 따르면, 월 쿠쿠에서의 슬롯 접근 횟수 기댓값은 BCH의 기댓값보다 작다. 우리는 월 쿠쿠와 BCH, 정렬 쿠쿠를 비교하는 실험을 진행하였으며, 각 메모리 사용률(10%-95%)에서 월 쿠쿠의 탐색 및 삽입 연산이 다른 기법보다 더 적은 슬롯 접근 횟수를 가지는 것을 보였다.

쿠쿠 필터 유사도를 적용한 다중 필터 분산 중복 제거 시스템 설계 및 구현 (Design and Implementation of Multiple Filter Distributed Deduplication System Applying Cuckoo Filter Similarity)

  • 김영아;김계희;김현주;김창근
    • 융합정보논문지
    • /
    • 제10권10호
    • /
    • pp.1-8
    • /
    • 2020
  • 최근 몇 년 동안 기업이 수행하는 비즈니스 활동에서 생성된 데이터를 기반으로 하는 기술이 비즈니스 성공의 열쇠로 부상함에 따라 대체 데이터에 대한 저장, 관리 및 검색 기술에 대한 필요성이 대두되었다. 기존 빅 데이터 플랫폼 시스템은 대체 데이터인 비정형 데이터를 처리하기 위해 실시간으로 생성된 대량의 데이터를 지체 없이 로드하고 중복 데이터 발생 시 서로 다른 스토리지의 중복 제거 시스템을 활용하여 스토리지 공간을 효율적으로 관리해야 한다. 본 논문에서는 빅 데이터의 특성을 고려하여 쿠쿠 해싱 필터 기법의 유사도를 이용한 다중 계층 분산 데이터 중복 제거 프로세스 시스템을 제안한다. 가상 머신 간의 유사성을 쿠쿠 해시로 적용함으로써 개별 스토리지 노드는 중복 제거 효율성으로 성능을 향상시키고 다중 레이어 쿠쿠 필터를 적용하여 처리 시간을 줄일 수 있다. 실험 결과 제안한 방법은 기존 블룸 필터를 이용한 중복 제거 기법에 의해 8.9%의 처리 시간 단축과 중복 제거율이 10.3% 높아짐을 확인하였다.