inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

DESC, ASC

해결됨

2,000++억건 데이터를 다루는 실리콘 밸리 AI 개발자의 PostgreSQL

desc가 내림차순 asc가 오름차순인데 반대로 설명된거 같습니다.

  • mysql
  • postgresql
  • oracle
  • dbms/rdbms
  • database
helloooo1 댓글 2 좋아요 0 조회수 108

수파베이스 ORM 질문

미해결

AI 시대에 살아남기: Supabase로 백엔드 뚝딱!

안녕하세요. 수파베이스 ORM 섹션을 듣고나니 일반적인 백엔드 서버와 api 라우트를 정의하고 데이터를 주고받는게 아닌 클라이언트에서 직접 수파베이스 ORM를 호출할 수 있는 것으로 확인되는데요! 현재 회사에 프론트엔드 개발자 2명이고 백엔드 지식이 많지않아 next.js + 수파베이스로 MVP 검증부터 진행할 것같습니다. 수파베이스로 MVP 검증후 별도의 백엔드 서버로 분리하게되었을때(분리가 꼭 필요한지도 사실 잘 모르겠습니다.) 분리비용을 최소화히기위해 api호출 과정을 next.js의 api라우트를 무조건 거쳐서 수파베이스를 접근하게하려고하는데 이런 과정이 유의미한 작업이 될 수 있는지 궁금합니다.

  • node.js
  • dbms/rdbms
  • oauth
  • backend
  • supabase
노강표 댓글 2 좋아요 0 조회수 93

FOREIGN KEY 정리하기, 영상대로 SQL코드 복붙해도 안되요.

미해결

[리뉴얼] 처음하는 SQL과 데이터베이스(MySQL) 부트캠프 [입문부터 활용까지]

안녕하세요. SQL 강의 중 FOREIGN KEY 정리하기 (업데이트) 파트를 듣고 있습니다. 문제는 영상시연과 달리, PDF파일의 외래키 코드를 복붙하고 번개모양 실행을 누르면 빨간 X표시가 나와요. 그 때문인지 sqlDB의 테이블스에 buyTbl ,usertbl 두개다 안떠요. 도와주시면 감사하겠습니다.

  • python
  • sql
  • mysql
  • dbms/rdbms
  • 데이터-엔지니어링
데이터 엔지니어 준비생 댓글 1 좋아요 0 조회수 65

트리거 질문

미해결

AI 시대에 살아남기: Supabase로 백엔드 뚝딱!

안녕하세요. 프론트엔드만하다가 강의보고 백엔드에대해 알아가는중입니다. 백엔드쪽은 아예 기반이 없다보니 하나하나 해보면서 따라가고있는중입니다. 1. 트리거는 ui로 설정을안하고 SQL 에디터로 설정을 해주셨는데 따로 이유가 있을까요?? 2. 트리거와 그 안에서 작성해주신 업데이트 함수가 별도로 관리되는것같더라고요. functions가 유틸함수고 Triggers가 시점과 적용대상(어느 테이블에 적용할지?)를 관리하는 영역으로 이해하는게 맞을까요? 3. 트리거는 테이블영역에서 적용이 불가능한가요? RSL처럼요!! 뭔가 분산되어있는 느낌이 있어서요. 4. 숙제내용 제출

  • node.js
  • dbms/rdbms
  • oauth
  • backend
  • supabase
노강표 댓글 1 좋아요 0 조회수 73

Substack 1년 제공

해결됨

AI 시대에도 살아남는 엔지니어의 조건, 미국 빅테크 시스템 디자인, 알고리즘 사고, 오픈소스 실무 완성

안녕하세요. 강의 잘 수강하고 있습니다. SubStack 1년 무료 제공 링크를 통해 신청했는데, 신청 처리 되었는지 확인 부탁 드립니다.

  • dbms/rdbms
  • 소프트웨어-설계
  • 시스템-디자인
  • 인공지능(ai)
  • ood
김성재 댓글 3 좋아요 1 조회수 95

특별 학습 자료 프로모션 1년 멤버십 무료 제공 문의드립니다

해결됨

AI 시대에도 살아남는 엔지니어의 조건, 미국 빅테크 시스템 디자인, 알고리즘 사고, 오픈소스 실무 완성

안녕하세요, 강의 잘 듣고 있습니다 감사합니다! SubStack 1년 무료 제공 관련해서 https://forms.gle/diKHUhvUe61JwzXF7 링크를 통해 신청했는데, 신청 정상적으로 되었는지 확인 부탁드립니다! 감사합니다!

  • dbms/rdbms
  • 소프트웨어-설계
  • 시스템-디자인
  • 인공지능(ai)
  • ood
