묻고 답해요
130만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실리콘밸리 엔지니어에게 배우는 파이썬 아파치 스파크
Spark Structured Streaming Gracefully shutdown 질문
안녕하세요. 좋은 강의 재밌게 수강하고 있습니다.Spark Structured Streaming Fault Tolerance 강의에서 아래와 같이 gracefully 하게 스트리밍을 종료할 수 있다고 말씀 주신 부분에서 질문이 있습니다..config("spark.streaming.stopGracefullyOnShutdown", "true")현재 업무에서 Spark Streaming을 사용했을 때 아래 코드와 같이 파라미터에 명확하게 stopGracefully 이 존재하여서 이를 이용하여 스트리밍을 안전하게 종료했습니다.def stop(stopSparkContext: Boolean, stopGracefully: Boolean): Unit 하지만, Spark Strucutred Streaming으로 전환했을 때 이러한 파라미터가 존재하지 않아서, 아래 링크를 참고하여 직접 구현하였습니다. https://stackoverflow.com/questions/45717433/stop-structured-streaming-query-gracefully 강의에서 알려주신 것처럼 아래와 같이 사용하면 동일하게 Structured Streaming도 Gracefully하게 종료할 수 있다고 이해하면 될까요? .config("spark.streaming.stopGracefullyOnShutdown", "true")Gracefully 스트리밍을 종료 한다라는 의미가 현재 처리 중인 마이크로 배치까지는 모두 다 처리 및 체크포인트 작성까지 한 후 스트리밍 종료로 이해하면 될까요?마지막으로, DR 같이 스트리밍 종료가 아닌 클러스터가 모두 비정상적으로 종료되었을 경우 Gracefully 옵션이 적용되지 않는 케이스를 경험 했는데, 이런한 케이스는 현업에서 주로 어떻게 대처하고 있을까요?(예를 들어 체크 포인트 등이 불일치하게 스트리밍이 종료)감사합니다.
-
미해결빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
[HDFS] Data integrity; checksum 관련 질문
안녕하세요. 현재 빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술 수업을 수강 중인 학생입니다. HDFS의 Data integrity 부분의 강의를 듣다 궁금한 점이 생겨서 질문 올립니다.checksum은 transmission 과정에서 발생하는 에러로 인해 data가 corrupt 되었는지를 destination에서 판단하기 위해 사용한다고 이해했습니다.근데 "transmission 과정에서 data를 corrupt 시킬만한 에러가 발생했다면 checksum 값도 함께 corrupt될 수도 있는거 아닌가"라는 궁금증이 생겼습니다. 제가 궁금한 점은 아래와 같이 2가지 입니다:1. transmission 과정 중 checksum 값도 corrupt될 가능성이 있는지만약 그렇다면 그런 경우를 대비한 별도의 메커니즘이 존재하는지 답변에 미리 감사드립니다.
-
미해결빅데이터 클러스터 구축 패키지; 성공을 향한 로드맵
zookeeper security group 에러
안녕하세요! zookeeper start 실행시 자꾸 connection refused 에러가 나서 문의드립니다.... ㅠㅠ 강의에 나온 대로 security group 설정했고 ping test까지 해봤는데도 잘되는데 에러가 발생하네요.... standalone 모드로는 돌아가는 것으로 보아 zookeeper 설치는 제대로 된 것 같은데 왜 통신이 안될까요
-
해결됨빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
안녕하세요. 강의 연장 신청 문의드립니다
안녕하세요 교수님현재 spark advanced 까지 진도 나갔으나 아쉽게도 수강기한이 거의 끝나서나머지 강의 수강을 위해 구글폼으로 연장 신청했습니다강의 연장 가능할까요?
-
해결됨빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
jar input output_notice 문의
강사님.. 스스로 문제 해결해가며 여기까지 왔는데.. 여기는 해결이 안되 문의 드립니다..ㅠ 6:24초 영상 처럼 output_notice 디렉토리에 [실습2]에서 했던 input 파일을 맵 리듀스가 되어야 하는데 저 화면에서 30분동안 멈춰 있다 겨우 동작 됐는데 정상 동작 되지 않은거 같습니다 bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.6.jar wordcount input output_notice bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.6.jar wordcount input output_notice 24/04/23 14:31:51 INFO client.RMProxy: Connecting to ResourceManager at /0.0.0.0:8032 24/04/23 14:31:52 INFO input.FileInputFormat: Total input paths to process : 1 24/04/23 14:31:52 INFO mapreduce.JobSubmitter: number of splits:1 24/04/23 14:31:52 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1713835952413_0002 24/04/23 14:31:52 INFO impl.YarnClientImpl: Submitted application application_1713835952413_0002 24/04/23 14:31:52 INFO mapreduce.Job: The url to track the job: http://ubuntu-virtual-machine:8088/proxy/application_1713835952413_0002/ 24/04/23 14:31:52 INFO mapreduce.Job: Running job: job_1713835952413_0002 24/04/23 14:31:57 INFO mapreduce.Job: Job job_1713835952413_0002 running in uber mode : false 24/04/23 14:31:57 INFO mapreduce.Job: map 0% reduce 0% 24/04/23 14:32:01 INFO mapreduce.Job: map 100% reduce 0%bin/hadoop fs -ls output_notice Found 1 items drwxr-xr-x - ubuntu supergroup 0 2024-04-23 14:31 output_notice/_temporary etc/hadoop/yarn-site.xml <configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.nodemanager.aux-services.mapreduce_shuffle.class</name> <value>org.apache.hadoop.mapred.ShuffleHandler</value> </property> </configuration> etc/hadoop/mapred-site.xml <configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
-
해결됨빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
안녕하세요 강의 연장문의
안녕하세요 강의가 무제한인줄 알고 구매했어요..알고보니 강의가 3개월이여서 인프런에 환불 요청했더니 안된다고, 강사님께 3개월 연장부탁해보라고 하네요..혹시 3개월 연장 가능할까요?
-
미해결실리콘밸리 엔지니어에게 배우는 파이썬 아파치 스파크
PySpark Runtime Architecture 내용 중 질문이 있습니다!
Spark Architecture(스파크 아키텍처) 소개 강의 내용 중 뒷 단에 있는 node에도 JVM이 있는 걸로 보이는데 Application Master(in Worker Node) 안에 있는 JVM과 오른쪽 노드들 안에 있는 JVM간의 차이점과 역할이 궁금합니다!
-
해결됨빅데이터 클러스터 구축 패키지; 성공을 향한 로드맵
ssh master02 입력시 permission denied 에러
안녕하세요ssh master02 입력시 permission denied 에러가 발생했습니다. ㅠㅠ 이전 강의에서 정상적으로 SSH 등록했고 AMI 이미지 만들고 launch instance까지 완료했는데 오류가 발생했는데요. 해결 방법이 궁금합니다
-
해결됨빅데이터 클러스터 구축 패키지; 성공을 향한 로드맵
vim etc/hosts 질문
AMI 생성 후에 instance를 각각 4개씩 launch를 했는데요영상 속 이미지와 다르게 sudo vim etc/hosts를 해도 빈 파일이 열립니다.ip 리스트를 작성하고 저장하려고 하니 can't open 에러가 발생하고요. 등록한 ip 리스트를 이용해서 노드 간 통신을 하는 것으로 보여지는데요.무시하고 진행해도 되는건가요?
-
해결됨빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
aws ubuntu 22.04 크롬 드라이브 설치 및 경로 확인
wget 설치 후 wget 으로 2023_BIGDATA 디렉토리에 크롬.deb 파일 내려 받고 dpkg -i 명령어로 설치 하여 google-chrome --version 이 나왔습니다 chromedriver.Chrome('chromedriver') 라는 파일은 어디에서 찾을 수 있을까요? driver = webdriver.Chrome("/home/ubuntu/2023_BIGDATA/google-chrome-stable_current_amd64.deb" pip install wget sudo wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb # google-chrome-stable_current_amd64.deb sudo dpkg -i google-chrome-stable_current_amd64.deb google-chrome --version Google Chrome 123.0.6312.105
-
해결됨빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
섹션2 실습1 코드 공유 문의..
안녕하세요 강사님.. 실습 1번은 현재 저로서는 해석이 불가능하여해석은 나중에 하기로 하고일단 쳐보기만 열심히 쳐봤는데 역시나 안되네요..코드 공유좀 부탁 드릴 수 있을까요.. 죄송합니다from bs4 import BeautifulSoup from urllib.request import * from urllib.parse import * from os import makedirs import os.path, time, re proc_files = {} def enum_links(html, base): soup = BeautifulSoup(html, "html.parser") links = soup.select("link[rel='stylesheet']") # CSS links += soup.select("a[href]") # link result =[] for a in links : href = a.attrs['href'] url = urljoin(base, href) result.append(url) return result def download_file(url): o = urlparse(url) savepath = "./" + o.netloc + o.path if re.search(r"/$", savepath): savepath += "index.html" savedir = os.path.dirname(savepath) if os.path.exists(savepath): return savepath if not os.path.exists(savedir): print("mkdir=", savedir) makedirs(savedir) try: print("download=", url) urlretrieve(url, savepath) # url 다운 받고 파일 이름은 savepath로 저장 time.sleep(1) return savepath except: print("다운 실패", url) return None def analyze_html(url, root_url): savepath = download_file(url) if savepath is None: return if savepath is proc_files: return proc_files[savepath] = True print('analyze_html', url) html =open(savepath, "r", encoding="utf-8").read() links = enum_links(html, url) for link_url in links: if link_url.find(root_url) != 0: if not re.search(r".css$", link_url): continue if re.search(r".(html|htm)$", link_url): analyze_html(link_url, root_url) continue download_file(link_url) if __name__ == "__main__": url = "https://docs.python.org/3.5/library/" analyze_html(url, url)
-
해결됨빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
Beautiful Soup 실습 출력 문의
일단 따라 쳐봤는데아래의 결과 처럼 나오는게 맞을까요? html 변수에 </ul>이 있는데 혹시 앞에 <ul>은 없어도 동작 되나요? from bs4 import BeautifulSoup html = """ <html><body> <div id="project"> <h1 id="title">BIG DATA PROGRAMMING</h1> <p id='body'>DATA ANLYSIS AND SCRENCE</p> <p>DATA ACQUISTION PART1</p> </ul> <ul class="items"> <li>CRAWLING</li> <li>SCRAPPING</li> <li>HYBRID WAY</li> </div> </body></html> """ soup = BeautifulSoup(html, 'html.parser') h1 = soup.html.body.h1 p1 = soup.html.body.p p2 = p1.next_sibling.next_sibling print("h1 = " + h1.string) print("p = " + p1.string) print("p = " + p2.string) title = soup.find(id="title") body = soup.find(id="body") print("#title=" + title.string) print("#body=" + body.string) h1 = soup.select_one("div#project > h1").string print("h1 =", h1) li_list = soup.select("div#project > ul.items > li") for li in li_list: print("li =", li.string) 결과python3 2_bs4_temp.py h1 = BIG DATA PROGRAMMING p = DATA ANLYSIS AND SCRENCE p = DATA ACQUISTION PART1 #title=BIG DATA PROGRAMMING #body=DATA ANLYSIS AND SCRENCE h1 = BIG DATA PROGRAMMING li = CRAWLING li = SCRAPPING li = HYBRID WAY
-
해결됨빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
venv 환경 패키지 설치 방법 문의
requests 패키지를 설치하려 하는데 안됩니다.혹시 venv 환경에서 패키지 설치하는 방법은 좀 다른가요? (venv2023) ubuntu@ip-172-31-12-30:~/2023_BIGDATA$ sudo pip install requests Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (2.31.0)Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests) (3.3.2)Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests) (3.6)Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests) (2.2.1)Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests) (2024.2.2)WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
-
미해결실리콘밸리 엔지니어에게 배우는 파이썬 아파치 스파크
docker 설치 이후에 터미널 여는 부분에서 막혔습니다
1:40 쯤 터미널 열어서 하시는데터미널 탭이 안보입니다.어떻게 해야하나요?윈도우 운영체제 입니다
-
해결됨빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
가상머신 설치부터 안됩니다.
안녕하세요Jupyter terminal 오픈하고, crawling 실습하기 위한 준비부터 문제가 발생했어요 ㅜ폴더까지 생성을 했는데, virtualenv 활성화하기 위해 source이라는 명령어가 실행이 되지 않습니다. jupyter notebook workspace도 실행되지 않고...vim 명령어도 인식 하지 못합니다. 빠른 속도에 추가 설명이 없어서, 어디서 어떻게 실행을 하는지 제가 이해하지 못한것 같습니다. visual studio code에서도 실행을 해봤는데, 같은 부분에 계속 예러가 납니다. 도와주세요. 제가 어떻게 하면 되나요?
-
미해결실리콘밸리 엔지니어에게 배우는 파이썬 아파치 스파크
app-<timestamp>-<executor_id> 폴더가 spark-events 내부에 생기게 하고 싶습니다.
안녕하세요? 강의 자료로 주신 docker-compose 파일을 바탕으로 실습을 하고 있습니다. 프로그램을 실행할 때 마다 app-<timestamp>-<executor_id> 형식의 폴더가 docker-compose.yml가 위치한 곳과 같은 곳에 생기는데, 저는 spark-events 내부에만 저장하고 싶은데 어떤 설정을 해야 하는지 잘 모르겠습니다... spark-defaults.confspark.eventLog.enabled true spark.eventLog.dir file:/tmp/spark-events spark.history.fs.logDirectory file:/tmp/spark-events 강의 자료에 나온 docker-compose.yml 중 spark의 volumes와 enviroment 부분 volumes: - .:/opt/bitnami/spark/work - ./spark_conf/log4j2.properties:/opt/bitnami/spark/conf/log4j2.properties - ./spark_conf/spark-defaults.conf:/opt/bitnami/spark/conf/spark-defaults.conf - ./spark-events:/tmp/spark-events environment: - SPARK_MODE=master - SPARK_RPC_AUTHENTICATION_ENABLED=no - SPARK_RPC_ENCRYPTION_ENABLED=no - SPARK_LOCAL_STORAGE_ENCRYPTION_ENABLED=no - SPARK_SSL_ENABLED=no - SPARK_USER=spark spark 프로그램 실행시 app 폴더가 생기는 사진
-
해결됨빅데이터 클러스터 구축 패키지; 성공을 향한 로드맵
섹션 9. Codelab Guidance 재생 오류
안녕하세요. 섹션 9. Godelab Guidance 영상만 재생이 되지 않는데 확인 부탁드립니다. (다른 영상은 재생 잘 됩니다.)감사합니다.
-
미해결실리콘밸리 엔지니어에게 배우는 파이썬 아파치 스파크
pyspark.SparkContext 실행 오류 관련 질문
안녕하세요. 실습 환경 구축 중 다음과 같은 에러 메세지가 발생합니다. 구글링을 통해 Java설치 및 JAVA_HOME 설정을 해줬는데 해결이 되지 않는 것 같습니다. 도움 부탁드립니다ㅠ
-
해결됨빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
Replica Placement 질문입니다.
4분 50초 경" rack 전체가 뻗는것 보다 노드 하나 뻗는 확률이 더 올라간다? "라고 해주셨는데 잘 이해가 가지 않아서 질문드립니다.제가 이해한 바로는결국 신뢰성과 가용성 둘중 하나는 포기를 해야하고 그 둘 사이의 타협적 결정을 잘 해야 한다.가용성을 위해 단일 노드에 모든 복제본을 둘 경우 속도는 빠르지만 신뢰성 보장이 어렵고 장애 대응이 불가능 하다.신뢰성을 위해 복제본을 모든 데이터 센터 혹은 많은 가상 노드에 복제해둘 경우 신뢰성은 극한으로 올라가지만 데이터를 가져오는데 시간이 너무 오래결려 가용성이 떨어진다.그래서 그 둘 사이의 타협점을 구한 것이 Replica Placement다.위처럼 이해하면 될까요??
-
미해결스파크 머신러닝 완벽 가이드 - Part 1
MLOps 관련 MLFLow 및 Databricks 모델 서빙
안녕하세요 강사님, 좋은 강의 감사드립니다! 요즘 MLOps 관련 model deploy 및 serving 하는 것이 더 중요해지고 있는데 관련 강의를 준비하고 계신지 궁금합니다. 처음에는 이 강의에 추가로 강의를 올리시는 것도 계획 중이신지 여쭙고 싶었으나, 해당 강의와 model을 deploy하고 serving 하는 것은 강의의 범위에서 벗어나는 것도 같네요 ㅎㅎ Databricks에서도 MLFlow 이용해서 experiment를 하는 것이 꽤 잘 되어 있는 것 같던데 혹시라도 관련 강의 준비하고 계시다면 너무 기대됩니다!