MySQL3 wanted 백엔드 첼린지 2-1 MySQL 기본개념 MySQL의 기본 개념들과 실행 계획에 대해 알아보자. 쿼리 실행 순서 MySQL은 사용자가 실행한 쿼리를 SQL 파서가 파싱을 하여 파서 트리를 만든 뒤 파서 트리를 기준으로 옵티마이저가 해당 트리를 분석하여 실행한다. 위에서 파싱을 한다고 했는데, CS에서는 몇가지의 파싱 방식이 존재 한다. 1. Lexical analysis : The server breaks down the query into individual tokens, such as keywords, identifiers, and operators. 2. Syntax analysis : The server checks the query for proper syntax and structure, and verifies that all the.. 2023. 2. 20. wanted 백엔드 첼린지 1-2 Big Tech가 MySQL을 사용하는 이유 MySQL은 트랜잭션, 락, 격리수준을 제공한다. 이들에 대해 하나씩 알아보자. Transaction 트랜잭션은 데이터 베이스의 상태를 바꾸는 작업 단위이다. 이는 작업의 완정성을 보장해준다. --> 작업의 셋을 모두 완벽하게 처리하거나, 처리하지 못하면 원상태로 복구시켜준다. MySQL에 insert, update, delete등의 SQL 명령으로 데이터의 상태를 바꿀때마다 자동으로 commit을 하여 변경된 내용을 데이터 베이스에 반영한다. 트랜잭션은 아래와 같은 4가지 특성을 가진다. 1. 원자성(atomicity) - 트랜잭션이 모두 DB에 반영되거나 아예 반영되지 않아야 한다. 2. 일관성(consistency) - 트랜잭션의 작업 처리 결과는 항상 일관적이어야 한다. 3. 독립성(isolati.. 2023. 2. 12. wanted 백엔드 첼린지 1-1 다양한 데이터 베이스의 특징 데이터 베이스의 3가지 원칙 무결성(data integrity) 데이터가 전송, 저장, 처리되는 과정에서 변경되거나 손상되지 않는 것. 완정성, 정확성, 일관성을 유지해야한다. 안정성(data reliability) 데이터를 보호할 수 있는 방법. 인증/인가되지 않은 사용자로부터 데이터를 보호한다. 고장이 나지 말아야한다. 확정성(data scalability) 데이터 양, 사용자가 늘어날 때 대처가 가능해야한다. 데이터 베이스 종류 relational 1. 데이터를 row와 coloumn으로 이루어진 table 형태의 구조에 저장한다. 2. SQL(Structured Query Language)를 사용하여 데이터를 조회, 저장, 수정한다. 3. MySQL, Oracle, Postgre 등이 이에 해당한.. 2023. 2. 10. 이전 1 다음