database.sarang.net
UserID
Passwd
Database
ㆍDBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
DBMS Columns 130 게시물 읽기
 News | Q&A | Columns | Tutorials | Devel | Files | Links
No. 130
내 손 안으로 파고드는 모바일 데이터베이스
작성자
정재익(advance)
작성일
2001-12-06 19:06
조회수
6,319

1876년 그래험 벨이 전화를 발명한 이후 100년이 흘러, 이제는 세계 어디에서도 통화할 수 있는 글로벌 통신 시스템이 구축돼 있다. 언제, 어디서나 항상 사무실과 똑같은 정보 환경을 원하면서 모바일 시스템이 업무용 환경을 속속 파고들고 있다. 이에 따라 모바일 데이터베이스의 중요성이 강조되고 있다. 분산 환경에서의 모바일 데이터베이스 적용에 대해 알아보고 대표적인 모바일 데이터베이스를 살펴보는 기회를 가져보자.

 

모바일 컴퓨팅이란 무선 이동 통신과 PDA, 인터넷을 통해 컴퓨터와 통신 기술을 효과적으로 연계시켜 언제, 어디서나 이동하면서 정보 교환이나 수집, 검색, 정리, 저장을 하는 기술이다.

 

전송 자료로는 음성, 도형, 팩스, 사진, 동화상, 필기체 등 모든 데이터를 처리할 수 있다. 바로 이러한 작업들이 우리가 그렇게 관심을 가지고 있는 IMT-2000의 취지이기도 하다.

 

현재 모바일 컴퓨팅은 휴대폰, PCS, IMT-2000, 무선 LAN, 적외선 통신 등을 중심으로 발전하고 있다. 특히 국내 휴대폰 가입자가 2,300만명을 돌파하면서 국민의 절반이 보유한 생활 속의 통신 수단으로 정착됐다는 점이 주목할 만하다.

 

<표 1> 무선 네트워크의 전송 속도

종류                                  속도 
셀룰러 폰(CDMA)                9.6kbps(1996 서비스 개시) 
PCS                                  14.4kbps(1997년 10월 서비스 개시) 
IMT-2000                           고속 이동 중 144kbps, 보행 중 384kbps, 실내 2Mbps(2002년 개시 예정)  
무선 LAN                           20Mbps(Home RF), 1~10Mbps(블루투스)  
적외선 통신(IrDA)                2.4kbps~4Mbps 

 

모바일 컴퓨팅

모바일 컴퓨팅은 무선 네트워크 서비스뿐 아니라 모바일 단말기, 다양한 무선 애플리케이션이라는 3박자가 골고루 갖춰져야 현실적인 모바일 컴퓨팅 환경이 구축됐다고 할 수 있다. 현재 모바일 단말기로는 일반적인 휴대폰과 PDA, HPC 등 다양한 단말기가 나오고 있으며 놀라울 정도로 빠르게 발전하고 있다.

 

앞으로 2005년 모바일 정보 단말기 개발 수준을 예상해 본다면, 입력은 더 편해진 필기체 인식 기능과 95% 이상 인식하는 음성인식 기능이 보편화 될 것으로 보인다. 또한 선명한 화면을 제공하기 위해 2400dpi 스캐닝 기술, CCD 카메라 1000만 화소급 고해상도를 지원할 것이다.

 

미디어 처리 부분에서는 회화음 합성, 고효율의 압축 기술이 나올 것으로 예상된다. 각종 데이터의 처리를 위한 메모리도 플래시 메모리 4~8GB 이상, 통신 방식도 무선 LAN 실용화, 저중궤도 위성과 직접 교신이 실현되고, 모니터 역시 멀티미디어와 휴대성을 위한 접고 펴는 고해상도(5000?000) 제품이 탄생할 전망이다. 무엇보다 휴대 단말기의 큰 취약점인 배터리 사용시간도 연속 대기시간 10시간, 대기시간 1개월 이상 가능해질 것으로 보인다.

 

모바일 컴퓨팅 문제점과 요구사항

