[질문] gdbm 플랫폼 간 호환성 문제
글쓴이: partout / 작성시간: 수, 2003/03/26 - 5:44오후
gdbm을 사용해서 리눅스에서 DB 파일을 구성해서 사용하고 있습니다.
이 DB 파일이 리눅스 외의 다른 플랫폼에서 호환이 되지 않네요.
간단히 말하면, 리눅스에서 구성한 DB 파일이 솔라리스나 다른 플랫폼에서는
읽히지 않습니다.
gdbm과 인터페이스가 유사하지만, 플랫폼 간의 호환성을 제공하는 다른
라이브러리가 있나요?
아니면 DB파일을 다른 시스템에서 사용할 수 있도록 손쉽게 변환하는 방법이 있는지 알고 싶습니다.
답변 부탁 드립니다.
Forums:
unixODBC
ODBC를 사용해보십시오.
ODBC는 단순히 Interface이며,
UNIX/Linux를 위해 공개 소스로 unixODBC가 존재합니다.
Oracle/MySQL/MSSQL/PostgreSQL 등으로 DBMS를
설치한 뒤, ODBC 설정을 하면 소스를 다시 컴파일하지 않아도,
OS/DBMS에 맞춰 소스를 고치지 않아도 DBMS를 쓸 수 있습니다.
_____________________________
언제나 맑고픈 샘이가...
http://purewell.biz
[url=http://www.sleepycat.com/docs/]버클리(
버클리(Berkeley) DB는 어떨지요?
GDBM과 더불어 대부분의 UNIX/POSIX 호환 시스템에 설치되어 널리 사용되는 오픈소스 파일 DB입니다. GDBM보다는 좀 더 많은 기능을 제공합니다.
C뿐만 아니라 C++과 자바 API를 제공합니다.
파일호환이 안되는지는 잘 모르겠지만....의심스러운것은, byte
파일호환이 안되는지는 잘 모르겠지만....
의심스러운것은, byte ordering 문제가 있는 것 아닐까요?
저장되는 것에 int 같은 것이 있으면, byte order가 달라지는 arch 에서는
gdbm, ndbm, bdbm 류의 file base db는 같은 문제가 있습니다.
---
http://coolengineer.com
바이트 순서에 따라(빅 엔디언인지 리틀 엔디언인지) 호환성이 없다고 보시
바이트 순서에 따라(빅 엔디언인지 리틀 엔디언인지) 호환성이 없다고 보시면 됩니다. 예전의 CrazyWWWBoard가 gdbm을 사용했는데, 그 문제 때문에 별도의 변환 프로그램이 존재했지요.
여기 perl의 AnyDBM_File 문서에서 퍼온 비교표를 첨부합니다. 선택에 도움이 되실 겁니다.
--
익스펙토 페트로눔
댓글 달기