데이터베이스 4

이미지와 오브젝트 스토리지

이미지를 어떻게 관리할 것인가 학습의 목적으로 가볍게 이미지를 관리하던 프로젝트만 진행할 때는 단순하게 서버 쪽에 이미지 파일을 넣어두거나, 온라인에서 이미지 링크만 가져와서 사용했습니다. 하지만 서비스 내에서 유저가 유동적으로 이미지를 선택하고, 이 이미지에 대한 조회가 잦아지는 경우 모든 걸 서버에 넣어두기도 어려울 뿐만 아니라, 이후에 관리가 굉장히 어려워질 수 있습니다. 워낙 DB에 대한 지식이 짧다 보니, 이미지를 어떻게 db에 저장할 것인가에 대해 소소하게 검색을 해봤고 일반적으로 추천하는 방식은 이렇습니다. 이미지의 메타데이터(이미지 업로더, 이미지 제목, 분류 등)는 RDBMS에 저장해둔다. 이때 이미지의 링크를 저장할 칼럼도 함께 만든다. 이미지만을 관리하는 별도의 저장소를 만들어서 이미..

데이터베이스 2020.11.01

ORM과 SQLAlchemy

몇 달 전 SQLD를 준비할 때, 그라데이션 분노를 느꼈던 적이 있습니다. sql을 통해 하려는 맥락은 다 똑같은 것 같은데 db 종류에 따라 아주 조금씩, 미세하게 문법이 달랐던 것입니다. 아니 왜 이건 통일이 되어있지 않고 다 미묘하게 다를까. 이 고민은 문제를 풀면 풀수록 쌓여서 마지막엔 그냥 하나만 잘하자 마인드로 시험을 봤던 것 같습니다. Is there a defined and accepted standard SQL language? 모든 DB가 공통적으로 사용하는 sql 의 기준 문법은 없는가? 이런 질문에 대해서도 ANSI standard가 있기는 하나, 모든 DB가 이 기준을 기반으로 각각의 subset을 만들어내고 있다고 답변이 올라와 있습니다. 상업적인 이유도 있겠고, 각각의 db가 ..

데이터베이스 2020.09.06

SQLite은 언제 사용하면 좋을까?

SQL이라는 존재 자체를 처음 접한 건 데잇걸즈 수업을 통해서였다. pandas로 csv 파일만 읽고 쓰던 작업을 하던 중에 잠시 맛보기처럼 배웠는데, 실무에서 많이 쓰인다는 건 조금 나중에 알게 되었다. SQL의 사용 빈도는 차치하고, 최근에 db를 붙여보는 것에 도전하고 싶어 이래저래 찾다 보니 sqlite를 다시 만나게 되었다. 처음 SQL을 접할 때도 sqlite를 설치해서 간단하게 쿼리문을 작성했던 기억이 난다. 42 과제나 실제 많은 서비스를 살펴보면 MySQL이나 Oracle을 사용하는데, 이들과 sqlite는 어떤 차이가 있을까. SQLite는 이럴 때 사용하자! Appropriate Uses For SQLite Embedded devices and the internet of things..

프로그래머스 코딩테스트 연습 SQL - 입양 시각 구하기(2) 풀이

코딩테스트 연습 - 입양 시각 구하기(2) ANIMAL_OUTS 테이블은 동물 보호소에서 입양 보낸 동물의 정보를 담은 테이블입니다. ANIMAL_OUTS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME는 각각 동물의 아이디, 생물 programmers.co.kr 문제 설명 ANIMAL_OUTS 테이블은 동물 보호소에서 입양 보낸 동물의 정보를 담은 테이블입니다. ANIMAL_OUTS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME는 각각 동물의 아이디, 생물 종, 입양일, 이름, 성별 및 중성화 여부를 나타냅니다. NAMETYPENULL..