본문 바로가기

IT31

SQL의 기본 개념 - 1 개요 데이터의 관리는 크게 데이터의 조회, 저장, 삭제 3가지 유형으로 분류할 수 있다. SQL은 조회, 삭제, 저장 세 가지가 가능하며, 선언적 언어이기 때문에 이 3가지 형태에 맞는 패턴들이 존재한다. 따라서 이 3가지 패턴에 맞게 원하는 조건을 설정하면 데이터 관리에 대한 모든 일은 완료되는 것이다. 장점 배우고 사용하기 쉬운 언어: 개발자뿐만 아니라 DBA, 일반 사용자들도 SQL을 배우고 사용하는데 무리가 없다. 프로그래밍 언어들처럼 절차적인 개별 단위로 처리되기보다, 데이터의 집한 단위로 처리된다. 그리고 실제 데이터들이 어떻게 처리되는지 세부적인 과정은 SQL 문장을 작성하는 사람은 신경 쓸 필요 없다. 왜냐하면 절차적 언어가 아니고 선언적 언어이기 때문이다. 공인된 기관의 표준 SQL 문법.. 2022. 7. 12.
AWS 부하 테스트 도구 - 1 부하 테스트 도구란 무엇인가? 대상 시스템에 대해 많은 요청을 하고 DOS, DDOS 공격이 들어오는 상태로 만드는 등 시스템 상태를 고부하로 만들어주는 도구를 부하 테스트 도구라고 한다. 부하 테스트 도구 용어 도구마다 조금씩 차이는 있지만 기본적으로 아래 내용을 포함한다. 용어 설명 시나리오 클라이언트별 설정된 HTTP 요청 패턴 시나리오 실행 횟수 클라이언트가 시나리오에 따라 요청을 보내는 횟수 클라이언트 HTTP 요청을 동시에 1개만 줄 수 있는 요청 생성기 클라이언트 동시 가동 수 테스트 시작 수에 테스트 도구에 사용할 수 있는 클라이언트 수 Ramp-up 기간 테스트 시작 후 모든 클라이언트를 기동하기까지의 준비 기간 Throughput: 시스템이 시간당 처리할 수 있는 요청수 Latency:.. 2022. 7. 11.
AWS 부하 테스트 목적 - 1 부하 테스트의 목적은 무엇인가? 온프라미스 환경에서 부하 테스트 목적은 여러 케이스를 바탕으로 각 시스템의 응답 성능을 예측하고, 부하가 많이 발생할 때는 성능을 개선, 원하는 성능을 도달하는데 필요한 하드웨어를 선정하는데 목적이 있다. * 하드웨어 구매는 클라우드 환경에서는 사실상 의미가 없어졌다고 볼 수 있다. 클라우드 환경에서는 부하가 많이 발생했을 때 시스템 구성을 변경해도 성능이 향상되지 않는 경우가 대부분이다. 그러므로 확장성을 확인하기 위해 부하 테스트를 진행한다. 클라우드 환경에서의 부하 테스트는 시스템 확장성 확인 시스템 확장성 특성 파악 에 있다고 볼 수 있다. 테스트 전에는 아래 사항들을 확인해 두면 좋다. Throughput 레벨: 100rps, 500rps, 1000rps, 200.. 2022. 7. 8.
SQL 기본 이론 - 1 SQL의 특성 쿼리 구성을 자세히 조사하기 전에 몇 가지를 검토해야 합니다. SQL 자체의 일반적인 특성: 데이터베이스 엔진 및 관련 옵티마이저 및 옵티마이저의 효율성을 제한할 수 있는 항목. SQL 및 데이터베이스 관계형 데이터베이스의 존재는 E.F. Codd의 선구적인 작업 덕분입니다. 관계 이론. 처음부터 Codd의 작업은 매우 강력한 수학적 기초를 제공했습니다. 지금까지 대부분 경험적 학문이었던 것입니다. 비유하자면 수천 수년 동안 인류는 강을 가로지르는 다리를 건설했지만 종종 이러한 구조는 당시의 마스터 빌더가 완전히 엔지니어링 되지 않았기 때문에 다리를 건설하는 데 사용한 재료 간의 진정한 관계를 이해하고, 이러한 교량의 결과적인 강점. 한때 토목공학과 물질적 강점에 대한 확고한 이론적 지식을.. 2022. 7. 6.
RDB의 관계 기본 개념 - 1 데이터의 관계형 보기 데이터베이스는 실제 상황의 작은 부분에 대한 모델일 뿐입니다. 아무렇게나 표현에서 데이터베이스는 항상 불완전한 모델이며 매우 좁은 표현입니다. 풍부하고 복잡한 현실. 일부 비즈니스 활동을 나타내는 단일 방법은 거의 없습니다. 그러나 기술적인 의미에서 의미론적으로 정확할 몇 가지 변형입니다. 하지만, 주어진 일련의 프로세스를 적용하기 위해 일반적으로 가장 잘 맞는 표현이 하나 있습니다. 관계형 모델의 이름은 테이블을 서로 연결할 수 있기 때문이 아니라(a 대중적인 오해), 열 사이의 관계에 대한 참조로의 테이블을 의미합니다. 다음은 모델에 이름을 지정하는 관계입니다. 다시 말해 관계형 여러 값이 테이블의 동일한 행에 속하는 경우 관련되어 있음을 의미합니다. 방법 열은 서로 관련되어 관.. 2022. 7. 5.
오라클 락(Lock) 기본 개념 데이터베이스 운영 시 많은 대기가 발생해서 성능에 문제가 있거나 처리가 지연되기도 합니다. 일반적으로 많이 발생하는 Lock wait나 Dead lock을 접하게 됩니다. 그러면, 데이터베이스에 왜 락이 필요한 것일까요? 고객이 창고에 맡긴 물건의 내용을 변경하고 싶다고 가정하면, 물건의 내용을 변경하고 싶다고 했지만 단순히 숫자 한 개를 큰 값으로 바꿔 쓰고 싶을 뿐입니다. 즉, 우선 물건을 알고 싶으니까 물건을 꺼내 주세요(select). 그 후 꺼낸 값에 1을 더해서 다시 맡겨주세요(update). 오라클은 병렬 처리를 가능케 하고 높은 처리량을 실현을 목표로 합니다. 병렬 처리를 하면 실행하는 타이밍에 따라서는 값이 늘어나지 않는 현상이 발생할 수 있습니다. 값을 변경하는 작업 때에는 변경하기 전.. 2022. 7. 4.