본문 바로가기
320x100
728x90

DB3

CS] 트랜잭션(Transaction) 트랜잭션이란, 데이터 베이스에서 일어나는 연산의 최소 단위이다. Select 하거나 update , delete 등등 데이터 베이스에서 일어나는 변경사항에 관한 최소 연산 단위를 뜻한다. 트랜잭션은 데이터베이스의 무결성을 유지하고 신뢰할 수 있는 데이터를 저장할 수 있도록 유지하는 과정이다. 예를 들면, 게시판에 글을 작성하고 화면에서는 게시글이 등록이 성공됐다고 나오지만, 데이터베이스에 데이터 저장 중, 오류가 발생하여 내가 쓴 글이 보이지 않거나 커머스 서비스에서 상품을 구매했다거나 구매하지 않았다고 표기가 되지만, 나의 잔고가 줄어든다던가 재고 수량이 줄어들지 않는다면? 우리는 그 사이트 혹은 서비스를 신뢰를 할 수 없다. 앞서 언급한 일들이 일어나면 안 되기 때문에, DB에 데이터를 insert하.. 2022. 11. 10.
Intelli J에서 AWS 아테나 및 DB 연결하기 인텔리제이는 참 간편한 IDE다. 여러 가지 언어에 대한 개발 지원 및 다양한 도구들을 지원하여 개발단계에서 많은 기능을 제공하여 개발을 한 층 편하게 해 준다. AWS 아테나는 인텔리제이에서 연결을 지원하는지 모른 채로 매 번 aws 콘솔에 들어가 쿼리를 사용하곤 했다. 게다가 우리 회사는 2중 보안이 되어있어, 매 번 이 과정을 거치며 아테나를 뚫고 뚫고 들어가야 했다. 그러나 인텔리제이에서 이를 해결할 수 있다. 인텔리제이 우측에 보면 Database 탭이 있다. 만약 보이지 않을 경우. View -> Tool Windows -> Database로 활성화 가능하다. 탭을 열면 +버튼이 있는데, Data Source -> Other -> AWS Athena 가 있다. 클릭해주자. User에는 acce.. 2022. 4. 11.
쿼리 속도 향상을 위한 방법들 공부용으로 생각날 때마다, 배울 때마다 추가하자. 1. select를 할 때는 필요한 데이터만 뽑는다. 예를 들면 select * from student; 보다는 select name,age,class from student;를 하는 방법이다. 이렇게 되면 IO가 줄어들면서 DB의 쿼리에 성능을 효과적으로 사용할 수 있다. 애초에 테이블 자체가 row가 많이 없다면 상관없지만 양이 많아지면 5초가 지나도 결과가 안 나오는 경우가 많다. 2.like ='%something%'을 사용할 때는 %를 가급적 뒤에만 붙이자. %를 앞에 붙이게 되면 ~로 시작하는 문자열을 다 검색해야 해서 연산의 시간이 증가하지만 뒤에만 붙이게 되면 특정 문자열 이후의 값들만 검색하면 되므로 불가피할 경우가 아니라면 문자열 검색의.. 2021. 2. 14.
300x250
320x100