Windsoft / Querydog / Oracle → MariaDB PL/SQL 검증

Oracle → MariaDB PL/SQL 변환: 검증 결과와 남은 범위

Windsoft 내부 시험 · 2026년 10월 31일 · Querydog 1.0.45 소스 기준

한 Oracle 시험 스키마에서 수집한 PL/SQL·TYPE·잡 40개를 별도 MariaDB 검증 DB에 변환해 컴파일했습니다. 40/40 DDL 컴파일 성공은 전체 마이그레이션 성공률 100%를 의미하지 않습니다. 루틴의 실제 호출 결과와 테이블 데이터 이관은 별도로 확인해야 합니다.

시험 대상과 방법

앞선 시험 10개의 적용 이력

첫 5개 업무형 시험 루틴은 초기 자동 변환에서 0/5 컴파일이었고, 사례별 수동 변환을 거쳐 별도 검증 DB에서 5/5 컴파일했습니다. 다음 5개는 트리거·MERGE·JSON·LISTAGG·동적 SQL을 시험했으며, Oracle 논리 객체 5개를 MariaDB 물리 객체 6개로 변환해 실행했습니다.

이 10개 시험 객체는 이후 실제 시험 대상 DB에 재적용해 DDL 11/11 성공을 확인했습니다. 한 집계 루틴의 Oracle·MariaDB 결과 차이는 대상의 기초 업무 데이터 불일치를 확인해 동기화한 뒤 지정 입력에서 일치했습니다. 이 이력에는 수동 변환과 대상 데이터 보정이 포함돼 있으므로 Querydog 자동 변환 성능 또는 전체 업무 이관률로 계산하지 않습니다.

최근에 추가한 10개 시험 루틴은 이 실제 시험 대상 DB에 일괄 적용한 것이 아니라 격리 검증 DB에서 컴파일·호출했습니다.

버전별 DDL 컴파일 결과

시점동일 40개 객체의 격리 DDL해석
1.0.41 최초 측정32/40 (80%)신규 10개 루틴은 3/10 컴파일, 실제 시험 입력 결과 일치는 1/10이었습니다.
1.0.42 제한적 변환 추가37/40 (92.5%)신규 루틴은 8/10 컴파일, 7/10 지정 입력 결과가 일치했습니다. PIPELINED는 호출 방식을 바꾼 뒤 비교했습니다.
1.0.43~1.0.45 재검증40/40 (100% DDL)신규 루틴 10/10의 지정 입력 결과와 TYPE 대체 절차를 확인했습니다. 1.0.45에서 날짜 함수 259/259 입력 결과가 일치했습니다.

분모는 시험 기간 동안 같은 40개 수집 객체입니다. 수치는 DDL 컴파일률이며, 40개 업무 기능의 결과 동등성이나 모든 Oracle PL/SQL 문법의 지원률이 아닙니다.

실행 확인과 변환 조건

항목시험에서 확인한 내용남은 조건
신규 PL/SQL 10종지정 입력에서 10/10 대상 실행 결과가 Oracle 기준값과 일치했습니다.지원 형태를 좁혀 변환합니다. 동적 DBMS_SQL, 복잡한 XMLTABLE/XPath 등은 이 결과에 포함되지 않습니다.
기존 날짜 함수 4개빈 문자열, 공백, 윤일, 0인 월·일, 여러 구분자 등 43종 입력과 날짜 형식을 비교해 259/259 결과가 일치했습니다.다른 날짜 형식·지역 설정·입력은 추가 확인이 필요합니다.
Oracle TYPE 4개객체형 2개와 컬렉션형 2개를 JSON 생성 함수·조회 프로시저로 바꾸고 48필드·27필드 왕복을 확인했습니다.원본 TYPE과 호출 계약이 다릅니다. 외부 호출부를 수정해야 하며 모든 실제 데이터는 검증하지 않았습니다.
FORALL연속 인덱스의 단일 INSERT를 행별 루프로 바꾸어 3행 결과를 확인했습니다. 격리 DB에서 1,000행 약 0.013초, 5,000행 약 0.058초를 관측했습니다.Oracle 원본과 같은 조건의 성능 비교가 아니며 벌크 DML 성능은 보존하지 않습니다.

실제 업무 이관 전에 남는 검증

  1. TYPE·PIPELINED 함수가 JSON 함수·CALL 프로시저로 바뀐 곳의 외부 SQL·프로그램 호출부를 찾아 수정하고 실행해야 합니다.
  2. 기존 업무 객체 전체의 결과, 암호문 호환성, 자율 트랜잭션 로그, 원본에서 INVALID인 만료 절차의 업무 규칙을 확인해야 합니다.
  3. 테이블 데이터 이관은 별도 작업입니다. 행 수·값·LOB·외래키 참조와 오류·재시도 결과를 실제 대상에서 검증해야 합니다.
  4. 대량 FORALL 성능과 지원 범위 밖 PL/SQL 구문은 운영 규모의 시험이 필요합니다.

따라서 이 기록으로 전체 업무 마이그레이션 전환율 90% 또는 100%를 단정하지 않습니다. 시험 결과의 공개용 요약 데이터(JSON)를 내려받을 수 있습니다.

DB 간 이관 기능 근거 · Oracle 마이그레이션 사용 설명서 · Querydog 제품 소개