모바일을 이용하기 위해선 몇 가지 문제점과 요구 사항이 있다. 그중 대표적인 것이 유선 환경보다 속도가 늦고, 불안정한 무선통신 환경으로 안정적인 데이터 전송이 보장돼지 않고 있다는 점이다.

 

또한 소형, 경량, 저소비 전력, 적은 메모리 용량과 처리 성능이 낮은 터미널에서 소프트웨어를 구동해야 한다. 충분한 배터리를 장착할 수 없다는 점도 빼놓을 수 없다. 양자간의 통신 연결이 어느 순간 단절될 수 있다는 것을 의미한다.

 

그럼, 이러한 모바일 컴퓨팅의 문제점을 해결하기 위한 요구 사항은 무엇이 있는지 알아보자. 네트워크 환경 변화에 대응, 즉 시스템의 유연성, 서버기기의 교체에 따른 멀티 플랫폼과 위치 투과성 지원, 데이터와 프로그램의 이동이 용이해야 된다. 이런 요구사항은 분산객체 기술을 적용시킴으로써 어느 정도 해결할 수 있다.

 

모바일 데이터베이스 시스템

퍼베이시브(Pervasive) 컴퓨팅 환경에서 모바일 장비와 기존 전산 시스템, 특히 데이터베이스 시스템과의 통신은 가방 기본적이며 핵심 사항이다. 국내 몇몇 IT 업체에서도 모바일 디바이스에 이식한 JVM(Java Virtual Machine), CVM(C Virtual Machine)을 통해 기존 엔터프라이즈 데이터베이스의 데이터를 무선으로 직접 조회, 삽입, 삭제, 변경할 수 있는 온라인 모바일 솔루션을 판매하고 있다.

 

예를 들어, 영업사원들이 영업 현장에서 휴대폰을 통해 엔터프라이즈 데이터베이스에 접속해 상품의 재고 확인과 판매 현황, 고객 정보 갱신 등을 할 수 있는 것이다. 이와 같이 모바일 디바이스가 엔터프라이즈 데이터베이스와 직접 커뮤니케이션할 경우, 최신의 데이터를 조작할 수 있다는 이점이 있는 반면, 모바일 사용자가 늘어날수록 엔터프라이즈 시스템과 네트워크에 과부하를 초래한다는 단점이 따른다.

 

또한 무선 이동 통신의 성격상 통화 안정성을 100% 보장할 수 없어 데이터 조작 중 잦은 통신 단절을 야기할 수 있을 뿐 아니라, 한번에 다량의 데이터를 조회하거나 소량의 데이터라도 빈번하게 조회할 경우 통화료 부담을 걱정해야 할 정도가 된다. 엔터프라이즈 데이터베이스로의 직접적인 액세스를 피해 앞에서 열거한 모바일 솔루션의 약점을 개선할 수 있는 방법이 바로 모바일 데이터베이스를 이용하는 것이다.

 

일반적인 클라이언트/서버형 데이터베이스 시스템은 고정된 네트워크 환경의 클라이언트의 애플리케이션이 서버의 데이터베이스를 조작하는 형태이다. 앞서 말한 전통적인 클라이언트/서버에 비해 휴대 터미널(스테이션이라고 한다) 등에 클라이언트가 접속하면 사용자 이동에 따라 클라이언트도 이동하게 된다.

 

현재로선 모바일 터미널은 소형, 경량이라는 물리적인 제약에 따라 장시간 통신할 수 있는 충분한 용량의 배터리를 갖추고 있지 않다. 이 때문에 배터리의 전력 소비를 절감하는 차원에서 통신 연결을 단절할 필요가 있다. 또 주파수 간섭 등에 의해 통신 연결이 단절될 수도 있다.

 

<표 2> 모바일 컴퓨팅 이용목적별 구성

