mysql에는 sp(stored procedure)이 있습니다.
이는 저장된 sql을 순차적으로 실행하는 프로그램으로 질의 형식만 가능한 sql에 절차적인 실행을 가능하게 해주는 방법입니다.
이는 oracle에선 pl/sql이라고 불리며 mysql은 sp라고 불립니다.(정확히는 다르지만 sql을 절차적으로 실행하게 해줍니다.)
많은 분들이 장점과 단점을 말씀하시고 극명히 나타나는 장점과 단점도 있습니다.
장점
-빠른 처리속도(더하기 등의 사칙연산은 제외)
DB에서 직접 데이터를 처리하여 더 빠른 속도의 처리가 가능 합니다.
-높은 보안성
각 sp간의 보안이 개별화 되어 있어 일차적인 해킹을 막습니다.(sql injection 등)
-높은 재활용성
필요한 부분의 sp를 만들고 이를 호출하여 데이터만 받아오면 됩니다.
-DB와 백엔드를 확실히 구분 가능
DB에서 데이터를 받아오는 부분과 처리하는 부분을 나눌 수 있습니다.
단점
-연산이 느리다.
숫자와 문자의 연산은 늦은 처리속도를 보입니다.
-DB확장이 힘들다.
DB의 구조가 바뀌면 sp 또한 바꾸어야 합니다.
-오류 잡기 매우 힘듬
기본적으로 sql은 문법에러가 아니면 에러가 잘 뜨지 않고, 데이터 확인이 힘듭니다.
이는 사용자의 역량에 영향을 많이 받는다는 이야기 입니다.
기본적으로 DB에서는 기본적인 데이터를 받아와 AWS에서 처리하는 것이 기본입니다.
하지만 sql의 성능을 완전히 뽑을 수 있고, 재활용 또한 편한 sp를 적절히 사용하는 것도 좋습니다.
'DB > mysql(mariaDB)' 카테고리의 다른 글
피벗(PIVOT) 테이블 (0) | 2022.06.19 |
---|---|
stored procedure(저장 프로시저) 만들기 (0) | 2022.06.19 |
두 날짜의 차이값 계산 함수(TIMESTAMPDIFF) (0) | 2022.05.25 |
sql error 1262 (0) | 2022.03.25 |
csv를 mysqlDB에 넣기 (0) | 2022.03.25 |