로그 테이블은, 입력되는 데이터가 시계열 데이터인 로그성 머신 로그 데이터를 담는 저장할 수 있는 테이블을 지칭한다. 이 테이블에는 데이터가 무한히 입력되고, 각각의 필드 마다 고유한 의미를 담고 있다고 가정한다.
...
모든 로그 테이블에는 숨은 컬럼으로 _arrival_time이 존재한다.
이 컬럼은 해당 레코드가 생성되는 순간의 시간이 저장되어 있으며, 나노(nano) 단위 정밀도를 지원한다.
시간 역순 검색
일반 데이터베이스는 데이터 검색시 검색 시 입력 순서와 무관하게 출력된다.
그러나 Machbase의 로그 테이블은 별도의 ORDER BY를 통한 정렬 옵션을 주지 않는 경우에는 언제나 최신 데이터가 먼저 출력된다.
이는 _arrival_time 컬럼을 통해서도 확인된다. 이렇게 설계된 이유는 로그성 머신 로그 데이터는 가장 최근 데이터의 중요도가 이전의 데이터에 비해 훨씬 높기 때문이다.
...
Machbase는 일반 데이터베이스의 문자열을 취급하는 방식에서 한걸음 더 나아가 단어 기반의 검색 기능을 제공한다.
이 기능은 로그성 머신 로그 데이터의 용도에 가장 잘 부합하는 것으로서, 특정 시간대에 저장된 로그 데이터에 대한 검색이 비즈니스 상황에서 주요한 기능으로 사용된다.
이를 위해서 Machbase는 실시간 역인덱스를 제공함으로써 데이터의 삽입과 동시에 실시간으로 텍스트 검색이 가능하게 함으로써 빠른 장애 진단 및 장애 상황 해결에 큰 도움을 줄 수 있다.
...
Machbase는 IPv4, IPv6를 지원한다. 이는 인터넷 주소를 나타내는 특수한 타입으로서 수많은 로그성 머신 로그 데이터가주로 표현하는 주소체계를 반영한 것이다.
이 데이터 타입을 활용하여, 특정 어드레스에 대한 검색 및 추출을 손쉽게 할 수 있다.
또한, select * from t1 where ipaddr = '192.168.0.*'과 같은 확장 문법을 활용하여, 특정 주소체계의 주소 체계의 일부 주소범위를 검색하거나, 추출할 수 있는 기능도 함께 제공한다.
또한 넷마스크 netmask 연산자를 제공하여 특정 인터넷 주소가 특정한 주소범위에 주소 범위에 포함되는지 쉽게 판단할 수 있다.
LOB(Large Object) 데이터 지원
...