업종   업무                               업무 내용 
일반  영업 자동화(판매관리)       영업사원의 고객 및 대리점 관리 
금융  생활 설계사 지원프로그램  보험 판매사원 업무를 HPC에서 구현 
공공  신원조회, 긴급환자 병력조회            - 
교육  방문 교사용 프로그램        가정방문 교사의 고객, 진도관리 
물류  택배 지원, 창고관리          작업지시, 결과를 실시간 송수신 가능 
검침  수도검침 시스템               수도 검침원 업무를 PDA에서 처리 
열차  차량관리, 선로점검           열차 부품의 점검과 관리를 PDA로 처리 
의료  회진, 간호사 업무             차트를 PDA로 처리 
AS   AS 기사 업무 자동화          고객 정보 및 AS 결과 처리 자동화 
국방      -                               장비/군사관리, 이동 근무지원, 장비 및 군수관리 자동화 

 

모바일 데이터베이스 요구사항

모바일에서 데이터베이스를 사용하기 위해선 어떠한 요구 사항들이 있는지 알아보자. 우선 데이터베이스 관리 시스템(DBMS)을 모바일에서 사용하기 위해선 어떤 요구 사항이 갖춰져야 하는지 알아보자.

 

모바일용 DBMS는 플랫폼 독립적이어야 한다. 모바일 기술은 급속히 발전하고 있으며 제품 또한 다양해 질 것이다. 물론 모바일 DBMS는 모바일 플랫폼에 대해서도 유연해야 된다. 예를 들어 자바로 구성돼 있는 DBMS라면 소프트웨어는 물론 하드웨어로의 구현도 용이할 것이다. 또한 앞서 말한 다양한 플랫폼과 운영체제의 업그레이드에 따른 소프트웨어의 재사용이 가능해야 된다.

 

일반 사용자의 데이터와 특수 업무용 모바일 시스템의 경우, 장애로부터의 복구가 쉽고, 빨라야 되며, 데이터 검색 연산의 최적화가 요구된다. 특히, 다양한 모바일 환경에서 사용하기 위해서는 최소의 메모리에서도 동작할 수 있도록 최적화한 DBMS가 필요하다. 또한 서버와 노드간의 데이터의 일치성과 보안을 보장해야 한다. 즉 서버의 데이터와 클라이언트의 데이터 값은 같아야 한다.

 

이것을 데이터 일치성(Data Consistency)이라고 한다. 무엇보다도 모바일 컴퓨팅 환경에서는 서버와 클라이언트 사이에서 정보의 일치성을 어떻게 유지해 갈 것인가가 이슈이다.

 

그림 1. 중앙 집중형 데이터 통합관리

 

 

무선 환경에서 중앙 시스템 서버의 대한 시시각각의 최신 정보없이 비접속한 상태에서 운영할 경우, 모든 분산 시스템은 충돌할 가능성이 높아진다. 고전적인 예를 들어보면 비접속 상태로 2명의 판매인이 특수한 최신 품목을 판매하고 있다. 이들 모두는 그들의 트랜잭션이 유효하다고 믿고 있지만, 이를 동기화했을 때, 충돌된다는 것을 발견하게 될 것이다. 신중을 기울인 애플리케이션 설계는 충돌을 감소시키지만, 충돌 가능성 자체를 완벽하게 제거할 수는 없다.

 

충돌은 데이터베이스 프로세싱의 일반적 가정 중 하나인 트랜잭션의 항상성을 손상시키기 때문에 분산 애플리케이션 설계자들의 중요한 과제로 인식되고 있다. 물론 분산 시스템에서 해당 트랜잭션이 수행되지 않을 수도 있다. 동기화 기술은 충돌 해소 문제를 어떻게 처리하느냐를 관건으로 하고 있다.

 

상용 모바일 DBMS

모바일에 컴퓨팅에 관심이 있다면 몇몇 업체에서 제공하는 모바일용 DBMS 광고나 홍보물을 본 적이 있을 것이다. 현재 모바일용 DBMS는 인포믹스의 클라우드스케이프(Cloudscape)를 비롯해 IBM의 DB2 Everyplace, 사이베이스의 ASA, 오라클 8i 라이트, 프로그레스, 퍼베이시브(Pervasive), 포인트베이스(PointBase), 인프라이즈 등의 제품이 있다. 여기에서는 인포믹스의 클라우드스케이프에 대해 알아보기로 한다.

 

인포믹스 클라우드스케이프