환경 댓글 2 좋아요 0 조회수 86

간단한 오타 제보입니다.

미해결

김영한의 실전 데이터베이스 - 기본편

UNION 문제 4번 부분에 간단한 오타 있습니다. 정확한 부분은 아래 사진 참조부탁해용

  • sql
  • mysql
  • dbms/rdbms
  • SQLD
최형석 댓글 1 좋아요 0 조회수 88

큰 범위 조회 시 EXPLAIN의 rows 값이 정확하지 않은 이유가 궁금합니다.

해결됨

비전공자도 이해할 수 있는 MySQL 성능 최적화 입문/실전 (SQL 튜닝편)

안녕하세요 강사님. [실행 계획에서 type 의미 분석하기 (const, range, ref)] 강의에서 " Index Range Scan할 때 조회 범위가 크면 성능 저하의 원인이 되기도 한다. "라는 내용을 듣고 정말인지 궁금해져서 EXPLAIN을 한번 돌려봤습니다. CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100), age INT ); -- 높은 재귀(반복) 횟수를 허용하도록 설정 -- (아래에서 생성할 더미 데이터의 개수와 맞춰서 작성하면 된다.) SET SESSION cte_max_recursion_depth = 1000000; -- 더미 데이터 삽입 쿼리 INSERT INTO users (name, age) WITH RECURSIVE cte (n) AS ( SELECT 1 UNION ALL SELECT n + 1 FROM cte WHERE n < 1000000 -- 생성하고 싶은 더미 데이터의 개수 ) SELECT CONCAT('User', LPAD(n, 7, '0')), -- 'User' 다음에 7자리 숫자로 구성된 이름 생성 FLOOR(1 + RAND() * 1000) AS age -- 1부터 1000 사이의 난수로 나이 생성 FROM cte; CREATE INDEX idx_age ON users (age); EXPLAIN SELECT id FROM users WHERE id BETWEEN 1 AND 100000; -- type : range 결과 창에서 rows 가 100,000이 아니라 110,836으로 나오더라고요. 옵티마이저가 id 는 PK이라서 중복이 없을 거라는 것을 알고 Auto Increment가 적용되어 있어서 순차적으로 데이터가 들어갔음도 알텐데 왜 10만 개로 딱 떨어지게 예측하지 못하는지 직관적으로 잘 이해가 가지 않습니다. 감사합니다.

  • sql
  • mysql
  • dbms/rdbms
  • query-tuning
PSH 댓글 2 좋아요 0 조회수 80

실제 FK제약조건을 설정하지 않는이유

미해결

김영한의 실전 데이터베이스 - 설계 2편, 실무에서 반드시 마주치는 9가지 설계 패턴

안녕하세요 영한강사님! 좋은 강의 너무 잘들었습니다! 강의에는 없는 내용이긴한데요! 실무에서는 실제 FK제약조건을 설정하지 않더라구요. 선배님들은 확장성때문이라고 말씀해주시는데 이것말고도 다른 이유가 있는지 궁금합니다!

  • sql
  • mysql
  • dbms/rdbms
  • 소프트웨어-설계
  • SQLD
오승환 댓글 2 좋아요 0 조회수 111

Sequence 관련 질문

해결됨

제미니의 개발실무 - 커머스 백엔드 레거시와 AI 활용편

저는 review image reordering을 염두에 두고 sequence를 계속 가져가는 방향으로 결정했습니다. 제미니님은 실무에서 이렇게 염두에 두고 구현이 조금 더 복잡해지더라도 이런 특정 필드나 기능을 가져가는것을 오버엔지니어링이라고 생각하여 피하시는 편인가요? 어떤 기준으로 결정하시는지 궁금합니다.

  • spring-boot
  • 도메인
  • dbms/rdbms
  • backend
  • 인공지능(ai)
hahahl 댓글 2 좋아요 1 조회수 91

Image Only Query

해결됨

제미니의 개발실무 - 커머스 백엔드 레거시와 AI 활용편

