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
운영게시판
최근게시물
PostgreSQL Q&A 5801 게시물 읽기
No. 5801
enum을 varchar로 변환하면서 생기는 용량차...
작성자
mmx900
작성일
2005-01-17 00:31ⓒ
2005-01-17 00:33ⓜ
조회수
2,085

안녕하세요. Firebird를 사용하려고 하다가 심각한 문서 부족을 느껴 PostgreSQL로 온 새내기입니다 [__]

검색하다 본 어느 분 말씀처럼 여기 오니 모든게 새롭군요. 메뉴얼 뒤적이면서 열심히 배우는 중입니다.

이렇게 글을 올리는 것은 MySQL의 테이블을 옮기다가 의문이 들어서인데요.

해당 MySQL의 테이블에는 enum형을 사용한 컬럼들이 있습니다만,

마이그레이션 문서를 보니 대신에 varchar와 check constraint를 사용하라고 하기에

막상 그렇게 하려고 보니 enum과 varchar의 크기 차가 너무 많이 날 것 같아 걱정이 됩니다.

MySQL의 경우 문서상으론 enum이 1-2byte, varchar가 string length + 1 byte 정도니까요.

들어갈 타입은 5개 정도에 3-5자...

check 제약을 걸면 psql에서 자동으로 최적화라도 해 주는 것인지 궁금합니다.

열심히 검색해 봐도 이러한 마이그레이션 후에 용량 변화에 대한 내용은 없네요...

아시는 분의 답변 부탁드립니다.

이 글에 대한 댓글이 총 2건 있습니다.

개인적인 생각으로는,

물리적인 자료크기가 심지어 10배 이상 커진다고 해서 문제가 생길 것이 없어보입니다.

 

16bit 정수형보다는 32bit 정수형이 빠르고, varchar 인덱스보다는 char 인덱스가 빠르고, 물리적인 인덱스 파일과 데이터 파일이 다른 파티션에 있으면 빠르고 .... 이런 것에 집착하면서 실제 RDBMS에서 구현되어야할 가장 핵심인 실세계와 데이터베이스 세계 사이의 자료구조 차이를 어떻게 하면 가장 합리적으로 풀것인가를 대충 고민하고는 훗날 자료구조를 근본적으로 바꾸면서 고생하는 경우를 종종 봅니다.

 

MySQL에서 PostgreSQL 쪽으로 옮겨오면서 고민해야할 부분은 당장에 자료구조를 그대로 가져오는 것도 중요하겠지만, MySQL 쪽에서는 그냥 쉽게 결과를 볼 수 있었던 것이 PostgreSQL 쪽에서는 시간이 꽤 걸리는 쿼리들이 제법 있습니다. 이런 것을 빨리 찾아서 PostgreSQL 쪽에서 잘 돌아가게 쿼리를 바꾸거나, 안되면 자료구조까지 바꾸는 작업을 해야할 것 같네요. 이게 꽤 중요한 일입니다.

김상기(ioseph)님이 2005-01-17 01:33에 작성한 댓글입니다.

고민하던 내용이네요.

상세한 댓글 감사드립니다.

 

그리고 혹시나 필요할 분들이 계실까봐... 위에 제가 궁금해 한 부분은 검색 결과 제 추측이 맞다고 하는군요.

김기범(mmx900)님이 2005-01-24 11:40에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
5804insert를 하여 추가시에... [1]
왕태봉
2005-01-17
1787
5803apache2 postgresql 7.4.6 php 5.0.3 에서 zombie [7]
박인서
2005-01-17
2249
5802결재시스템 문제로 jdbc를 설치하고 있는데요..제대로 된건지...잘 모르겠어요. [1]
이주영
2005-01-17
1958
5801enum을 varchar로 변환하면서 생기는 용량차... [2]
mmx900
2005-01-17
2085
5800[mysql]password() 함수와 같은기능 [3]
아놀드
2005-01-15
2973
5799Postmaster의 CPU점유율 조정 방법.. [1]
노방래
2005-01-14
2288
5798중복된 데이터 제거하기 [3]
유인상
2005-01-14
4718
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다