DB 6

우분투 PostgreSQL설치(pgAdmin 설정)

최근에 듣는 강의에서 PstgreSQL 데이터베이스를 사용한다고 해서 우분투(제가 개발환경이 우분투입니다)로 설치를 했습니다. https://www.postgresql.org/download/linux/ubuntu/ PostgreSQL: Linux downloads (Ubuntu) Linux downloads (Ubuntu) PostgreSQL is available in all Ubuntu versions by default. However, Ubuntu "snapshots" a specific version of PostgreSQL that is then supported throughout the lifetime of that Ubuntu version. Other versions of Postgr..

DB 2024.03.05

prisma란

GrapQL 사용하면서 prisma를 같이 사용한다. TypeORM에 이어 타입스크립트 ORM으로 널리 사용되고 있기도 하고, 데이터베이스 마이그레이션에서도 사용되는 Prisma에 대해 알아보고자 한다. TypeORM과는 또다른 사용 방법을 가지고 있으며, 자체적으로 제공하는 스키마 형성 방식을 이용하면 SQL 쿼리를 직접 짜지 않아도 되는 장점이 있으며, 제공하는 ORM 메서드들 또한 다른 ORM과 비교했을 때 풍부함을 느낄 수 있다. 특히 서버리스 오픈소스 플랫폼인 Supabase에서 공식적으로 데이터베이스를 관리할 때 Prisma를 권장하고 있으며, 뿐만 아니라 여느 RDBMS와 같이 Prisma Studio라는 자체 GUI도 제공하는데, 이는 소프트웨어 설치가 필요하지 않아 더욱더 편리하게 느껴졌..

DB 2023.08.25

SQL vs. NoSQL

SQL(구조화 쿼리 언어) vs. NoSQL(비구조화 쿼리 언어) 데이터베이스는 크게 관계형 데이터베이스와 비관계형 데이터베이스로 구분합니다. 관계형 데이터베이스는 SQL을 기반으로 하고, 비관계형 데이터베이스는 NoSQL로 데이터를 다룹니다. SQL과 NoSQL은 만들어진 방식, 저장하는 정보의 종류, 그리고 저장하는 방법 등에 차이가 있습니다. 관계형 데이터베이스에서는 테이블의 구조와 데이터 타입 등을 사전에 정의하고, 테이블에 정의된 내용에 알맞은 형태의 데이터만 삽입할 수 있습니다. 관계형 데이터베이스는 행(row)과 열(column)로 구성된 테이블에 데이터를 저장합니다. 각 열은 하나의 속성에 대한 정보를 저장하고, 행에는 각 열의 데이터 형식에 맞는 데이터가 저장됩니다. 특정한 형식을 지키기..

DB 2022.03.04

관계형 데이터베이스

구조화된 데이터는 하나의 테이블로 표현할 수 있습니다. 사전에 정의된 테이블을 relation 이라고도 부르기 때문에, 테이블을 사용하는 데이터베이스를 관계형 데이터베이스(Relational database)라고 합니다. 다음은 관계형 데이터베이스를 학습하면서, 반드시 알고 있어야 하는 키워드입니다. 데이터(data): 각 항목에 저장되는 값입니다. 테이블(table; 또는 relation) : 사전에 정의된 열의 데이터 타입대로 작성된 데이터가 행으로 축적됩니다. 칼럼(column; 또는 field) : 테이블의 한 열을 가리킵니다. 레코드(record; 또는 tuple) : 테이블의 한 행에 저장된 데이터입니다. 키(key) : 테이블의 각 레코드를 구분할 수 있는 값입니다. 각 레코드마다 고유한 값..

DB 2022.02.11

트랜잭션 ACID

트랜잭션 트랜잭션이란 여러 개의 작업을 하나로 묶은 실행 유닛입니다. 각 트랜잭션은 하나의 특정 작업으로 시작을 해 묶여 있는 모든 작업을 다 완료해야 정상적으로 종료합니다. 만약 하나의 트랜잭션에 속해있는 여러 작업 중에서 단 하나의 작업이라도 실패하면, 이 트랜잭션에 속한 모든 작업을 실패한 것으로 판단합니다. 다시 말해 작업이 하나라도 실패를 하게 되면 트랜잭션도 실패이고, 모든 작업이 성공적이면 트랜잭션 또한 성공입니다. 성공 또는 실패 라는 두 개의 결과만 존재하는 트랜잭션은, 미완료된 작업 없이 모든 작업을 성공해야 합니다. 데이터베이스 트랜잭션은 ACID라는 특성을 가지고 있습니다. ACID ACID는 데이터베이스 내에서 일어나는 하나의 트랜잭션(transaction)의 안전성을 보장하기 위..

DB 2022.01.21

데이터 베이스 SQL 소개

데이터베이스의 필요성 앞서 데이터를 저장하는 방법으로 파일에 데이터를 저장하거나, 인메모리 형태로 데이터를 임시 저장하는 방법을 이용했습니다. 이 방법으로도 데이터를 저장할 수 있는데, 굳이 데이터베이스를 사용할 필요가 있을까요? 데이터베이스를 사용하지 않고, 엑셀 시트나 CSV 파일 등에 데이터를 저장해 사용하면 되지 않을까요? 이번 챕터에서 그 의문을 해결할 수 있습니다. 1. In-Memory 먼저 JavaScript에서 데이터를 다룰 때에는 프로그램이 실행될 때에만 존재하는 데이터가 있습니다. JavaScript에서 변수를 만들어 저장한 경우, 프로그램이 종료될 때 해당 프로그램이 사용하던 데이터도 사라집니다. 이 말은 변수 등에 저장한 데이터가 프로그램의 실행에 의존한다는 말입니다. 예기치 못한..

DB 2022.01.21