image only query를 설명해주실때 stable pagination 때문에 조인을 사용하신다고 이해했습니다. 저는 다른방식으로 구현해보았는데 제미니님의 의견이 궁금합니다. 코드를 보면 나중에 image를 fetch 또 하게 되는데 이렇게되면 image only query를 ReviewImageEntity에 reviewId, status 인덱스를 걸고 SELECT review FROM ReviewEntity review WHERE review.targetType = :targetType AND review.targetId = :targetId AND review.status = :status AND EXISTS ( SELECT image.id FROM ReviewImageEntity image WHERE image.reviewId = review.id AND image.status = :status 이렇게 구현하는 방식이 데이터량이 많아진다면 효율적이지 않을까 싶어서 구현해봤습니다.

  • spring-boot
  • 도메인
  • dbms/rdbms
  • backend
  • 인공지능(ai)
hahahl 댓글 2 좋아요 1 조회수 73

라이브 운영중인 환경의 테이블에 인덱스 추가시 고려사항

해결됨

10,000++억의 데이터를 다루는 카카오 면접관의 MySQL

hong님 안녕하세요! 라이브 운영중인 테이블에 인덱스 추가시 고려할 사항이 궁금합니다! psotgresql이긴 하지만 금일 오전에 데이터 1800만건이 있는 테이블에 인덱스 추가를 했더니 cpu 100% 치솟는 장애 직겨탄을 맞았습니다.. (15분간 앱 사용 중단 ㅠㅠ) 뒤늦게 찾아보니 락을 잡지 않는 옵션을 추가했어야 하더군요. 새벽에 작업, 일시적인 디비 스펙업 정도만 떠오르네요. 몇천만건 ~ N억건 데이터가 있는 테이블에 인덱스 생성시 고려할 사항이 무엇들이 있는지 궁금합니다!

  • mysql
  • dbms/rdbms
  • 데이터-엔지니어링
  • backend
soap 댓글 2 좋아요 0 조회수 89

수강기간 연장

미해결

업무에 바로 쓰는 SQL 튜닝

수강기간 연장 안되나요ㅕ..?

  • sql
  • mysql
  • dbms/rdbms
  • mariadb
  • query-tuning
hagarakyo 댓글 1 좋아요 0 조회수 55

다양한 관점의 코드 경험을 위해 개선하지 않은 코드

해결됨

제미니의 개발실무 - 커머스 백엔드 기본편

안녕하세요. 제미니님 유튜브 부터 인프런까지 참여하며 굉장히 많은 인사이트를 얻고있어 무한한 감사 인사를 올립니다. 질문 강의를 수강하며 제미니님이 던져준 키워드를 어떻게 곱씹어야하지? 라는 생각을 하며 두 가지 정도 질문을 드리게 되었습니다. Q1. "저같은 경우는 뭐 컴포넌트 같은 걸 좀 쪼개서 만들고 싶은데, 일단은 여러분들이 좀 혼합된 걸 느끼게 하려고 제가 풀어 놨어요" - 결제 코드 느끼기 13:17 이렇게 제미니님이 생각했던 코드를 보고 싶은데, 이 코드는 신규 강의였던 " 레거시 다루기 " 에서 개선 작업을 하나요? 아니면 저희에게 열린 사고를 던져주고 넘어가는걸까요? Q2. "success 메서드에 트랜잭셔널을 사용하는 것도 할 말이 많은데 기본적인 로직에서는 문제는 없다." - 결제 코드 느끼기 13:58 이 내용에서도 혹시 개선하는 부분도 질문 1번과 같이 레거시 다루기 강의에서 개선 하시나요? 개인적으로 success 에서 트랜잭션 어노테이션을 빼고, 저장하는 로직을 한 군데 모아서 거기 사용할 것 같은데 제미니님은 어떻게 하시는지 궁금하네요!

  • kotlin
  • spring-boot
  • 도메인
  • dbms/rdbms
  • backend
제로콜라 함 즐길까 댓글 1 좋아요 1 조회수 98

BCNF 질문

미해결

김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복

마지막에 professor_name을 pk로 두고 그에 따라 1:1이기때문에 과목명을 그냥 컬럼으로 두셨는데 그러면 그 과목명이 만약에 바뀐다면 (데이터베이스 -> DB) 그렇다면 데이터베이스 수업을 하는 모든 교수님의 컬럼을 바꾸어야하니 갱신이상이 일어나는것 아닌가요? 이런 경우는 어떤 정규형을 위반한건지 궁금합니다.

  • sql
  • mysql
  • dbms/rdbms
  • 소프트웨어-설계
  • SQLD
escho94 댓글 2 좋아요 0 조회수 96

연관 엔티티 네이밍 규칙

미해결

김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복

안녕하세요! 연관 엔티티의 네이밍 기준(연결 강조 vs 의미 있는 이름)에 대한 강의를 듣고 고민이 생겨 질문드립니다. 강사님의 조언대로 처음에는 '의미 있는 이름'을 우선적으로 부여하고자 했습니다. 하지만 실제 설계를 진행하다 보니 다음과 같은 딜레마를 겪고 있습니다. 1. 직관성 저하 및 매핑 테이블 식별의 어려움 명확한 의미가 떠오르는 것만 의미형으로 짓고, 나머지는 연결 강조형(A_B)으로 설계했더니, 전체 ERD를 볼 때 어떤 테이블이 독립 엔티티인지, 어떤 테이블이 단순히 N:M 관계를 해소하기 위한 매핑 테이블인지 한눈에 파악하기가 어려워졌습니다. 규칙이 혼재되다 보니 오히려 일관성이 무너지는 느낌을 받았습니다. 2. 다중 다대다(N:M) 관계에서의 한계 그렇다고 매핑 테이블의 일관성을 위해 모두 '연결 강조형(A_B)'으로 통일하자니, 두 엔티티 사이에 여러 개의 M:N 관계가 존재할 때 문제가 발생했습니다. 예를 들어, User와 Store 사이에 '찜하기', '방문 내역' 등 여러 맥락의 관계가 존재할 경우, 단순한 user_store 라는 이름만으로는 이 관계들의 성격을 전혀 대변할 수 없었습니다. 보통 실무에서 이러한 상황일 때, 일관성(매핑 테이블임을 명확히 인지)과 의미(어떤 맥락의 관계인지 표현)를 모두 충족시키기 위해 주로 어떤 네이밍 패턴이나 타협점을 사용하시는지 실무 노하우가 궁금합니다!

  • sql
  • mysql
  • dbms/rdbms
  • 소프트웨어-설계
  • SQLD
박도현 댓글 1 좋아요 0 조회수 67

6강 - 해시태그 모델의 샤딩 전략에 대하여, 분산 정도(데이터 편중)와 트랜잭션 성능의 trade off 상황 발생 시에 대한 고민

해결됨

분산 데이터 모델링

안녕하세요, 선생님! 6강 해시태그 모델을 배운 후 데이터 분산 정도와 트랜잭션 일관성의 trade off에 대한 선택이 생각났고, 이에 대한 선생님의 고견은 어떠하실지 궁금하여 질문 올리게 되었습니다. 질문 내용은 아래와 같습니다. 데이터 편중도 크고 vs 트래픽이 많이 발생하여 트랜잭션까지 고려해야할때 샤딩키를 어떤 것으로, 어떤 부분을 tradeoff의 우선순위로 지정하는 것이 좋을지 저의 경우 트래픽을 선택할 것 같은데, 데이터 편중에 대해 추가적인 보완사항이 있다면 어떤 것이 있을지 일단 강의의 경우, 제가 이해한 내용으로는, 해시태그 모델과 같이, PK/FK의 분산 정도가 비슷하고, 부모 속성(FK)에 의한 쏠림 현상이 발생하여도 그 규모가 충분히 크지 않으므로 쓰기 경로를 중점적으로 고려하여(동일 게시글에 대한 해시태그를 동일 샤드에 저장) 설계한다. 이와 같습니다. 저는 해시태그 모델과 함께, 다른 예를 들어, 하루에 50,000건의 거래가 이루어지는 대규모 거래가 발생하는데, 이를 거래 게시판을 각 도메인 별(화장품/전자기기 등)로 별도로 만들어서 한 거래게시판 당 하루에 10,000건의 게시글, 1개의 1000~2000개의 찜이 발생한다고 하였을때의 상황에 대해 생각해보았습니다. 제가 만약 실무에서 찜 DB를 설계한다고 가정하고, 이에 대해 대응한다고 하였을때, 1) 게시글 ID와 찜(누가 찜했는지 구분해야 함, 찜ID로 구분한다고 가정하면)의 트래픽이 한 한 게시글 기준 찜 몇천여개, 게시글 총 만여개의 수준으로 발생하여 규모가 충분히 작다고 볼 수 없습니다. 2) 따라서 데이터 쏠림 현상에 대해 고민을 안할래야 안할 수가 없고, 그러면서도 데이터의 균등한 샤딩에 대해서도 고민이 들게 되었습니다. 3) 결국 데이터 분산을 균등하게 하느냐, 쏠림이 발생하더라도 쓰기 트래픽의 성능과 일관성, 조회 성능의 이점이 큰 것인가를 선택해야 하는데 4) 분산을 선택하지 않고, 트래픽 성능/일관성/조회 성능을 생각하였을때, 확실히 단일 데이터베이스에 있을때 성능적인 측면에서도 좋고, 일관성, 특히 조회 시 별도의 CQRS 전용 쿼리모델이나 DB를 따로 두지 않고 인덱스도 따로 설계하지 않는 등 훨씬 엄청난 이점이 될 것으로 판단이 됩니다. 따라서, 분산 정도 대신 성능 쪽으로 결론짓고 샤딩 키를 찜 ID 대신 게시글 ID로 지을 것 같습니다. 대신, 엄청난 트래픽으로 인해 데이터 편중이 너무 커진다면 게시글 생성일자를 샤드키로 추가하여 데이터를 좀 더 세부적으로 분리할 것 같습니다(아니면 더 좋은 방안이 있을지). 이에 대해 선생님의 생각이 궁금하여 질문드리게 되었습니다! 감사합니다.

  • dbms/rdbms
  • msa
  • modeling
  • 소프트웨어-설계
  • 시스템-디자인
  • database-modeling
