Kafka Cluster 강의 약 11분 38초 쯤에서 Broker 2(topic 1, partition 2)에 장애가 발생하면, 다른 정상 Broker에서 Leader를 재선출 한다고 하셨는데, 그렇다면 해당 그림의 경우 Broker 1의 topic 1의 Leader가 partition 1에서 partition 2로 바뀌는 것인가요? 기존에 정상적으로 있던 Broker 1의 topic 1의 partition 1은 Leader의 자격을 잃는 것인가요? 다시 말씀드리면, 정상 Broker에서 Leader를 재선출하면, 기존 토픽에 있는 Leader Partition이 어떻게 되는지 궁금합니다..!
작업형2 모의문제3에서 xgb모델을 사용할 때 max_depth 기본 설정이 3으로 되어 있어서 max_depth=3을 코드에 넣었을 때와 넣지 않았을 때가 값이 똑같아야 한다고 설명해주셨는데 저는 값이 다르게 나와요. 왜 다르게 나올까요.. 그리고 머신러닝 강의를 따라하다보면 결과 값이 종종 영상과 다르게 나오는 경우가 있는데 코드를 똑같이 작성해도 값이 다를 수 있나요? from xgboost import XGBClassifier xgb=XGBClassifier(random_state=2022) xgb.fit(X_tr,y_tr) pred=xgb.predict(X_val) pred_proba=xgb.predict_proba(X_val) print(roc_auc_score(y_val, pred_proba[:,1])) print(f1_score(y_val, pred)) print(accuracy_score(y_val, pred)) ->0.9192546583850931 0.8444444444444444 0.8108108108108109 from xgboost import XGBClassifier xgb=XGBClassifier(random_state=2022, max_depth=3) xgb.fit(X_tr,y_tr) pred=xgb.predict(X_val) pred_proba=xgb.predict_proba(X_val) print(roc_auc_score(y_val, pred_proba[:,1])) print(f1_score(y_val, pred)) print(accuracy_score(y_val, pred)) -> 0.8975155279503105 0.8444444444444444 0.8108108108108109
강사님 안녕하세요. 강의 목차에는 없지만 SpringBoot + Kotlin 환경에서 Redis 캐싱 사용 관련되서도 여쭤봐도 될까요? Kotlin에선 직렬화 + 역직렬화 관련해서 자바 + lombok를 사용했던 방법과 살짝쿵 다르게 써야하더라구요.. 여러 방안을 생각중인데 어떤 방법이 Best Practice인지 궁금해서욥 감사합니다.
for col in cols le = labelencoder() C_Train[col] = le.fit_transform(C_train[col]) 여기에서요. col 이라는 피처는 for col 반복문 에서 처음 생겼는데 C_train[col] 변수에 담을 transform(c_train[col])의 피처 col은 어디서 생겨난지 모르겟어서요.. 반복문 처음에 col로 피처를 생성한거를 c_train[col]이라고 명시하는 순간 col 칼럼이 생기면서 그 값을 알아서 가져오는 건가요???
안녕하세요. 강의 열심히 듣고 있습니다. Hot-article 관련 테스트 코드 중, verify 메소드에 대해 잘 몰라서 하는 질문일수도 있겠으나 헷갈리어 질문 드립니다. HotArticleServiceTest.java 코드를 작성중에 @Test void handleEventIfScoreUpdatableEventTest() { // given Event event = mock(Event.class); given(event.getType()).willReturn(mock(EventType.class)); EventHandler eventHandler = mock(EventHandler.class); given(eventHandler.supports(event)).willReturn(true); given(eventHandlers.stream()).willReturn(Stream.of(eventHandler)); // when hotArticleService.handleEvent(event); // then verify(eventHandler, never()).handle(event); verify(hotArticleScoreUpdater).update(event, eventHandler); } 위의 코드에서, verify(eventHanler, never()).handle(event); 로 검증하는 부분이 왜 never() 가 되는걸까요? 강의중에 eventHandler 가 바로 불리지 않는다고 말씀하시긴 하셨는데, HotArticleService.java 의 handleEvent() 메소드 안에서 hotArticleScoreUpdater.update(event, eventHandler) 를 호출하면 update() 에서 전달한 eventHandler 의 handle() 메소드를 결국에는 사용하게 되지 않나요? verify가 외부클래스인 HotArticleScoreUpdater의 메소드에서 사용하는거까지는 검지하지 못하기 때문일까요?
안녕하세요. 「앞서 Airflow 예제를 개선해보자 (v3) - 실습 편」 강의 수강 중 궁금한 점이 있어 문의드립니다. DAG 실행 시 생성되는 tmp 파일이 제대로 생성되었는지 확인하고 싶어, CLI 환경이 아닌 웹 UI상에서 확인할 수 있는 방법이 있는지 알아보던 중 궁금한 점이 생겼습니다. /opt/airflow 디렉토리 구조는 CLI 환경에서만 확인 가능한 것인지, 웹 UI상에서는 해당 경로의 파일 구조를 직접 확인할 수 없는 것인지 궁금합니다. 추가로 확인이 가능한 부분이 있다면 현업에서는 어떻게 주로 확인하는지도 궁금합니다!
Next.js 완벽 마스터 (v15): 노션 기반 개발자 블로그 만들기 (with 커서AI)
안녕하세요! 먼저 좋은 강의 감사합니다. 중간쯤, 전체 데이터를 조회해서 Client 측에서 필터링 해서 사용하는게 아닌, 서버로부터 이미 필터링 된 데이터를 받아오도록 검색 api 를 수정한 내용입니다. 이 부분이 클라이언트 사이드 -> 서버 사이드로 변경하였다, 라는 내용을 설명주셨는데, 랜더링과는 전혀 관계 없는 데이터 필터링 주체를 말씀 하시 내용이라고 생각되는데 맞게 이해했는지 궁금합니다. 즉, Notion = 서버, Next.js=클라이언트 관점으로 애기 하신게 맞는지 궁금합니다.
원래 원핫인코딩은 범주형 변수에만 적용가능하지 않나요? 강사님께서는 굳이 수치형과 범주형을 나누지 않고 train = pd.get_dummies(train), test = pd.get_dummies(test)하셨는데 이렇게 굳이 나누지 않고 원핫인코딩을 적용해도 괜찮나요?
안녕하세요! 3주차 강의 중 3-9까지 수강하던 중 궁금한 점이 생겨 질문드립니다. 강의에서는 새로운 테이블을 만들고 배치를 적용하여 쿼리 실행 속도를 향상시키는 방법을 설명해주셨는데, 제가 듣기로 이직 준비를 하면서 "A안과 B안이 있었는데, 그 중 B안이 더 적합한 이유는 ~였다"는 식으로 여러 해결책을 비교하고 선택한 근거를 설명하는 것이 좋다 는 조언을 자주 접했습니다. 그런데 이외에도 쿼리 성능을 튜닝하는 방법은 더 많을 거 같은데, 실무에서 그 방법들을 모두 비교한 뒤 선택하는 것이 현실적으로 쉽지 않을 것 같다는 생각이 들어서요.. 정리하자면 면접 자리에서 "왜 다른 방법은 고려하지 않았나요?"라고 질문이 들어올 수 있는데 이를 어떻게 준비해야 할지 궁금합니다. 실무나 면접에서 성능 개선 경험을 어필할 때, 모든 방안을 다 시도해본 것처럼 설명해야 할까요? 아니면, 제가 시도한 A안 중심으로 왜 그 방식이 효과적이었는지를 설명하고, 다른 방식도 있었다는 정도만 언급해도 괜찮을까요? 앞으로 성능 개선을 학습하고 경험을 쌓아갈 때 어떤 관점에서 문제를 접근하고 정리하면 좋을지도 함께 조언 주시면 감사하겠습니다.
2주차 끝 숙제 중 링크드리스트의 끝에서 k번째 값 출력하기 문제를 처음에 먼저 혼자 풀어볼 땐 링크드리스트를 순회하면서 각 노드를 따로 생성한 배열에 담고 return 할 땐 -k 인덱스로 끝에서 k번째 값을 가져오도록 해봤습니다. 답은 나오긴 하는데 혹시 이런 식으로 풀어도 되나요?? cur = self.head arr = [] while cur is not None: arr.append(cur) cur = cur.next return arr[-k]
강의를 만들어주셔서 감사합니다. 몇가지 질문이 있습니다. Frontend와 Backend폴더를 만든이유가 협업과 소스코드관리를 위한것이라고 생각합니다. 그런데 node-modules를 Frontend와 Backend에 각각 설치하신 이유가 있으실까요? company-website에 설치해서 두곳다 이용하는방법도 있을것같은데 Frontend와 Backend를 따로 설치하신이유가 궁금합니다. 깃허브에는 node-modules가 저장되게 하지 않았는데요 그러면 현재 사용하는 노트북이 아닌 다른 노트북이나 데스크톱에서 현재 개발한것을 이어서하고싶을 경우 Ch0-3과Ch0-4의 설치를 다시 해주면되나요? 본강의를 듣고 저만의 웹페이지를 만드는게 목표인데 react에 대해 찾아보다가 Create React App(CRA)로 만드는법과 Vite, Next.js로 만드는방법이 있었습니다. 이중 Vite를 고른 이유가 있을까요? 빠르다는 장점으로 선택하신건가요? 선택이유가 궁금합니다.
캐글 이야기를 많이 하시고 저도 데이터 분석가라면 캐글에 친숙해지고 캐글 컴페티션을 잘해야 한다고 생각하는데요 캐글이 전부 영어로 되어있고 페이지 번역이 되긴하지만 실제 노트북에서 모델을 돌리는 과정이나 튜토리얼안의 스크립트나 코멘트들은 페이지번역도 안되는 문제가 있더라구요 어떻게 공부 하셨는지가 궁금합니다. 영어실력부터 쌓아야 하는건가요? 데이콘이라는 한국 사이트가 있긴하지만 대부분 유료화 되어있고 혹시 영어 원문 그대로 보셨는지 아니면 다른 방법이 있으셨는지도 궁금합니다.
안녕하세요 강사님, 강의 잘 듣고 있습니다. 혹시 슬라이드 형태로 공유 주시는 자료를 별도 pdf나 파일로 업로드 해주실 수 있으실지 문의드립니다. e.g.) 섹션 5. [작업형2] 머신러닝 및 평가지표 - 머신러닝 프로세스 매번 일부 슬라이드를 스크린샷 해서 보고 있어 살짝 불편합니다. 혹시 가능할지 확인해주시면 감사하겠습니다 :)
안녕하세요 좋은 강의 감사드립니다~ 게시글 목록 조회시 select * from article where board_id = 1 order by article_id desc limit 30 offset 1499970; 1.여기 쿼리문에서 where 절이 먼저 실행되어 (board_id, article_id) 생성된 secondary Index 에서 board_id = 1 인 데이터들을 찾아서 2.어차피 article_id 도 정렬이 되어 있으니 이 부분에서 offset 을 순차적으로 skip 하면서 결국에 마지막에 3.select * 문을 수행하는게 아닌가요? 2번 과정에서 order by article_id 를 위해 clusterd Index 에서 데이터를 조회하는 과정이 추가되나요? > 게시글 목록 API - 페이지 번호 기반 - N번 페이지, M개 게시글 - 설계 > 20:07 마지막에 최종적으로 select * 문을 조회할때만 clusterd Index 에서 데이터를 조회하는거 아닌가요? 왜냐하면 이미 secondary Index 에서 article_id 가 정렬되어 있기 때문에 그냥 skip 하고 마지막에만 clusterd Index 에서 데이터를 조회할 것 같습니다.