게시글
질문&답변
섹션2 ["환경 vs. 설정 vs. 구성"] 강의 자막 문의
안녕하세요 티읕이응님,예리하시네요 ㅎㅎㅎ 디자이너 님이 실수하신 것 같네요. 말씀하신 점이 맞습니다! 환경 / 구성 / 설정Environment / Configuration / Setting
- 0
- 1
- 19
질문&답변
시스템 디자인 2권이나 머신러닝에 대한 계획
안녕하세요 에반황님,좋은 질문 입니다. 아직까지는 계획에 없습니다. 제가 3권 다 보기는 했는데, 1권 이상은 특정한 산업에 있지 않는 이상 필요가 없어 보이더라구요. 하지만 필요한 자료가 있다 싶으면, 저희의 경험을 중심으로 다시 보충해보겠습니다.
- 0
- 1
- 14
질문&답변
파이썬 data insert to table
안녕하세요 hunter님,현재 코드에서는 executemany()를 사용해 Hive 테이블에 한 줄씩 데이터를 삽입하고 있습니다. 한 줄씩 삽입하는 방식(INSERT INTO VALUES)은 비효율적이며, 파일 단위로 한 번에 적재하는 것이 훨씬 빠릅니다. executemany() 대신 데이터를 CSV 또는 Parquet 파일로 저장한 후, Hive에 로드하는 방식이 더 적절합니다. 그리고 Google Sheets 데이터를 CSV로 변환하여 로드하는 것이 훨씬 빠를 수 있습니다 - get_all_values()는 전체 데이터를 한 번에 가져오므로 데이터가 많을 경우 속도가 느려집니다. 흠... 마지막으로 df.loc[i]를 사용한 반복문은 매우 비효율적이며, 성능을 크게 저하시킵니다. itertuples()을 사용하면 속도가 훨씬 빨라집니다.data = [ (row.a, row.b, row.v, row.d, row.e, row.f, row.g, row.h, row.i) for row in df_hc_list.itertuples(index=False) ]근데, 제가 하이브를 여기서 가르쳐드렸나요? 기억이...
- 0
- 2
- 24
질문&답변
multi node로 띄우는 상황에서 궁금증이 생겨 질문을 남깁니다
안녕하세요 가보자!!님,Docker Compose를 프로덕션 수준으로 구성하려니 해야 할 일이 많네요. Nginx를 설정하여 로드 밸런싱(Client acess)을 구현해야 하고, 인증서 관련 문제(TLS 적용, RBAC 활용, 인증서 개별 적용)도 해결해야 하며, 각 노드별 역할(Master, Data, Ingest, Coordinating Node)도 명확히 지정해야 할 것 같습니다. 또한, 보다 많은 컨테이너가 필요할 것으로 보이네요.아쉽지만 Compose로는 완벽한 Fault Tolerance를 만들기는 힘들어 보입니다.
- 0
- 4
- 18
질문&답변
동시성 관련되어 궁금증이 생겨 질문을 남깁니다
안녕하세요 가보자!!님,네, 그렇습니다.특정 시점에서 조회한 seq no와 primary term을 유지하고, 업데이트 요청 시 함께 보내서 변경된 데이터가 없을 때만 업데이트가 적용되도록 보장해야 합니다.
- 0
- 1
- 15
질문&답변
multi node로 띄우는 상황에서 궁금증이 생겨 질문을 남깁니다
안녕하세요 가보자!!님docker-compose파일을 보면 es01에만 포트 포워딩이 되어있는데! 클라이언트와는 es01만 통신을 하는건가요? primary shard는 es02, es03도 될수 있는거 같아서 질문을 남깁니다.-> 네, 현재 docker-compose.yml 파일에서 es01에만 포트 포워딩이 설정되어 있습니다.# Line 92 ports: - ${ES_PORT}:9200즉, 외부 클라이언트(예: Kibana, 애플리케이션)에서 직접 접근할 수 있는 유일한 노드는 es01입니다.es02와 es03은 클러스터에 참여하지만, 외부에서는 접근할 수 없습니다. 그러나 Primary Shard는 es02, es03에서도 생성될 수 있습니다.Elasticsearch의 기본적인 샤드 할당 방식에 따라 Primary 및 Replica Shard는 모든 노드에서 배치될 수 있기 때문입니다. es01노드를 shut down시키면 service unavailable이 되는데! 이렇게 되면 진정한 의미에서의 Fault Tolerance가 안되는거 아닌가 하는 생각이들어서 질문을 남깁니다.(es01이 shut down되면 시간이 지나도 복구가 안되는 상황입니다..) -> es01을 종료했을 때 클러스터가 복구되지 않는 이유는, es01이 유일한 마스터 노드로 동작하고 있기 때문입니다.현재 설정에서 cluster.initial_master_nodes에 es01, es02, es03이 포함되어 있습니다.- cluster.initial_master_nodes=es01,es02,es03이는 클러스터 초기 부팅 시 es01, es02, es03 중 어느 하나가 마스터로 선출될 수 있도록 보장하는 설정입니다. 그러나, cluster.initial_master_nodes는 클러스터를 처음 시작할 때만 사용되고 이후에는 새로운 마스터 노드를 자동으로 선출하지 않습니다.즉, 클러스터가 실행된 이후에 es01이 마스터 노드가 되었고, es01이 죽으면 클러스터는 새로운 마스터를 자동으로 선출하지 못하게 됩니다.아마 es02와 es03에 - node.roles=master,data 를 넣으시면 아마 마스터 후보에 오를 거 같은데, 제가 한번 해봐야 되겠네요.
- 0
- 4
- 18
질문&답변
0.0.0.0:8000 접속이 안됩니다
안녕하세요 ansghltjd9님,이게 운영체제에 따라서 다른데, Windows에서는 이런 문제가 있더라구요. 우선 여러가지 이유가 있을 듯 한데요? 제가 생각나는 것만 몇가지 적어보겠습니다.Firewall이나 Network configuration 문제일 가능성이 있는데, Firewall룰이 0.0.0.0을 막아 놓을 경우가 있습니다.방화벽에서 예외 규칙을 추가해줘야 합니다.방화벽 예외 규칙 추가 방법제어판 → Windows Defender 방화벽 → 고급 설정으로 이동왼쪽에서 인바운드 규칙 선택 후 새 규칙 만들기포트 선택 후 다음특정 로컬 포트에 8000 입력 후 다음연결 허용 선택 후 다음프로필(도메인, 개인, 공용) 선택 후 다음규칙 이름을 정하고 마침Django Settings.py에 ALLOWED_HOSTS가 있는데 ['*']로 해보시겠어요?Hosts file문제가 있을 수 있는데, 맥이나 유닉스 시스템 같은 경우 /etc/hosts 나 윈도우에서는 C:\Windows\System32\drivers\etc\hosts 를 확인해 보시겠어요?C:\Windows\System32\drivers\etc\hosts 파일을 열어서 0.0.0.0이 특정 도메인과 매핑되어 있는지 확인하세요. 기본적으로 0.0.0.0은 어떤 특정 도메인에 연결되면 안 됩니다.OS 자체에서 막아놓을 가능성도 있습니다.마지막으로 다른 브라우져를 한번 사용해 보시겠어요?
- 0
- 2
- 28
질문&답변
rdd, dataframe, spark sql 각각 언제 사용할까요?
안녕하세요 km9311님,Spark 2 버전에서는 주로 RDD를 활용했지만, Python에서 RDD를 사용할 경우 성능 저하 문제가 발생할 수 있습니다. 따라서 현재 PySpark에서는 DataFrame을 사용하여 데이터를 테이블 형식으로 변환한 후 SQL을 사용하는 방식이 권장됩니다.
- 0
- 2
- 38
질문&답변
수업노트 github 주소가 404가 많아요
안녕하세요 김샬롬님,강의 자료는 "강의 코드 자료"에서 보시면 다운 받으실 수 있습니다. Github이 프라이빗으로 바뀌어서 그런 거 같네요.
- 0
- 1
- 25
질문&답변
gradle build 오류 문의
안녕하세요 kkangssil님,Eclipse에서는 정상적으로 빌드가 동작하지만 CLI에서 실패하는 경우, CLI의 환경 설정 예를들면, Java 경로, Gradle 버전, 캐시 등이 원인일 수 있습니다.java -version하셔서 Gradle과 호환되는 Java 버전을 사용 중인지 확인하시거나, gradle clean 그리고 gradle build 하셔서 캐시를 정리해 보시는 방법도 좋은 방법인 것 같습니다.
- 0
- 2
- 65