Skip to content
> giho's blog
Go back

~/posts/cross-db-link-python

이기종 디비 링크 기능 파이썬으로 구현하기

· 1 min read
-- contents

시작하며

oracle to mariadb 전환 프로젝트를 하면서 기존에 oracle 끼리 db link를 통한 데이터 공유를 사용할 수 없게 되었습니다. db link도 이기종 데이터베이스 간의 연결을 지원하지만 오라클 10.2 버전을 사용 중이라 한계에 부딪혔습니다. MariaDB에서 지원하는 federated X 스토리지 엔진의 사용도 고려 하였지만 메모리 누수 이슈로 대안을 찾아야 했습니다.

뭐라고 할까

기존의 적용되었던 로직은 스케줄링 된 잡이 실행되면서 truncate 후 디비 링크로 select한 데이터를 insert 하는 과정을 1시간 마다 반복하는 것 이었습니다.

이 과정에 2가지 문제점을 발견 하였습니다.

변경 로직은 다음과 같습니다.

# dblink.py

# job procedure

마치며

아무래도 실시간으로 데이터를 연동 해야하는 서비스에서는 사용하기 힘든 방법이다. ORM으로 데이터를 불러서 적재하는 부분에서 어느정도 큰 사이즈의 데이터를 조회할 때는 성능적으로 그렇게 뛰어나지 못하다. 하지만 위의 적용된 테이블 같은 경우는 실시간으로 조회되는 빈도가 굉장히 적었기 때문에 사용 가능한 방법이다.



-- related


Previous Post
using rowid filter
Next Post
selenium 크롤링 팁 몇 가지
giho=#searchesc