묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실리콘밸리 데이터 리더가 알려주는 Airflow 기초
forloop으로 task 정의시 task_id 정해지는 로직
안녕하세요. 49강 수강 중 질문이 있습니다. for table_name in TABLES.keys(): extract_from_postgres(postgres_schema, table_name) >> load_to_snowflake(snowflake_schema, table_name)현재 강사님이 주신 이 코드 기준 테이블 2개 tasks 2개 해서 총 4개의 tasks가 airflow tasks list의 결과로 반환되었는데요, 이때의 결과물인 tasks_id가 어떻게 만들어지는지 궁금합니다.조금 더 정확히는 forloop으로 task를 정의할 때 어떤 식으로 DAG가 이 task의 개수를 세고 네이밍을 하는지 궁금합니다.혼자 테스트를 해보고 싶어서 임의의 테이블 하나를 postgres:production에 추가하고 코드내부의 TABLES 딕셔너리에 제가 추가한 테이블의 스키마를 추가하였습니다. 이때 테이블이 총 3개가 되었으므로 airflow tasks list의 결과가 총 6개가 될 것으로 예상하였는데 여전히 4개로 나옵니다. 제가 놓친 부분이 있을까요?현재 production schema아래 3개의 테이블이 있는 상태입니다.airflow=# SELECT table_name FROM information_schema.tables WHERE table_schema = 'production' AND table_type = 'BASE TABLE' ORDER BY table_name; table_name ------------------------ session_timestamp user_session_channel user_session_channel_2 (3 rows)감사합니다. 학습 관련 질문을 상세하게 남겨주시면 더 좋습니다. 예를 들어 이해가 안 가는 부분이 있다고 하면 강의에서 어느 부분인지 어떤 부분이 이해가 안되는지 등등 추가 정보가 큰 도움이 됩니다. 그리고 에러가 난다면 어떤 에러 메시지가 나오는지 같이 공유해주세요. 혹시라도 유사한 질문이 있었는지 먼저 확인 부탁 드리겠습니다. 서로 예의를 지키며 존중하는 문화를 만들어갔으면 하고 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
미해결성공적인 SQL 인젝션 공격을 위한, SQL 기본 문법
화면 크기에 대하여
강의 영상을 보면서 따라하기에는 터미널 화면이 너무 작네요. 그냥 눈으로만 볼 수 있을 뿐...따라하면서 배우기는 어려운 강의라고 생각됩니다.
-
미해결실전 jOOQ! Type Safe SQL with Java
안녕하세요 FetchGroups에서 Multiset방식 사용하면 어떤가 해서 물어봅니다
안녕하세요 공부하다가 보니FetchGroups방식으로 했을때 Map으로 반환되고 DTO로 변환해야하는 오버헤드가 발생하는데요Multiset방식으로 하면 1:N 관계에서 바로 DTO로 반환 할 수 있는데요코드 보기가 조금은 더 복잡해 보이지만 WHERE절이 있을때 현재 테이블 데이터와 인덱스 상으로는 성능적으로 더 괜찮은거 같아서 multiset방식은 강의에 없어서 어떤지 궁금해서 여쭤봅니다 public List<ActorFilmography> findActorFilmographyWithMultiset(ActorFilmographySearchOption searchOption) { final JFilmActor FILM_ACTOR = JFilmActor.FILM_ACTOR; final JFilm FILM = JFilm.FILM; return dslContext.select( ACTOR, DSL.multiset( DSL.select(FILM.fields()) .from(FILM) .join(FILM_ACTOR) .on(FILM.FILM_ID.eq(FILM_ACTOR.FILM_ID)) .where( FILM_ACTOR.ACTOR_ID.eq(ACTOR.ACTOR_ID), containsIfNotBlank(FILM.TITLE, searchOption.getFilmTitle()) ) ).convertFrom(r -> r.into(Film.class)) ) .from(ACTOR) .where( containsIfNotBlank(ACTOR.FIRST_NAME.concat(" ").concat(ACTOR.LAST_NAME), searchOption.getActorName()) ) .fetch(record -> new ActorFilmography( record.value1().into(Actor.class), record.value2() )); }WHERE 조건 포함 시 성능 비교 fetchGroups 방식 (cost=405, rows=609) Film 필터링 먼저 → FilmActor 조인 → Actor 필터링 1. film 테이블 스캔 (1000 rows) └─ LIKE '%COMMANDMENTS EXPRESS%' → 111 rows 2. film_actor 인덱스 조회 (idx_fk_film_id) → 609 rows 3. actor PRIMARY KEY 조회 → 609 rows └─ LIKE '%LOLLOBRIGIDA%' → 1 row (최종) 특징: - Film 조건이 선택적이면 먼저 필터링하여 조인 범위 축소 - 하지만 Actor 필터링은 마지막에 수행 (비효율) - 609개 row가 네트워크 전송 → 애플리케이션에서 1개로 그룹핑 --- multiset 방식 (cost=20.2 + 13.3 × filtered_actors) Actor 필터링 먼저 → 각 Actor의 Film 서브쿼리 1. actor 테이블 스캔 (200 rows) └─ LIKE '%LOLLOBRIGIDA%' → 1 row (필터링 후) 2. 필터링된 1개 actor에 대해 서브쿼리 실행: - film_actor PRIMARY KEY 조회 (27.3 rows 추정) - film PRIMARY KEY 조회 (27.3번) - LIKE '%COMMANDMENTS EXPRESS%' → 1개 매칭 특징: - Actor 조건을 먼저 적용하여 서브쿼리 실행 횟수 최소화 - 필터링된 1개 Actor만 네트워크 전송 (JSON 포함) - Film 필터링은 각 actor 서브쿼리 내부에서 수행 --- 실제 Total Cost 계산 fetchGroups Total: 405 네트워크 전송: 609 rows (Actor + Film 중복 포함) 애플리케이션 처리: Map 생성 + Stream 변환 multiset Total: 20.2 + (13.3 × 1) = 33.5 네트워크 전송: 1 row (Actor + JSON array) 애플리케이션 처리: JSON 역직렬화 결론: WHERE 조건이 있으면 multiset이 압도적으로 유리 (405 vs 33.5)FetchGroups는 Actor를 나중에 필터링하고 multiset은 actor를 먼저 필터링해서 1개에 대한 film을 여러개 가져와서 현재 데이터에서는 더 유리한데 일반적인 사용법이 궁금합니다
-
미해결FastAPI 완벽 가이드
signed cookie 와 jwt 토큰
안녕하십니까 강사님! 자세하게 좋은 정보 알려주심에 항상 감사드립니다!!제 짧은 지식으로 궁금한 점이 생겨 질문드립니다.사용자 인증을 구현할때 jwt토큰을 사용하는 방법도 있는 걸로 압니다. jwt토큰도 마찬가지로 signed cookie처럼 암호화(인코딩)해서 헤더에 같이 보내는걸로 알고 있습니다.두 방식이 비슷하다고 생각하는데 jwt토큰과 signed cookie로 인증하는 차이가 무엇인지 궁금합니다. 짧은 경험상 모든 기술간의 트레이드 오프가 존재했던 거 같은데 jwt토큰과 signed cookie에도 그러한 부분이 있는지 궁금합니다 !항상 감사드립니다~
-
미해결실습으로 손에 잡히는 SQLD의 정석(2과목)
group sets(col1)
안녕하세요.group sets(col1) 에서 전체() 는 생략 가능하다고 들은 것 같은데 좀 다른 건가요?
-
미해결실습으로 손에 잡히는 SQLD의 정석(2과목)
1/24/60 은 분을 의미하는거죠?
시간은 1/24였고 여기서 1/24/60을 해도 그대로 시간인가요? 강의 중간에 이게 시간이라고 나와서 헷갈립니다
-
해결됨김영한의 실전 데이터베이스 - 기본편
오타
문제 3번 pdf 오타 있습니다!서브쿼리에서 orders에 알리아스가 빠져있습니다!
-
미해결[Zero To SQL] 비전공자도 바로 써먹는 가장 쉬운 SQL 강의 | 기획자/마케터/영업/데이터
강의 자료 확인 불가
섹션 1 - 2 SQL이란? 강의에 들어있는 강의 자료를 다운로드 했는데요. 해당 zip 파일이 비어 있는 파일로 보이고, 압축도 풀리지 않습니다.
-
해결됨비전공자를 위한 SQL 입문
Oracle DB Ex 다운로드 문의
안녕하세요. 현대자동차 내에서 강의를 듣고 있는데홈페이지 내에서 Oracle DB Ex 다운이 불가해보여서혹시 강의 자료실에 설치파일이 있는지 궁금합니다.
-
미해결[2025] 비전공자도 한 번에 합격하는 SQLD 올인원
ORDER BY 자료 및 강의 내용에 문제가 있는 것 같은데, 체크 부탁드립니다.
ORDER BY 절의 NULL값 위치 지정의 설명에서, 강의 자료의 134 페이지에 나온 설명을 보면, NULL 값의 위치가 지정된 항목은 오름/내림차순을 지정하지 않으면 자동으로 오름차순 되는 것은 ORDER BY 함수의 기본 기능으로 충분히 이해 가능하지만, 가장 마지막 문장인, "그 외의 직원들은 급여를 기준으로 오름차순으로 정렬한다."에서 [급여]가 아닌, 커미션 아닌가요? 실습을 같이하면서 계속 다른 조건으로 실행해봐도, 자료에서 제공한 같은 함수를 사용해봐도 COMM기준으로 오름차순 출력됩니다.급여가 맞나요?급여를 커미션의 의미로 작성하신 것이라면, 자료 내에서 SAL, COMM 등으로 표기 부탁드립니다.혼동이 심하게 오네요....
-
미해결[2025] SQLD 문제가 어려운 당신을 위한 노랭이 176 문제 풀이
실전모의고사 2회 42번 문제
보기 1번은 왜 답이 안되는건가요??설명에는 불필요하게 복잡하다고만 나와있는데요.결과는 1번도 맞는것 같긴한데요. 1번에서 쿼리 오류나 답이 아닌 특정한 경우가 있는건가요?
-
해결됨[CS 기술면접 4] 말이 트이는 데이터베이스
제2정규형 예시 질문
제2정규형 예시에서 등급 테이블을 보면 PK가 중복 되는 것처럼 표현됐는데 오류인가요?
-
미해결[2025] 비전공자도 한 번에 합격하는 SQLD 올인원
도커 설치 오류
먼저 유사한 질문이 있었는지 검색해보세요.서로 예의를 지키며 존중하는 문화를 만들어가요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 강의에서 도커 설치 이후 실행을 하였더니 위와 같은 화면으로 뜹니다. 또한 말씀주신 turevoly 또한 파워쉘 화면에서 설치가 되지 않고 에러가 뜨는 문제가 발생되네요;; 어찌해야하는지요. ㅠㅠ
-
미해결김영한의 실전 데이터베이스 - 설계 1편, 현대적 데이터 모델링 완전 정복
BCNF 정규화에 대한 질문
professor_bcnf, enrollment_bcnf로 테이블을 분리하는 과정에서 질문이 있습니다. 이전에 이름과 같은 자연키는 기본키로 두면 안된다고 들었는데 현재는 professor_bcnf에서 professor_name이 기본키로 있습니다. 이런 경우에는 문제가 딱히 생기지 않나요?
-
미해결[백문이불여일타] 데이터 분석을 위한 기초 SQL
해커랭크 문제풀이 처음부터 난이도 높아서 틀렸는데요.
해커랭크 문제가 영상이랑 다르게 조금 더 난이도 높게 나온 거 같아요 틀렸는데 어떻게 해야해요. 틀렸을 때 방법은 안나와서요..
-
해결됨오라클 SQL 데이터베이스
샘플데이터
학습하시면서 사용하는 샘플데이터를 좀 올려주세요
-
해결됨FastAPI 완벽 가이드
비동기처리와 멀티스레드
안녕하십니까 강사님! 오늘도 감사히 강의를 듣고 있습니다.fastapi는 비동기처리로 효율적으로 처리한다해서 자바쪽은 어떻게 할까 궁금해서 조사만 해봤는데 멀티스레드로 병렬처리로써 효율적으로 처리한다고 알게되었습니다.그러나 궁금한 점이 생겼습니다. fastapi에서 io작업같이 오래 걸리는 부분에 비동기 처리를 하는건 이해했는데 왜 단순 서비스로직 같은 경우에서는 비동기처리를 사용안하는지 궁금합니다.제 생각에는 단순히 생각해서 모든 처리를 비동기처리 해도 될 거 같은데 왜 그렇게 안하는지 어떠한 부분에서 문제가 발생할 수 있는지 궁금합니다.또한 만약에 비동기처리를 안하고 동기처리로 할때 멀티스레드로 하는지도 궁금합니다.아니면 혹시 서비스 로직같은 단순 cpu연산을 사용할때는 워낙 연산 속도가 빠르니 비동기처리와 동기처리가 속도차이가 없어서 그러한 부분들을 고려하지 않아도 되는지 이런 차이들이 궁금합니다! 항상 좋은 강의 감사드리며 정말 저에겐 소중한 강의입니다!
-
미해결[2025] SQLD 문제가 어려운 당신을 위한 노랭이 176 문제 풀이
3강 노랭이 문제 SQL 실습 스크립트 다운로드 파일 오류
안녕하세요.SQLD 문제가 어려운 당신을 위한 노랭이 176문제 풀이 과정중에3강 노랭이 문제 SQL 실습 스크립트 다운로드 후 압축해제 시 파일 오류 발생합니다.확인바랍니다.
-
미해결[2025] 비전공자도 한 번에 합격하는 SQLD 올인원
노랭이 기출
제가 이 강의 결제해서 듣고 있는대 노랭이 기출풀이강의랑은 별도인가요?ㅠㅠ
-
미해결업무에 바로 쓰는 SQL 튜닝
7-8 질문
현재 실행 계획이 강의랑 반대라서 질문 남겨봅니다 드라이빙 테이블이 de 로 나오는 이유가 뭘까요 ?