[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요 영한님, 강의 정말 재밌게 봤습니다! 다름이 아니라 문제와 풀이 3번 문제 "RIGHT JOIN으로 주문 없는 고객 찾기" 를 보면 '가입은 했지만 주문 기록이 없는 고객의 이름과 이메일을 조회하는 SQL을 작성하라고 되어있는데, DISTINCT 를 붙여 중복을 제거한 행을 조회하는게 맞는게 아닌가 싶어 질문 드립니다!! -- 기존 답안 SELECT u.name, u.email FROM orders o RIGHT JOIN users u on o.user_id = u.user_id WHERE o.order_id IS NULL; -- 제가 생각한 쿼리문 SELECT DISTINCT u.name, u.email FROM orders o RIGHT JOIN users u on o.user_id = u.user_id WHERE o.order_id IS NULL;
안녕하세요! 다른 분 질문에 대한 답변을 보고 기본적인 의구심은 해소되었는데요. 혹시 몰라 확인차 여쭙습니다. 09:38 피피티에서요. 나머지 연산을 이용해서 물리샤드, 논리샤드를 구분하셨잖아요. 제가 이해하기로 나머지가 0이면 1번 샤드, 1이면 2번 샤드...이렇게 의도하시려고 했던 것 같아요. https://inf.run/7i72V 여기에서 답변해주신 것과 피피티의 샤드 번호 현황?이 달라서 조금 혼란스러웠습니다. 링크 답변을 보면 아주 간단한 샤딩 예시였지만, 물리 샤드가 두 개일 때 % 2를 적용하면 1번 샤드(나머지 연산결과 +1)에는 article_Id가 [2, 4, 6, 8]이 들어가고 2번 샤드에는 [1, 3, 5, 7]이 들어갈 테죠. 논리 샤드 기준으로는 1번 논리샤드 = [4, 8] 2번 논리샤드 = [1, 5] 3번 논리샤드 = [2, 6] 4번 논리샤드= [3, 7] 1번 물리 샤드에는 1, 3번 논리 샤드 2번 물리 샤드에는 2, 4번 논리 샤드 (링크 답변과 동일한 분포) 이게 제가 위의 답변을 강의 자료에 적용해서 이해한 샤딩 현황입니다! 실제 프로덕션에서도 이렇게 샤딩하는지는 모르겠지만 교육 목적 상 간단한 해싱이었어도 제대로 이해하고 넘어가고 싶었습니다. PPT만 보고는 나머지 연산이 어떻게 사용된 건지 이해가 안 됐는데 답변 보고 이해가 돼서 확인 차 질문드렸습니다. 추가적으로 클라이언트는 논리 샤드만 알고 있다고 하셨는데 그럼 물리 샤드 번호는 물리적으로 나뉜 샤드를 구분하는 데만 사용하고 비즈니스 로직에서는 사용되는 일이 없을까요? 감사합니다.
24번 # 사용자별로 주문 거리의 합계와 평균 계산 df_distance = df.groupby('user')['거리'].sum() # 주문 거리의 합계가 50km 이상인 사용자만 필터링 cond = df_distance >= 50 df_distance = df_distance[cond] 25번 # 1회 이하 주문 제외 cond1 = time_interval>0 m = time_interval[cond1].mean() 선생님, 위 두 문제에서 df_distance 와 time_interval은 단순히 변수인가요? 그 뒤에 cond를 붙여준 것의 의미를 모르겠어요..변수에 변수를 합한 건가요? 교재 예시에 많이 나오는 df= df[cond] 코드는 cond변수 값을 df파일에 저장한다는 건가요? cond는 조건식에서만 사용하는 거죠? 그리고 25번 문제에서 시간간격이 1일 이하인 사용자 제외니까 time_intreval >0이 아니라 1인데 오류인거 같습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 제목 그대로 오류가 나구요. 원본 코드를 옮겨봐도 의존성 문제인지 오류가 납니다 https://drive.google.com/file/d/1yRhCS0euBPt9YqDHOrYB4kE9A3-QcBjR/view?usp=drive_link
navbar.html에서 로그아웃 버튼을 생성 할 때 기존에 {% if session_user % } ... (1) {% else %} ... (2) {% endif %} 하고 이 아래 쪽에 다시 if session_user를 해서 로그아웃을 하는 이유가 무엇일까요? 그냥 (1) 위치에 a태그 달아서 로그아웃을 만들면 안될까요?
1. 현재 학습 진도 몇 챕터/몇 강을 수강 중이신가요? [4주차] 4-9 어떤 알고리즘을 학습하고 계신가요? Heap 여기까지 이해하신 내용은 무엇인가요? 개념은 이해 완료했습니다. 2. 어려움을 겪는 부분 어느 부분에서 막히셨나요? 숙제 1번에서 노션 예제 2번째(코드 내 예제X) 코드의 어떤 로직이 이해가 안 되시나요? stock = 0, dates = [0, 10, 15], supplies = [20, 10, 15], k = 35 일 경우, 0일과 15일에 공급량을 가져오는 게 정답(즉, 2의 리턴값)이라고 주석에 적혀있습니다. 알려주신 로직으로 해당 예제 실행 시, 3의 값이 나옵니다. while stock <= k: 위의 코드에서 같을 때도 해당 반복문을 돌도록 되어 있기 때문인데, 작은게 "stock < k" 가 아니라 "stock <= k"인 이유가 궁금합니다.
CSV, PARQUET, DELTA 파일 성능 비교하고 DELTA의 Time Travel 사용하기 Pandas vs. Spark 100M & 1B 레코드 처리 성능 비교하기 Shuffling JOIN과 Broadcast JOIN 학습하기 이 3가지 실습과정 영상을 올ㄹㅕ주시면 좋겠습니다. 예제를 통한 판다스와 스파크 성능 비교부터 실습을 어떻게 진행해야할지 막막하네요.
안녕하세요 실무에서 헥사고날을 적용 예정 중에 있습니다. 이미 DB 모델링이 되어 있고 하나의 우리 팀 시스템이 아닌 여러 팀의 시스템에서 같은 테이블을 바라보는 경우 헥사고날 적용은 어떻게 해야하는지 궁금합니다. 하나의 애그리거트로 만들 수 없는 여러 엔티티의 조합으로 조회를 할 경우, 예를 들어 백오피스에서 20개 이상의 조건과 각 조건이 여러 테이블에 나뉘어져있어 Join을 걸어야 할 경우의 도메인 모델과 리턴은 어떻게 해야하는지 궁금합니다.
분기별 매출 실적과 전년 동기 대비 증감률 문제요 1번이나 3번이나 동일한 결과값 아닌가요?: 실제 두개값 minus하니까 일치하는걸로 나오던데요.. 1번보기: SELECT YEAR, QUARTER, AMOUNT, LAG(AMOUNT) OVER (PARTITION BY QUARTER ORDER BY YEAR) as PREV_AMOUNT, ROUND((AMOUNT - LAG(AMOUNT) OVER (PARTITION BY QUARTER ORDER BY YEAR)) / LAG(AMOUNT) OVER (PARTITION BY QUARTER ORDER BY YEAR) * 100, 2) as GROWTH_RATE from SALES; 3번보기: SELECT YEAR, QUARTER, AMOUNT, LAG(AMOUNT, 4) OVER (ORDER BY YEAR, QUARTER) as PREV_AMOUNT, ROUND((AMOUNT - LAG(AMOUNT, 4) OVER (ORDER BY YEAR, QUARTER)) / LAG(AMOUNT, 4) OVER (ORDER BY YEAR, QUARTER) * 100, 2) as GROWTH_RATE FROM SALES;
설명에서 멀티코어 CPU 가 8개 있으면 한번에 16개 쓰레드를 실행할 수 있다고 말씀하시면서 설명을 진행해주셨는데요. 이전부터 궁금한게 있습니다. (제가 경험한 바로) 실무에서는 하나의 서버에 하나의 어플리케이션 (ex. 자바 웹 어플리케이션) 만 올려왔습니다. 이런 경우에는 위에서 말씀하신것처럼 웹 애플리케이션의 쓰레드들이 모든 cpu core 를 사용하게 될거라고 예상이 됩니다. 반면에 저희가 평소에 사용하는 환경 (ex. 윈도우) 에서는 하나의 유저 어플리케이션만 돌아가는게 아니라, 여러개의 유저 어플리케이션이 돌아갈텐데요. 예를 들어, intellij, chrome, 실습중인 자바 웹어플리케이션 등이 동시에 돌아가게 되면 각각의 유저 어플리케이션 내부에 존재하는 쓰레드들이 cpu 코어를 나눠쓰게 된다고 알고 있습니다. 이런 경우에는, 강좌에서 설명하신것처럼 cpu core 8개를 기준으로 최적화를 해도 사실상 제대로 최적화가 안될거 같은데 맞을까요 (= 다른 어플리케이션이 같이 돌아가니)? 그리고, cpu 코어를 사용하는 순서 (스케줄링) 는 os 에 의해서 정해지는걸로 알고 있는데요. 예를 들어, intellij (쓰레드 3개), chrome (쓰레드 5개), 웹서버 (쓰레드 50개) 라고 가정했을때 쓰레드가 많은 유저 어플리케이션이 cpu 의 사용횟수가 많을거라고 생각해도 될까요? 아니면, os 에서 유저 어플리케이션 3개에 공평하게 30% 씩 사용시간을 분배하고 이 30%의 시간을 내부에 있는 쓰레드들이 나눠쓰게 되는걸까요? 강사님 설명이 너무 좋아서 여러 방면에서 생각하다보니 질문이 많아졌습니다. 답변 미리 감사합니다 🙂
KILL -9 : "이 구성이 매우 중요하다. Job 설정을 보면, logFileManagerStep()이 먼저 실행되고, 그 다음에 mergeOutputFilesStep()이 실행되도록 .next() 메서드로 연결되어 있다. 없어도 뻔해서 이해되긴하는데,위의 예제에서 Job빈이랑 LogFileManagerStep빈(이건 일부러?) 빼먹은듯? KILL -9 : "이 구성이 매우 중요하다. 로 검색하면될거야 ------ 그리고 그냥 궁금한건데,이번강의챕터가 컨셉자체는 맘에드는데(코드랑 내용이랑 같이 스토리넣어서 말하는거) 인프런 강의 시스템상 너무 보기힘들지않아? 부록 2: 전장 구축 - Redis to MongoDB 데이터 이관 작전 환경 설정 같은거보면,나는 가로휠이 있어서 괜찮았는데 가로휠마우스가 없으면 마우스 드래그로 컨트롤하거나 키보드 화살표로 조금씩 밀어야하는데 이거 너무 보기 힘들거같아 스크롤바도 내용화면이 한페이지를 넘어가면 안보이고 그래서 다음거 스카이넷보고서인지 그런식으로 개행을 넣던가 하면될거같긴해 킬구<스카이넷 ? 다음거 원격 파티셔닝 강의 대부분 그냥 서두보고 다 스킵할거같은데, @ConditionalOnProperty로 조건부 빈생성 관리하는거 스킵되는거 아까운데 이거나 줏어가라고 마지막 부록에 넣어줄만하지않음? 나도 그냥 내용 대충 훑어만봤는데 저거하나는 건진거같아서
안녕하세요 강사님 질문을 드리고 싶은 부분이 있는데요 MSA 아키텍쳐로 개발할 때 각각의 서비스 마다 단일 배포할 수 있다는 장점이 있다고 들었는데 그러면 MSA 아키텍쳐로 개발을 진행할 때 보여주신 것 처럼 하나의 큰 프로젝트 안에 각각의 마이크로 서비스를 넣어서 만드나요? (모노레포?) 혹은 각각의 마이크로 서비스를 독립적으로 만드는건가요? (폴리레포?) 만약 둘 다 사용한다면 주로 사용하는 방식은 어떤 방식인가요?
안녕하세요. 강의 정말 잘 들었습니다. 강의를 듣다가 궁금한 점이 있어 질문 남깁니다. Member와 MemberDetail을 별도 엔티티로 분리한 기준이 궁금합니다. 관계가 1:1인 경우에는 엔티티에 너무 많은 필드가 있는 것이 아니면 하나로 관리하는 게 더 개발 편의성이 좋지 않을까? 하는 생각이 들기도 합니다 . 실제로 회원 정보 수정 시에 닉네임, 프로필 주소, 자기소개를 한 번에 변경하도록 구현되어 있어, 두 엔티티가 함께 조회/수정되는 것처럼 보입니다. 혹시 조회 성능 최적화를 위해 접근 빈도가 낮은 데이터를 지연 로딩하려는 의도인지, 아니면 회원의 본질적 속성(email, status 등)과 부가 정보(등록일시, 프로필 등)를 개념적으로 구분하기 위한 설계인지 궁금합니다. 감사합니다.