monetDB에 대해

에서 일부 발췌 및 번역함.

…MonetDB achieves significant speed up compared to more traditional designs by innovations at all layers of a DBMS, e.g., a storage model based on vertical fragmentation (column-store), a modern CPU-tuned query execution architecture, adaptive indexing, run-time query optimization, and a modular software architecture…

..MonetDB는 DBMS의 모든 계층을 혁신함으로서 다른 전통적 디자인들과 대비되는 상당한 속도 향상을 가졌습니다. 예를 들어 수직적 분할(컬럼 저장), 현대적으로 CPU 튜닝된 쿼리 실행 구조, 적응형 인덱싱, 런타임 쿼리 최적화, 그리고 모듈형 소프트웨어 구조 등이 있습니다…

…MonetDB is designed to exploit the large main memories of modern computer systems effectively and efficiently during query processing, while the database is persistently stored on disk. With respect to performance, MonetDB mainly focuses on analytical and scientific workloads that are read-dominated and where updates mostly consist of appending new data to the database in large chucks at a time. However, MonetDB also provides complete support for transactions in compliance with the SQL:2003 standard…

…MonetDB는 현대 컴퓨터 시스템의 큰 메인 메모리를 효과적으로 그리고 효율적으로 사용하기 위해 디자인되었습니다. 비록 이 DB가 디스크에 영구적으로 저장된다고 해도 말입니다. 성능 관점에서 볼 때, monetDB는 주로 분석적, 혹은 과학적 작업을 위해 사용됩니다. 그러한 작업들은 보통 읽기 작업이 대부분이거나 업데이트의 경우 한번에 거대한 데이터를 DB에 추가하는 방식으로 이루어집니다. 그러나 MonetDB는SQL:2003 표준에 대한 지원 역시 완벽하게 제공합니다…

..MonetDB is one of the first publicly available DBMSs designed to exploit column-store technology. MonetDB does not only use the column-oriented logic for the way it stores data; it provides a whole new design for an execution engine that is fully tailored for columnar execution, deploying carefully designed cache-conscious data structures and algorithms that make optimal use of hierarchical memory systems..

monetDB는 칼럼 저장 기술을 사용하기 위해 디자인된 공개적으로 사용가능한 첫 번째 세대의 DBMS중 하나입니다. monetDB는 데이터를 저장하기 위해 컬럼 기반의 로직을 사용하지만은 않습니다. monetDB는 컬럼적 실행을 위해 완벽하게 맞추어진 실행엔진을 위한 새로운 디자인을 제공합니다. 그것은 계층적 메모리 시스템을 최적으로 사용하기 위해 캐시를 고려한 데이터 구조와 알고리즘을 사용합니다.

In addition, MonetDB provides novel techniques for efficient support of a priori unknown or rapidly changing workloads over large data volumes. Both the fine-grained flexible intermediate result caching technique “recycling” [12] and the adaptive incremental indexing technique “database cracking” [8] require minimal overhead
and investment to provide maximal benefit for the actual workload and the actual hot data.

..MonetDB uses the operating system’s memory mapped files support to load data in main memory and exploit extended virtual memory. Thus, all data structures are represented in the same binary format on disk and in memory.

monetDB는 메인 메모리와 확장된 가상 메모리에 저장된 데이터를 로드하기 위해 운영 체제의 메모리 맵 파일 지원 기능을 사용합니다.

여기서 잠깐, 메모리 맵 파일이란 무엇일까?

: 메모리 맵 파일은 운영체제에서 파일을 다루는 방법 중 하나이다. 물리 디스크 파일, 장치 ,공유 메모리 객체와 같이 운영 체제에서 파일로 다루는 모든 대상에 대해 사용 가능하며, 메모리 맵 파일을 통해 프로세스의 가상 메모리 주소에 직접 접근하는 것으로 파일 읽기/쓰기를 대신한다.