데이터베이스

    NoSQL

    NoSQL

    깃헙 블로그에서 편하게 보기 Click! NoSQL의 정의 NoSQL은 Not Only SQL의 약자로, Not Only의 뜻을 생각해봤을 때 RDBMS만 고집하지 말고 필요에 따라 다른 특성의 데이터베이스로 사용해봐라~ 이런 뜻으로 해석하면 된다. NoSQL은 관계 데이터 모델과 SQL을 사용하지 않는 데이터베이스 시스템이다. RDBMS가 일관성에 초점을 맞췄다면, NoSQL은 가용성과 확장성에 초점을 맞춘 데이터베이스이다. NoSQL의 등장 기존의 RDBMS는 정형화된 데이터를 저장하기 때문에 데이터의 형태/크기를 미리 정하고 테이블 단위로 구분하여 데이터를 저장할 수 있다. 또한, 트랜잭션을 통해 데이터를 안전하게 관리할 수 있고, 조인 연산을 사용한 검색도 가능하다. 하지만 기술이 발전함에 따라 ..

    Statement vs PreparedStatement

    Statement vs PreparedStatement

    깃헙 블로그에서 편하게 보기 Click! Statement 데이터베이스에 액세스 하는 데 사용된다. Statement 인터페이스는 매개 변수를 허용할 수 없으며 런타임에 정적 SQL문을 사용할 때 유용하다. SQL 쿼리를 한 번만 실행하려는 경우 Statement 인터페이스가 PreparedStatement보다 선호된다. Connection con = DriverManager.getConnection(); // Statement 객체 생성 Statement stmt = con.createStatement(); // Statement 실행 stmt.executeUpdate("CREATE TABLE STUDENT(ID NUMBER NOT NULL, NAME VARCHAR)"); PreparedStatemen..

    인덱스(Index)

    인덱스(Index)

    Index 데이터베이스에서의 인덱스란 데이터를 빠르게 찾을 수 있는 데이터 구조로, RDBMS에서 검색 연산의 속도를 높이기 위한 방법이다. 책 맨 뒷장에 있는 찾아보기처럼 내가 원하는 데이터가 DB의 어디에 저장되어있는지 빠르게 찾을 수 있다. 데이터베이스의 파일 구조에는 인덱스 이외에도 순차 방법과 해싱 방법이 있지만, 순차 방법은 물리적 순서와 논리적 순서를 동일하게 유지해야 하기 때문에 융통성이 떨어지고 탐색 시간이 오래 걸린다는 단점이 있다. 해싱 방법은 등호 연산(=)을 사용할 때는 O(1)로 굉장히 빠르지만, 부등호 연산(>, >=,

    데이터베이스

    데이터베이스

    데이터베이스의 정의 데이터베이스는 특정 조직의 여러 사용자가 공유하여 사용할 수 있도록 통합해서 저장한 운영 데이터의 집합이다. 그리고 이러한 데이터베이스를 제어, 관리하는 통합 시스템을 DBMS(Database Management System)이라고 한다. 데이터베이스의 특징 1️⃣ 실시간 접근성 데이터베이스는 사용자의 데이터 요구에 실시간으로 응답할 수 있어야 한다. 2️⃣ 계속 변화 데이터베이스는 데이터의 삽입, 삭제, 수정으로 항상 최신의 데이터를 유지해야 한다. 3️⃣ 동시 공유 데이터베이스는 여러 사용자가 서로 다른 데이터를 동시에 사용 가능해야 하고, 같은 데이터를 동시에 사용하는 것도 가능해야 한다. 4️⃣ 내용 기반 참조 데이터베이스는 주소나 위치가 아닌 데이터의 내용(content)으로..