Hyo Kyun Lee 댓글 2 좋아요 0 조회수 77

2022년 2회차 실기 4번

미해결

윤파고의 정보처리기사 DB/프로그래밍 All-In-One

col2만 세어야 하니까 3이죠,,?

  • python
  • java
  • c
  • dbms/rdbms
  • 정보처리기사
andrew98038@gmail. 댓글 1 좋아요 0 조회수 47

히스토리 관련 질문

미해결

김영한의 실전 데이터베이스 - 설계 2편, 실무에서 반드시 마주치는 9가지 설계 패턴

안녕하세요. 히스토리 테이블 관련해서 질문이 있습니다. 원본테이블에 업데이트 이유를 트랙킹할 필요가 있으면 변경 사유 컬럼들을 추가하라고 말씀주셨는데 생성, 수정, 삭제시 모두 히스토리 테이블에 스냅샷형태로 저장한다면 변경 사유 컬럼들은 히스토리 테이블에만 있는게 좋지 않을까 싶어서 질문드립니다.

  • sql
  • mysql
  • dbms/rdbms
  • 소프트웨어-설계
  • SQLD
김재연 댓글 2 좋아요 0 조회수 89

최신 하드웨어에서 SQL Express 설치에러 해결법

미해결

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part5: 데이터베이스