인포믹스의 클라우드스케이프는 모바일 데이터베이스가 요구하는 모든 요소를 갖춘 100% 순수 자바로 개발된 ORDBMS(Object Relational DBMS)다.

 

클라우드스케이프는 자바로 개발돼 JVM(Java Virtual Machine)을 지원하는 어느 운영체제에나 탑재할 수 있다. 2MB Jar 파일로 콤팩트한 크기지만, ORDBMS로서 모든 기능을 제공한다. 솔루션의 프로그램 번들로, 또는 하드웨어의 칩셋으로도 구현이 가능하다(다음 버전에서는 1MB 정도로 더 작아질 예정이다).

 

클라우드스케이프는 데이터베이스 엔진을 운영하기 위한 어떠한 데몬도 필요없기 때문에 데이터 관리를 위한 별도 관리자는 필요없다. 모바일 컴퓨팅 환경에서 검색 기능은 대부분의 사용자가 필요로 하는 것 중 하나다. 클라우드스케이프는 빠른 검색을 위해 현재의 데이터 분포에 따라 검색의 최적화를 자동으로 하는 옵티마이저가 내장돼 있다. 또한 이 제품은 객체 관계형 기능, 정교한 애플리케이션과 데이터 동기화 기술을 제공한다.

 

그림 2. 클라우드스케이프의 LUCID 기능

 

 

클라우드스케이프는 클라우스스테이프, 클라우드싱크(Cloudsync), 클라우드커넥터(Cloudconnector)로 구성돼 있다. 클라우드스케이프는 앞서 말한 데이터 베이스 엔진이며, 클라우드싱크는 분산 환경에서 데이터의 일치성을 보장해주는 모듈이다. 중앙 서버에서 각 노드들까지 변경된 데이터뿐만 아니라 스키마, 프로그램까지 원클릭 재생성으로 동기화할 수 있는 LUCID(Logic Up, Consitency Information Down) 기능을 제공한다. 또한 각 노드들의 이벤트가 중앙 서버에 모여 동기화할 수 있는 기능도 제공한다.

 

유무선 환경에서 클라우드싱크를 이용해 네트워크의 온라인 상태뿐만 아니라 네트워크의 단절 상태에서도 트랜잭션이 이뤄져 네트워크가 다시 복구됐을 때에도 각 노드들의 데이터 충돌을 피할 수 있다. 이것은 스키마 생성시부터 각 노드들의 스키마를 논리적으로 제약할 수 있는 퍼블리케이션이란 기능을 제공하기 때문이다(이러한 모든 기능 조작은 데이터베이스 시스템의 언어인 SQL을 통해 이뤄진다). 클라우드커넥터는 다수의 사용자를 위한 ‘커넥션 풀링’이라는 기능을 제공하며, JSP나 서블릿을 기동할 수 있는 웹 서버 기능도 갖고 있다.

 

요즘 모바일 비즈니스 환경에서는 고객과 다양한 협력 업체와의 상호작용은 거의 필수 사항이 되고 있다. 클라우드스케이프는 확장성과 보다 나은 서비스, 기업 업무간의 협력강화, 이동 사용자의 지원을 위한 다량의 데이터 처리 애플리케이션 개발을 효과적으로 지원하고 있다. 클라우드스케이프에 대한 자세한 정보는 http://www.cloudscape.com 또는 http://www.informix.com/kr/products/servers/cloudsca/cloudscap.html을 참조하기 바란다.

[Top]
No.
제목
작성자
작성일
조회
146CRM 을 단순하게 하라.
정재익
2001-12-08
4569
144오픈소스는 표현의 자유가 아니라 무료이다.
정재익
2001-12-08
4086
131B2B 기반으로 부상하는 XML
정재익
2001-12-06
4265
130내 손 안으로 파고드는 모바일 데이터베이스
정재익
2001-12-06
6319
128데이터베이스의 어제, 오늘 그리고 내일
정재익
2001-12-06
8380
127DB TCO 논쟁 어디까지 가나
정재익
2001-12-06
3775
126틈새 DB 가 일으킨 작은 혁명
정재익
2001-12-06
4191
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.019초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다