본문 바로가기

내일배움캠프 Node 4기/TIL

내배캠 12/17 TIL

프로그래머스 알고리즘 레벨0

- 사실 알고리즘 레벨 0짜리는 단순한 연산문제(?)에 가깝다.

그래서 무슨 알고리즘 어쩌고 하기 전에 우선 레벨 0문제들부터 정복하자는 계획을 세웠다.

오늘 10문제를 풀었는데, 특이할 사항이 있다면 Reduce 메소드인데 += 연산할때 특효약이랄까

그냥 for 문 돌려서 하는것보다 명확해서 좀 더 익숙해지기 위해 노력해야겠다.

 

DB 트랜잭션 Isolation

- 트랜잭션은 독립적이어야한다. 그러나, 수많은 트랜잭션들이 거의 동시다발적으로 오가는 실제 상황에서

독립성을 어느 정도로 유지하느냐가 관건이다. 독립성이 높을수록, 즉 lock을 걸어 안전하게 할수록 성능은 떨어지고, 독립성을 낮출수록 각종 현상이 생기기 마련이다.

 

격리(Isolation)레벨이 0부터 3까(Serizlizable)까지 있는데 왜 1부터 시작 안하고 0부터 시작하나 잠깐 생각해 봤는데, Dirty read(커밋도 안된 데이터를 읽어버림) Non repeatable read (같은 쿼리를 두번 수행하는데 쿼리 결과가 repeatable 하지 않고 상이할때), Phantom read (일정 범위의 select시 갑자기 row가 삽입되어 못보던 이전 read에서 못보던게 두번째 read에서 튀어나옴) 등이 기준일때 0레벨은 모두 허용하기 때문에

아이 레벨 자체가 없는 0으로 한건 아닐까 생각했다. MySQL은 레벨2, PostgreSQL은 레벨  등등 각종 DB마다 레벨이 다른것도 흥미로웠다.

 

SQL Having 구문

- 그냥 간단하다. 조건을 하나 더 붙이는(having 즉, 가진) 구문이다.
SQL구문은 굉장히 직관적인게 너무 마음에 든다. 진짜 영어권 사람이면 1시간 안에 문법은
다 배울 정도로...

 

 

'내일배움캠프 Node 4기 > TIL' 카테고리의 다른 글

내배캠 12/20 TIL  (0) 2022.12.20
내배캠 12/19 TIL  (0) 2022.12.19
내배캠 12/16 TIL  (0) 2022.12.16
내배캠 12/15 TIL  (0) 2022.12.15
내배캠 12/14 TIL  (0) 2022.12.14