개발자와 CHATGPT

Intro소프트웨어 개발에서 가장 큰 비용은 무엇일까?사무실 임대료, 클라우드 서버 비용, 전기요금, 노트북 등 장비 구매비용, 직원들의 식비까지—이 모든 항목이 소프트웨어 개발을 구성하는 요소들이지만 그 중에서도 단연코 가장 큰 비중을 차지하는 건 인건비다. 인건비 앞에서는 다른 비용들은 그저 껌값일 뿐이다.인건비는 단순히 직원들이 받는 월급뿐만 아니라, 4대 보험 회사 부담분, 퇴직금, 연차수당, 교육비, 단체보험료, 채용비, 인사관리비용과 같은 다양한 항목으로 구성되어 있으며, 이러한 비용들은 조직에 상당한 부담을 준다.이처럼 소프트웨어 개발의 핵심 비용 구조가 인력에 집중되어 있다 보니, 최근의 대규모 언어 모델(LLM)과 같은 혁신적인 기술이 큰 주목을 받고 있다. LLM은 단순한 비정형 데이터..

Data/LLM 2024.12.29
DBeaver 사용해 ERD 추출

IntroDBeaver는 데이터베이스 관리할 때 정말 유용한 도구다. 특히, ERD(Entity-Relationship Diagram) 추출 기능은 데이터베이스 구조를 시각적으로 확인하거나 팀원들과 공유할 때 아주 유용하다. 평소 개발하고 DB 접속할때는 인텔리제이를 사용하더라도 ERD 추출할때만큼은 DBeaver를 사용하고 있는 이유다.이 글에서는 DBeaver를 사용해 ERD 이미지를 추출하는 방법을 단계별로 알아본다.ERD 추출Step 1: ER Diagram 생성먼저 DBeaver에서 데이터베이스에 접속한다. 그리고 하단의 Project 윈도우에 있는 ER Diagrams 를 우클릭 하고 Create New ER Diagram을 클릭한다.Step 2: 데이터베이스 범위 선택이제 ERD 창이 열렸으..

Data 2024.11.22
데이터베이스 PK로 무엇을 선택할까?

Intro기존에는 주로 자동 증가 숫자 타입을 PK로 쓰곤 했는데, 최근에는 분산시스템에서도 사용 가능한 UUID를 데이터베이스의 기본 키(Primary Key)로 사용하는 경우가 많아지고 있다. 이번 글에서는 UUID및 숫자 타입을 PK로 사용했을때의 장단점을 비교해보고 추가로 대안도 찾아보자각 타입의 특징Numeric ID성능: 숫자 기반이므로 저장 공간이 적고, 데이터베이스 인덱싱 성능도 우수하다. 조회 성능에서 유리하다.단순함: 자동 증가 숫자 방식은 직관적이고, 값을 예측할 수 있어서 관리하기 쉽다.가벼움: Long 타입은 8바이트(64비트)로 UUID보다 작아, 대규모 데이터베이스에서 저장 공간을 절약할 수 있다.UUID고유성과 확장성: UUID는 분산 시스템에서 중앙 서버 없이도 고유 식별자..

Data 2024.11.12
[MYSQL] 데이터베이스 털리다 - DB털이 예방하기

Intro 이제 1년 좀 넘은 토이프로젝트가 하나 있다. 와이프만 쓰라고 대충 만들었던건데 한명씩 한명씩 사용자가 늘어서 그래도 지금은 몇명이 쓰고 있고, 요구사항도 꾸준히 반영해서 처음에 비해 기능도 제법 들어갔다. 토이프로젝트라서 처음 시작할 때, 디비 비밀번호를 사용하면 안되는 아주 뻔한 암호로 만들었었는데.. 아침에 일어나 컴퓨터를 켜니 새벽 4시쯤에 Slack 알림이 와있었다. [SpringBoot] 에러 발생시 Slack으로 알림 보내기 를 적용해서 에러가 발생하면 슬랙 알림이 오게끔 적용을 해뒀었는데, 그덕에 문제가 있다는건 발견했다. 그런데 오류를 잘 보면 select 쿼리를 실패한건데. 디비 접속이 잘 안되나? 해서 로그를 살펴보니 테이블이 없단다. 위에 적힌 Request IP를 추적해..

Data/MYSQL ⁄ MariaDB 2024.02.24
[mysql] 실수로 날린 데이터 binlog로 복구하기

Intro 날렸다 테이블. 없어졌다 데이터. 다행히도 업무에 쓰던 DB는 아니다. 현재는 가까운 가족들만을 고객으로 우리들 끼리만 쓰고 있는 사이드 프로젝트인데, 개발서버랑 운영서버를 헷갈려서 데이터를 유실했다. 다행인건 매일 밤 12시에 자동으로 백업을 해왔다는 것. [MYSQL Docker] 데이터베이스 매일 자동 백업하기 사건이 발생한건 오후 8시쯤이지만, 로그를 보니 오늘 오후 7시쯤 마지막 로그가 찍혀있었다. 00시 ~ 19시 사이의 데이터를 백업해보자. 데이터 복구 바이너리 로그 파일 찾기 요즘엔 많이들 그렇겠지만, mysql을 도커로 돌고 있다. 그래서 도커 컨테이너에 관련된 내용도 조금 포함되는데, 도커를 사용하지 않다고 해도 아래 내용을 따라 진행하는데는 무리가 없을 것이다. 도커 컨테이..

Data/MYSQL ⁄ MariaDB 2024.02.05