데이터 프로시저

6democratickim9·2022년 1월 12일
0
post-thumbnail

데이터 프로시저

SQL Server에서 제공하는 프로그래밍 기능으로, 여러개의 SQL을 하나의 SQL처럼 정리하여 사용하고자 하여 실행결과를 반환하지 않음

  • 서버에서 실행되기 때문에 속도가 빠름

  • 쿼리문을 마치 하나의 메서드 형식으로 만들고 어떠한 동작을 일괄적으로 처리하는 용도로 사용

  • 여러 개의 칼럼을 조회하고 여러 개의 테이블을 조인하고 거기에 조건까지 넣어줌으로써 하나의 쿼리를 만드는데

    엄청나게 긴 쿼리문이 생기게 됨

    :point_right: 프로시저에 저장하고 저장된 프로시저를 호출하여 프로그래밍을 하는것이 훨씬 효율적

프로시저의 장점

  • 하나의 요청으로 여러 SQL문을 실행할 수 있음
  • 네트워크 소요 시간 단축 가능
    • SP를 호출할 때 한 번만 네트워크를 경유하기 때문에 네트워크 소요시간을 줄이고 성능 개선
  • 개발 업무를 구분해서 개발 가능
    • DBMS 개발하는 조직에서는 데이터베이스 관련 처리하는 SP를 만들어 API처럼 제공하고 애플리케이션 개발자는 SP를 호출해서 사용하는 형식으로 역할을 구분하여 개발이 가능

프로시저의 단점

  • 처리 성능 낮음

    • 문자나 숫자 연산에 저장 프로시저를 사용한다면 오히려 C나 JAVA보다 느린 성능
      • 앗 그렇다면 자바에서 연산 처리 후에 sql로 넣어주는 방식을 채용해야 속도가 빠르겠구나!
  • 디버깅 어려움

  • DB 확장 어려움

    • 서버수를 늘려야할 때, DB 수를 늘리는 것이 더 어려움
    • WAS의 수를 늘리는 것이 더 효율적
profile
인생은 그렇게 호락호락하지 않다..

0개의 댓글