묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결15일간의 빅데이터 파일럿 프로젝트
데이터 저장 공간 관련 문의 드립니다.
안녕하세요 하둡 에코시스템은 여러가지 소프트웨어로 구성이 되어 있는거 같은데요기존 시스템의 경우 데이터가 저장되는 공간은 DB로만 보면 되었던거 같은데하둡에서는 수집된 데이터가 저장되는 공간이 HDFS, HIVE, Hbase 등 여러공간에 다 저장이 되어 있다고 봐야 하나요?그럼 컴플라이언스 관점에서 저장시 암호화 요건을 갖추려면 모든 저장공간에 암호화한 상태로 보관을 해야 하는건지 문의 드립니다.
-
미해결15일간의 빅데이터 파일럿 프로젝트
storm topology 배포 에러
안녕하세요.storm topology 배포 중 -bash: storm: command not found에러가 발생했습니다.storm 설치와 service running 상태를 확인하였고, 환경 변수 세팅은 문제없이 했는데 위와 같은 메세지가 출력되었습니다.제가 겪은 프롬프트를 캡쳐해서 첨부하겠습니다.감사합니다.
-
미해결15일간의 빅데이터 파일럿 프로젝트
외부 네트워크 설정 및 클러스터
안녕하세요.친절히 잘 알려주셔서, 감사히 강의를 잘 듣고 있습니다.또, 강의를 듣고, 매일 복습을 하며, 바쁜 날을 보내고 있습니다.맨 처음에 CentOS를 설치하고, VM를 세팅하는 과정에서 호스트 전용 네트워크 정보에 192.168.56.xxx와 같은 로컬 네트워크 IP를 입력하였던 것으로 기억합니다.제가 문의 드리고 싶은 부분은 만약 PC-A와 PC-B가 있을 때,PC-A에 server01, server02를 구축하고, PC-B에서 putty를 이용해서 원격 접근을 하려고 할 때, 단순히 로컬 네트워크 IP를 외부 네트워크 IP로만 변경해서 사용하면 되는 것인지, 만약, 그렇지 않다면, 추가적으로 어떤 설정을 해야하는지 여쭙고 싶습니다.이와 관련된 자료의 링크를 남겨주시면 감사하겠습니다.또한, 두번째 질문으로, 클러스터란 다수의 컴퓨터 서버를 모아 놓은 것으로 알고 있습니다.저는 현재 저사양 컴퓨터 기준으로, server01, server02를 Cluster-1로 제어하고 있는데요. 실제 실무에서도, 다수의 server를 오직 하나의 Cluster로만 그룹하여 사용하는지, 그게 아니라면, Cluster로 그룹하는 기준은 무엇인지 궁금합니다.감사합니다.
-
해결됨15일간의 빅데이터 파일럿 프로젝트
gcc, tcl 설치 에러
안녕하세요 "4.실시간 적재 파일럿 실행 2단계 03 - Redis 설치 " 강의 중, gcc와 tcl 설치 도중에 에러가 발생해서 질문 드립니다. $ yum install -y gcc*해당 에러가 url 변경으로, 에러가 발생해서 echo "https://vault.centos.org/6.10/os/x86_64/" > /var/cache/yum/x86_64/6/base/mirrorlist.txt echo "http://vault.centos.org/6.10/extras/x86_64/" > /var/cache/yum/x86_64/6/extras/mirrorlist.txt echo "http://vault.centos.org/6.10/updates/x86_64/" > /var/cache/yum/x86_64/6/updates/mirrorlist.txt 로 변경하여 설치를 시도했습니다.하지만 아래 사진과 같이 여전히 gcc가 설치되지 않음을 확인하였습니다. 그리고, tcl에 대해서도 설치 과정에서 아래 사진과 같이 에러가 발생했습니다. 이 문제에 대한 해결 방법을 알려주시면 감사하겠습니다.위 사진에 대한 내용도 아래에 작성해놓겠습니다. [root@server02 ~]# echo "https://vault.centos.org/6.10/os/x86_64/" > /var/cache/yum/x86_64/6/base/mirrorlist.txt [root@server02 ~]# echo "http://vault.centos.org/6.10/extras/x86_64/" > /var/cache/yum/x86_64/6/extras/mirrorlist.txt [root@server02 ~]# echo "http://vault.centos.org/6.10/updates/x86_64/" > /var/cache/yum/x86_64/6/updates/mirrorlist.txt [root@server02 ~]# rpm -q gcc package gcc is not installed [root@server02 ~]# [root@server02 ~]# [root@server02 ~]# yum install -y tcl Loaded plugins: fastestmirror, refresh-packagekit, security Setting up Install Process Loading mirror speeds from cached hostfile https://archive.cloudera.com/cm6/6.3.1/redhat6/yum/repodata/repomd.xml: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found" Trying other mirror. To address this issue please refer to the below knowledge base article https://access.redhat.com/articles/1320623 If above article doesn't help to resolve this issue please open a ticket with Red Hat Support. Error: Cannot retrieve repository metadata (repomd.xml) for repository: cloudera-manager. Please verify its path and try again [root@server02 ~]# [root@server02 ~]# [root@server02 ~]# 감사합니다.
-
미해결15일간의 빅데이터 파일럿 프로젝트
플럼 이벤트 작동
안녕하세요"6. 적재 파일럿 실행 4단계 - 적재 기능 테스트" 강의 중, 플럼 이벤트 작동과 관련되어 실습 중 질문이 있어 문의드립니다.현재 /home/pilot-pjt/working/SmartCar 경로에 마들어진 SmartCarStatusInfo_20160101.txt 파일을 플럼의 SmartCarInfo의 SpoolDir 경로인 /home/pilot-pjt/working/car-batch-log로 옮겨 플럼의 File 이벤트가 작동하기 위해, $ mv /home/pilot-pjt/working/SmartCar/SmartCarStatusInfo_20160101.txt /home/pilot-pjt/working/car-batch-log/$ cd /var/log/flume-ng/$ tail -f /var/log/flume-ng/flume-cmf-flume-AGENT-server02.haddop.com.log를 입력하였습니다. 이 후, "...BuckerWriter: Closing /pilot-pjt/...", "...BuckerWriter: Renaming /pilot-pjt/...", 그리고 마지막으로 "...Writer callback called"라는 메세지가 보이면 모든 HDFS 적재가 성공적으로 끝난 것이다라고 설명해주셨지만, 저는 아래 출력값으로 약 40분 간 추가적인 출력이 발생하지 않은 상황입니다.[root@server02 SmartCar]# cd /var/log/flume-ng/ [root@server02 flume-ng]# tail -f /var/log/flume-ng/flume-cmf-flume-AGENT-server 02.hadoop.com.log value.serializer = class org.apache.kafka.common.serialization.ByteArray Serializer 2024-01-28 01:11:50,605 INFO org.eclipse.jetty.server.Server: jetty-9.3.25.v2018 0904, build timestamp: 2018-09-05T06:11:46+09:00, git hash: 3ce520221d0240229c86 2b122d2b06c12a625732 2024-01-28 01:11:50,743 INFO org.eclipse.jetty.server.AbstractConnector: Started ServerConnector@553dd1e0{HTTP/1.1,[http/1.1]}{0.0.0.0:41414} 2024-01-28 01:11:50,743 INFO org.eclipse.jetty.server.Server: Started @2563ms 2024-01-28 01:11:51,114 INFO org.apache.kafka.common.utils.AppInfoParser: Kafka version: 2.2.1-cdh6.3.2 2024-01-28 01:11:51,117 INFO org.apache.kafka.common.utils.AppInfoParser: Kafka commitId: null 2024-01-28 01:11:51,119 INFO org.apache.flume.instrumentation.MonitoredCounterGr oup: Monitored counter group for type: SINK, name: DriverCarInfo_KafkaSink: Succ essfully registered new MBean. 2024-01-28 01:11:51,121 INFO org.apache.flume.instrumentation.MonitoredCounterGr oup: Component type: SINK, name: DriverCarInfo_KafkaSink started 2024-01-28 01:11:51,161 INFO org.apache.kafka.clients.Metadata: Cluster ID: lJYz nSt_QWWTqgLn1n7JwA 이런 상황에서 원인이 무엇인지와 해결 방법에 대해 알려주시면 감사하겠습니다. 항상 강의를 통해 많은 것을 공부하고 있습니다.감사합니다.
-
해결됨빅데이터 클러스터 구축 패키지; 성공을 향한 로드맵
수업에 쓰인 코드 관련
안녕하세요. 강사님.좋은 강의 이번에도 감사드려요~현재 우분투로 이미지를 만들고 있는데명령어를 타이핑 시 종종 오타가 있습니다.그래서 명령어를 혹시 모아둔 곳이 있는지 질문드립니니다. 아래에 어떤 분께서 비슷한 질문을 남기셔서프로모션도 봤는데 ,전자책의 위치현재 code lab 의 코드들 위치프로모션의 구체적인 방법등이 잘 이해가 되지 않습니다.감사합니다.
-
해결됨빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
강의 연장 문의 드립니다.
안녕하세요. 강사님. 훌륭한 강의 잘 들었습니다. (금일 완강했어요 -_- v)강의를 듣다가 좋아서 클러스터 구축도 같이 신청하였습니다. 회사일을 병행하다 보니 오늘 막 강의를 다 들었는데 마지막 ( ELK /EFK/Docker 관련 등등) 은 제가 하는 일이라서 쉽게 들었습니다. 그런데 데이터 pyspark 같은 것은 여전히 생소하기만 합니다. 그래서 강의 연장을 부탁드립니다. 좋은 강의라 몇번을 더 보면서 레퍼런스 삼으려고 합니다. 부탁드립니다. 그간 정말 재미있었어요. 이제 클러스터도 보러 가려구요. 감사합니다.
-
미해결15일간의 빅데이터 파일럿 프로젝트
[공유] DNS_PROBE_FINISHED_NXDOMAIN 문제시
저는 macbook을 사용중이며 intel-chip입니다.M1은 여러차례 자체구성을 시도 하였지만, centOS는 7이였나 8이상부터 m1에서도 설치가 되도록 arm based ios를 제공하였지만 설치를 실패하였고, reddit과 git 커뮤등의 centOS의 설치 이미지를 m1칩에 맞게 리빌드 등의 작업이 필요하다는 등으로 시간이 너무 소요되고 강의를 듣기전 지칠듯하여 skip하였습니다. 제공받은 VM파일로 구성후 크롬에서 cloudera manager 접근시 DNS_PROBE_FINISHED_NXDOMAIN의 문제가 발생하였고, 높은 확율로 hosts의 오타를 의심하였지만 오타는 아니였습니다.DNS 캐시 및 초기화를 진행하였고, 크롬의 캐시 또한 삭제하였습니다. 그래도 동일한 오류로 접근이 불가하여ping과 telnet을 날리니 핑은 날라가나 telnet으로 포트와 함께 날릴시 접근이 불가한것을 확인하였습니다. 올바른 해결방법일지는 모르겠지만 해당 포트가 접근이 불가능하다 판단하여, VM server01에 네트워크 설정에서 > 어댑터 1 > 고급 > 포트 포워딩 > 호스트포트 7180 / 게스트포트 7180으로 세팅하여 정상 접근 확인하였습니다. 저와 같이 이러한 문제를 만나시는 분이 계시면 조금 더 빠른 해결 방법을 찾길 바라며 글 남깁니다. P.S. BigD님 혹 해당 방법이 올바른 방법이 아니라면 잘못된 정보라 표시 부탁드립니다. 제가 아직 강의 초반이기에 해당 설정을 건드리어 후반부의 강의에 영향을 끼칠지에 대한 확신이 없습니다ㅠㅠ
-
해결됨빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
섹션2 실습 1에서 질문 있습니다.
안녕하세요, 강사님.좋은 강의 올려주셔서 감사합니다. 보면서 열심히 따라하고 있습니다. 저는 비전공자라서 처음 들을 때는 물음표의 연속이었지만 신기하게 두번째 들을 때는 이해가 되고 점점 따라하기 수월해지고 있습니다.다름이 아니라 두가지 질문이 있어서 문의드립니다.1. ec2 linux/Ubuntu를 ssh로 접속한 상태에서 크롬페이지를 새창으로 뿅 띄우는 것이 안됩니다 ㅠㅠ처음에 스크립트를 실행했을 때는 아래와 같은 에러 때문에 실행이 안되었습니다.AttributeError: 'str' object has no attribute 'capabilities'여러가지 찾아보니 이유는 셀리니움이 업데이트 되어서 이제 크롬 드라이버를 다운받지 않아도 된다고 하더라구요. 그래서 아래와 같이 추가하고 경로를 비우고 실행하면 된다고 합니다.chrome_options = webdriver.ChromeOptions()driver = webdriver.Chrome()그랬더니 에러를 뿜지 않고 그냥 스크립트가 종료되어 버리는 것 같아요. 다만 sudo를 이용해서 스크립트를 실행하면 아래와 같은 에러가 나타납니다. =====ubuntu@ip-172-31-43-47:~/bigdata$ sudo python3 5_chrome.pyTraceback (most recent call last): File "/home/ubuntu/bigdata/5_chrome.py", line 4, in <module> driver = webdriver.Chrome() File "/usr/local/lib/python3.10/dist-packages/selenium/webdriver/chrome/webdriver.py", line 45, in init super().__init__( File "/usr/local/lib/python3.10/dist-packages/selenium/webdriver/chromium/webdriver.py", line 61, in init super().__init__(command_executor=executor, options=options) File "/usr/local/lib/python3.10/dist-packages/selenium/webdriver/remote/webdriver.py", line 209, in init self.start_session(capabilities) File "/usr/local/lib/python3.10/dist-packages/selenium/webdriver/remote/webdriver.py", line 293, in start_session response = self.execute(Command.NEW_SESSION, caps)["value"] File "/usr/local/lib/python3.10/dist-packages/selenium/webdriver/remote/webdriver.py", line 348, in execute self.error_handler.check_response(response) File "/usr/local/lib/python3.10/dist-packages/selenium/webdriver/remote/errorhandler.py", line 229, in check_response raise exception_class(message, screen, stacktrace)selenium.common.exceptions.SessionNotCreatedException: Message: session not created: Chrome failed to start: exited normally. (session not created: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.)Stacktrace:#0 0x562ff172ef83 <unknown>#1 0x562ff13e7cf7 <unknown>#2 0x562ff141f60e <unknown>#3 0x562ff141c26e <unknown>#4 0x562ff146c80c <unknown>#5 0x562ff1460e53 <unknown>#6 0x562ff1428dd4 <unknown>#7 0x562ff142a1de <unknown>#8 0x562ff16f3531 <unknown>#9 0x562ff16f7455 <unknown>#10 0x562ff16dff55 <unknown>#11 0x562ff16f80ef <unknown>#12 0x562ff16c399f <unknown>#13 0x562ff171c008 <unknown>#14 0x562ff171c1d7 <unknown>#15 0x562ff172e124 <unknown>#16 0x7fc769a94ac3 <unknown>====혹시나 해서 linux 인스턴스에서 다시 수행해보았지만 linux에서는 sudo 일 때와 아닐 때 모두 에러 메시지는 똑같네요... ㅠㅠ 뒤에 실습 2에서 linkedIn을 제어할 때에도 새롭게 창이 뜨는 것으로 보이니 해결하고 넘어가야 할텐데 답을 찾을 수가 없습니다 ㅠㅠ무엇이 문제일까요? 도와주세요 선생님 ㅠㅠ 2."https://docs.python.org/3.5/library/"페이지를 크롤링해오는 스크립트가 에러 없이 일부만 실행되는 현상이 있는데 이유를 모르겠습니다. 스크립트를 실행하면 딱 이렇게 pygments.css 까지만 크롤링이 되고 그 다음 단계인 /library/intro.html 아래 페이지 정보는 크롤링되지 않은 상태에서 작업이 끝납니다.======================(venv) [ec2-user@ip-xxx-xxx bigdata]$ python3 practice1.pydownloaded = https://docs.python.org/3.5/library/analyzed html = https://docs.python.org/3.5/library/downloaded = https://docs.python.org/3.5/_static/pydoctheme.cssdownloaded = https://docs.python.org/3.5/_static/pygments.css====================== 몇번이나 공유해주신 코드와 비교해보아도 틀린 부분을 못찾겠네요 ㅠㅠ 스크립트가 에러를 뿜지도 않고 일단 일부 정보라도 가져오는 상태라 더 확인이 어렵습니다 ㅠㅠ혹시 이런 경우에 대해 어떻게 해결하는지 아실까요?새해 복 많이 받으세요!
-
해결됨빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
슬라이드 자료
아래와 같은 양식으로 질문을 남겨주세요 🙂수업을 들으시면 이해하기 어려운 부분이 있으면 상세히 질문을 남겨주세요.서로 Tone and Manner 를 지키며, 즐거운 수업 시간을 만들어보아요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 강의를 통해 열심히 공부중인 학생 입니다.혹시 슬라이드 자료를 따로 열람 가능한지 여쭙고 싶습니다. 좋은 강의 잘듣고 공부하고 있습니다. 감사합니다.
-
해결됨빅데이터 클러스터 구축 패키지; 성공을 향한 로드맵
강의자료
혹시 강의 자료는 어디서 얻을 수 있을까요? 개인적으로 인프런 강의 구매한 사람 입니다.
-
해결됨Data Engineering Course (1) : 빅데이터 하둡 직접 설치하기
Hadop 3.2.1 버전 지원을 안하는거 같습니다
3.3.6 버전으로 진행 하여도 상관 없나요?혹시.. 리뉴얼.. 계획이 있으신가요..터미널 창이 너무 바닥 까지 있어서 초록생 진행 바와 터미널 창이랑 계속 겹쳐서 보기가 힘듭니다..ㅠ
-
해결됨빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
수강기간 연장 가능할까요?
안녕하세요 ㅎㅎ 수업을 잘 듣고 있습니다. ^^ 직장생활 하면서 듣기가 쉽지 않네요 ㅜㅜ 수강기한이 얼마 남지 않아서 가능하다면 연장이 가능할까요? 감사합니다.
-
미해결15일간의 빅데이터 파일럿 프로젝트
centos 7로 이 강의를 진행할 수 있나요?
centos 6을 다운 받을 수 없어 centos7을 다운 받아 진행하려고 합니다.지금 진행하다가 막힌 부분은 server01과 server02를 virtual Machine에서 centos7 파일 적용이 안 됩니다.\이 다음에 아무것도 안 뜨고 검은색 화면만 뜹니다
-
미해결Data Engineering Course (1) : 빅데이터 하둡 직접 설치하기
확장팩 필수 유무
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 버추얼머신 깔 때 확장팩 필수인가요?
-
미해결Data Engineering Course (1) : 빅데이터 하둡 직접 설치하기
jdk 설치 유무 문의
인터넷 보면서 자바 환경 변수 설정을 해보았는데 혹시 제대로 된 것이 맞을까요..? ㅠㅠ자바 환경 변수 부터 쉽지 않네요 -- 자바 설치sudo apt-get install openjdk-8-jdk -- 자바 버전 확인 tghong@redhat7-1:~$ java -version openjdk version "1.8.0_382"-- 설치 경로 확인? tghong@redhat7-1:~$ readlink -f $(which java) /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java sudo vi /etc/profileexport JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 export PATH=$PATH:$JAVA_HOME/bin source /etc/profile -- 확인 tghong@redhat7-1:~$ echo $JAVA_HOME/usr/lib/jvm/java-8-openjdk-amd64tghong@redhat7-1:~$ echo $PATH | grep java/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/lib/jvm/java-8-openjdk-amd64/bin
-
미해결Data Engineering Course (1) : 빅데이터 하둡 직접 설치하기
apt-get install openjdk-8-jdk 설치 문의
안녕하세요 강사님! 먼저 인프런에서 하둡을 공부 할 수 있도록 강의 내주셔서 너무 감사합니다! jar 파일 압축이 풀리지 않아 방법을 찾던 중 sudo apt-get install openjdk-8-jdk* 으로 설치가 잘 되었습니다혹시 이 방법으로 해도 문제가 없을까요..? 자바를 해본 적이 없는 상황에서 자바 설치 방법이? 강의와 다른데 그 이후 환경 변수 셋팅 구축 방법 및 하둡 설치는 달라지는 것이 없나요? 클라우드 환경이라 터미널에서 wget 으로 다운 받았는데 gzip 파일이 아니라는 에러가 나오는 이유가 무엇일까요.. 혹시.. wget 으로 다운 받을 수 있는 자바 1.8버전을 영상 아래 코멘트 한줄만 남겨 주실 수 있으신가요..ㅠ
-
해결됨빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
섹션7] 과제 2번 질문
섹션7] 과제2번 질문있습니다. users1 = [(0, "ALEX"), (1, "BERT"), (2, "CURT"), (3, "DONT")] subs1 = [(0, "Writing"), (0, "Gym"), (1, "Swimming")] userRDD = sc.parallelize(users1) subsRDD = sc.parallelize(subs1) mergedRDD = userRDD.rightOuterJoin(subsRDD) mergedRDD.map(lambda value : value[1][0] + " loves " + value[1][1]) 조인되어서 collect 되었을 때 데이터 구조가 key (leftvalue, rightvalue) 이렇게 반복구조가 되는 것 같은데 답이 ['ALEX loves Writing'] 이것만 나오는 것이 아니라 ['ALEX loves Writing', 'ALEX loves Gym', 'BERT loves Swimming'] 이렇게 나오는 이유를 모르겠습니다. 좋은 강의 잘 듣고 있습니다. 감사합니다. 아래와 같은 양식으로 질문을 남겨주세요 🙂수업을 들으시면 이해하기 어려운 부분이 있으면 상세히 질문을 남겨주세요.서로 Tone and Manner 를 지키며, 즐거운 수업 시간을 만들어보아요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
해결됨Data Engineering Course (1) : 빅데이터 하둡 직접 설치하기
강의 내용 블로그 작성 관련 문의
안녕하세요 빌리님, 최근 강의 수강을 시작한 수강생입니다.다름이 아니라, 블로그에 강의 내용을 정리하며 내용을 리마인드 하고 싶은데요,강의 내용에 들어가 있는 슬라이드를 일부 사용하여 게시글을 작성해도 될 지 문의 드리고 싶습니다.출처는 당연히 기재할 예정입니다!혹시 원치 않으신다면 비공개글로 작성하도록 하겠습니다.
-
해결됨빅데이터 클러스터 구축 패키지; 성공을 향한 로드맵
QJM의 Split Brain 해결법과 Zookeper의 Split Brain 해결법의 차이에 대한 질문
안녕하세요. 강사님의 강의를 듣는 도중, 질문의 내용과 같이, Zookeper의 Split Brain 방식과 QJM의 Split Brain 방식의 차이가 헷갈려서, 질문 드리게 되었습니다.제가 이해한 바는 다음과 같습니다.먼저, Network File System의 문제점은 네트워크 문제 발생시에 동기화 문제가 발생하는 Split Brain Issue가 발생합니다. 이는, 두개의 Active NameNode가 생기기 때문에, 데이터의 corruption이 발생하기 때문에, 저희는 Quorum Journal Manager방식을 채택한 것입니다. 이때, QJM의 경우에도 Split Brain 이슈가 발생이 가능하나, 자체적으로 해결할 수 있다고 했습니다. 해당 방법을 찾아보니, 충분한 수의 Journal Node가 살아있다면, 데이터의 일관성을 유지하기 위해 다수결 원칙을 적용하여 정상적인 Jouranl Node들 간의 동의를 얻게 된다는 점입니다. 저는 해당 방법을 찾아보며, zookeper와 같은 Consoliation Algorithms 방식을 사용하고 있구나... 생각이 들었습니다. 그러니까 Split Brain 이슈 중 하나인 데이터 충돌이 발생했을 때, 맞지 않는 데이터를 지우고, 다수가 가지고 있는 데이터로 통일한다는 것인가..? 라는 생각이 들었습니다. 그러다가, Final Wrap UP 수업에서, zookeper의 경우 NN을 모니터링하며, 장애발생시 (이를 테면, Split Brain과 같은 이슈), StandBy NameNode를 Active NameNode로 전환하며, 여러 개의 Standby NN이 있을 경우 Leader 투표 기능을 통해, Active NameNode를 선출하는 기능이라고 정리하였습니다. Q1. 시간 순으로 어떻게 되는지가 헷갈립니다. 주키퍼를 통해 상시 모니터링을 하다가, 해당 이슈가 발생할 시, 재빠르게 Active Node로 전환이 되고 나서, 해당 Split Brain 이슈가 발생하며 데이터 충돌이 발생했던 부분을 QJM에서 다수결 원칙을 통해, 올바르지 않은 Journal Node에 있는 데이터는 삭제하며, 데이터의 일관성을 유지한다는 것일까요? Q2. 만약에 Active Node로 전환이 이루어졌는데도, 해당 문제가 지속적으로 해결이 되지 못해서, QJM에서 다수결 원칙을 통해 해결을 못하는 상황이 발생하면, 심각한 문제상황이라고 볼 수 있는건가요? 잘못 설계해서, 삭제된 데이터는 복구를 할 수 없는건가요? Q3. Network File System의 경우 hdfs-site.xml에 fencing을 추가함으로써, Split Brain issue를 해결할 수 있다고 공부할 수 있었습니다. 그런데, 상기 방법이 있는데도 불구하고, QJM 방식을 사용하는 이유는, 일정정도 해당 문제가 발생할 시, 데이터의 정합성을 보장해준다는 부분 때문에 차용하는 것일까요?