2025 환경에서 Express Edition이 설치 안됐던 문제가 생겼어서 해결방법 공유 드립니다. 문제 원인 : SQL Server 2025 Express 설치 중 에러 코드 -2061893607 과 함께 "데이터베이스 엔진 시작 핸들을 찾을 수 없습니다." 라는 메시지가 발생 1. 섹터 크기 호환성 확인 및 수정 (가장 유력한 원인) 최신 Windows와 SSD 환경에서 시스템 섹터 크기가 4KB를 초과 할 경우 SQL Server 엔진이 시작되지 않음. 관리자 권한으로 명령 프롬프트(CMD) 를 실행. 다음 명령어를 입력하고 엔터. fsutil fsinfo sectorinfo C: DOS 출력 결과 중 PhysicalBytesPerSectorForAtomicity 값이 4096 보다 크다면 호환성 문제가 맞다. 이를 해결하기 위해 레지스트리를 수정해야 함. CMD에 다음 명령어를 입력 (한 줄로 입력): REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\stornvme\Parameters\Device" /v "ForcedPhysicalSectorSizeInBytes" /t REG_MULTI_SZ /d "* 4095" /f 컴퓨터를 재부팅 한 뒤, 기존에 설치된 SQL Server 관련 항목을 모두 삭제하고 다시 설치. 명확한 원인 : PhysicalBytesPerSectorForAtomicity 값은 4096 으로 세팅되어있지만 PhysicalBytesPerSectorForPerformance 값이 16384(16KB) 로 되어 있는 게 문제!! SQL Server는 물리적 섹터 크기가 4KB(4096 바이트)를 초과하는 스토리지 시스템을 지원하지 않음. 현재 사용 중인 최신 NVMe SSD가 성능 향상을 위해 16KB 섹터 방식을 사용하고 있어서 SQL Server 엔진이 데이터 구조를 쓰지 못하고 실행에 실패! // 세팅 성공시 CLI 예시 C:\Windows\System32>fsutil fsinfo sectorinfo C: LogicalBytesPerSector: 512 PhysicalBytesPerSectorForAtomicity: 4096 PhysicalBytesPerSectorForPerformance: 4096 FileSystemEffectivePhysicalBytesPerSectorForAtomicity: 4096 장치 맞춤: 정렬됨(0x000) 장치 파티션 맞춤: 정렬됨(0x000) 검색 벌점 없음 자르기 지원됨 DAX 지원 안 함 씬 프로비저닝되지 않음

  • sql
  • dbms/rdbms
YYH_ 댓글 1 좋아요 0 조회수 263

인기 태그

인프런 TOP Writers

주간 인기글