설문조사
PostgreSQL/PPAS 관련 듣고 싶은 교육은


총 게시물 163건, 최근 0 건
 

insert data from oracle to postgresql 질문드립니다

글쓴이 : achter 날짜 : 2021-06-24 (목) 15:09 조회 : 87
안녕하세요.
업무중에 큰 어려움을 느껴 이곳에 질문을 남기게 되었습니다.

제목처럼 oracle의 데이터를 postgres의 테이블로 insert하고자합니다.

일단 각 db는 각각 다른 vm에 구축되어있으며, ipsec vpn으로 통신하고 있습니다.

그리고 pentaho라는 ETL툴로 Oracle에서 postgres로 데이터를 넘기는 중인데요.

속도가 많이 느린 것 같아 문제입니다.

현재 insert하는 데이터 용량에 관계 없이 초당 8kb정도의 데이터가 oracle에서 postgres로 적재되는 중입니다.

ipsec vpn네트워크의 문제인가 싶어 ftp로 파일전송을 테스트해보니 초당 10mb정도의 속도가 나와서 네트워크는 큰 문제가 아닌 것으로 판단하고 있습니다.

postgres 설정을 바꿔보면 좀 속도가 나올까 싶어서 postgresql.conf를 수정해서 나름 최적화를 해보았지만 결과는 동일했습니다.

혹시 이종 데이터베이스간의 데이터 insert작업할 때 팁이 있을까요?
사용하면 좋은 툴이라던가 설정파일 수정 등등 어느 것도 좋습니다.

제가 아직 주니어라 모르는 점이 많아서 놓치는 부분이 있는 것 같습니다.
선배님들의 자유로운 의견 부탁드리겠습니다.

감사합니다.

PostgresDBA 2021-06-24 (목) 15:57
네트웍대역폭도 생각해보셔야 합니다.
가령 화일하나만  옮기면 엄청 빠른데 동시에 많은 화일을 옮기면 대역폭때문에 느려질수도 있는거구요.

하지만 거의 대부분 네트웍속도보다는  마이그는 io에 영향을 많이 받습니다.
oracle 에서 read 하는 속도가 느린건지 pg 에서 write  속도가 느린건지 확인해보셔야 합니다.

쉽지않은 문제입니다. 주니어라면 도움을 청하세요
대부분 튜닝보다 마이그가 쉽다고 생각하는 사람이 많은데..전 오히려 반대입니다.
댓글주소
     
     
achter 2021-06-24 (목) 17:26
고객사에서 oracle 서버에 접근할 권한을 주지는 않을 것 같아서, 일단 ora2pg같은 마이그레이션툴을 사용하는 것은 배제하기로 했습니다ㅠㅠ

말씀해주신대로 pentaho에서 read속도와 pg에서의 write속도를 확인해보도록 하겠습니다.

답변주셔서 감사합니다.
댓글주소
모델광 2021-06-24 (목) 21:34
음... 요즈음 ETL 아키텍처가 어떤지는 잘 모르겠습니다. 약 10년 전에 ETL 사용 검토했었는데, 검토 결과 ETL은 아키텍처 구조상 ETL TOOL이 있는 서버로 데이터를 옮긴 후에 Target DB로 data를 insert 하더군요.
즉, ETL TOOL은 source DB 에 설치되어 있건, Targe DB에 설치되어 있건 간에 중간에 서버 1개를 더 두는거랑 같은 효과가 있었습니다.
그래서 저는 빠른 속도가 필요한 이관 작업에서는 Database Link를 사용하고 있습니다.
(물론 ETL 사용에 비해서 유지보수 공수가 많이 들어가므로 이관작업이 정기적인 job이라면 ETL이 더 효율적일 것입니다.)
요즈음 ETL 아키텍처는 어떤지 모르겠네요.
사용하고 계신 ETL TOOL의 아키텍처 검토해 보십시오.
(1회성 작업이라면 ETL은 사용하지 마십시오. 예산 낭비 입니다.)
네트웍 속도가 10Gbps라면 초당 경험상 약 1G bytes 크기의 테이블을 옮길 수 있습니다.
downtime을 최소화 하려면 Network Card 증설하고 이관해야 합니다.
(NIC card당 3~4개의 세션이 동시에 수행되게 해야 최적의 속도(초당 1G bytes이관)가 나옵니다.)
댓글주소
 

postgresdba.com