묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨Airflow 마스터 클래스
docker-compose.yaml 파일 관련 질문
안녕하세요 강사님,강의 열심히 듣고 있는데요 docker-compose.yaml 파일의 volume 부분 설명해주신게 잘 이해가 가지 않습니다.: 기준으로 왼쪽이 WSL, 오른쪽이 docker container의 volume이고 둘을 매칭해주는거라고 설명해주셨는데 두개가 같은거 아닌가요? wsl 환경에서 docker를 셋업하고 에어플로우 태스크를 실행시키는걸로 이해하고 있거든요.참고로 저는 맥 환경에서 실습중이라 WSL은 설치 안하고 그냥 디렉토리만 local과 remote로 구분해놓고 remote에 도커 셋업해서 실습중입니다. 그럼 제 기준에선 : 왼쪽이 remote 디렉토리이고 오른쪽이 docker container 인건가요?
-
미해결[아파치 카프카 애플리케이션 프로그래밍] 개념부터 컨슈머, 프로듀서, 커넥트, 스트림즈까지!
윈도우 연산시 주의해야할 사항 + 기타 질문
윈도우 연산시 주의해야 할 사항에텀블링 윈도우에 한해서 윈도윙이 5초간격이라면커밋 간격도 5초로 맞춰주면굳이 최신 데이터를 어떤 로직처리에 의해서 뽑아줄 필요가 없지 않을까요?스트림 처리할때만 커밋 간격을 윈도우 크기만큼 맞추고, 나머지는 디폴트나 설정한 값으로 처리하면 될것 같은데요이렇게 하는건 어떻게 생각하시는지 궁금합니다 자바의 main 말고 카프카의 데이터를 컨슘해서 프론트엔드로 서빙하는 스프링 예제provectuslabs/kafka-ui의 이미지를 사용해서 도커컴포즈로 브로커를 3대 띄우고 운영한다던지(아무래도 쿠버네티스 환경까지 들어가면 너무 깊어지니깐)스키마 레지스트리와 KSQL 등에 대한 것추가로 2, 3, 4번 예제는 강의에 없는것 같은데 혹시 집필하신 책에 나와있을까요? 많은 내용을 배워서 갑사합니다추가로 현업에서 사용되는 다양한 처리 방법을 조금 더 심도있게 배우고 싶습니다
-
미해결[2024 리뉴얼] 처음하는 SQL과 데이터베이스(MySQL) 부트캠프 [입문부터 활용까지]
SQL Server
안녕하세요.컴퓨터공학과 학생인데요 현재 맥북을 사용중인데 SQL Server을 쓰고 싶은데 어떻게 해야되나요?
-
미해결카프카 완벽 가이드 - 코어편
VM화면에서 마우스 클릭 불가
안녕하세요. 강의 잘 듣고 있습니다.VM 환경에 들어와서 마우스 클릭을 하면 팝업창이 뜨면서 마우스 잡기 버튼이 생성되어 잡기를 클릭하면 마우스 커서도 사라지며 아무 클릭이 안돼요.구글링해보니 설정 -> 시스템-> 마더보드 -> 포인트 장치 -> USB 태블릿 or USB 멀티터치 태블릿으로 변경위와 방법을 사용해도 변경이 안됩니다.혹시 어떻게 해결해야 할까요?
-
미해결카프카 완벽 가이드 - 코어편
Kafka Consumer 데이터 유실 관련
안녕하세요 강사님!Consumer와 auto.offset.reset의 내부 동작 메커니즘 상세 이해듣던 중 궁금한 부분이 생겨서 질문 남깁니다 🙂 Kafka Consumer는 __consumer_offsets 기준으로데이터를 읽어드린다고 이해를 했는데 동일 컨슈머 그룹에 이미 메세지가 있는 경우프로듀서가 메세지를 전송한 이후에 컨슈머를 기동을 한다고 하면 earlist, lastest 모두 전송한 메세지를 받을 수 없어 데이터 유실이 발생할 가능성이 있을 것 같은데 이러한 데이터 유실을 방지하는 방법이 있을까요?프로듀서 같은경우 ACK 설정으로 이를 방지할 수 있을 것 같은데 컨슈머에도 동일한 설정이 있는지 궁금합니다.
-
미해결Airflow 마스터 클래스
mac 환경에서 실습 질문
안녕하세요 🙂 Mac환경에서 실습을 하고 있습니다. 제 로컬에 Statground 폴더와 vscode 폴더를 만들어서 vscode/dags 경로에서 실습 코드를 작성하여 git에 올리고 Statground에 pull 받아서 실습을 진행하고 있었습니다.WSL을 사용하지 않는데, git에 push하고 Pull 할 필요 없이 Statground/airflow/dags 경로에 바로 실습 파일을 작성해서 진행해도 되는 건가요?
-
미해결카프카 완벽 가이드 - 코어편
프로듀서 직렬화 관련 질문있습니다.
안녕하세요, 실무에서 발생할 법한 사항에 대한 질문이 있습니다. 외부에서 데이터를 전송할 수 있는 API 엔드포인트가 프로젝트 내에 열려있고, 이 곳을 향해 들어오는 데이터를 적절히 파싱해서 Object에 담은 상태라고 했을 때이 Object를 토픽에 저장하고 꺼내오는 과정에 강의의 예를 적용하면 동일한 커스텀 직렬화 및 역직렬화가 적용된 프로듀서, 컨슈머 클라이언트를 통해 가능할 것 같은데요 만약 프로듀서는 그대로 자바 (Spring 환경) 클라이언트로 구현된 것을 사용한다고 하고, 토픽에 저장된 데이터를 ksqldb를 사용한 스트림처리나 connect를 붙여 타겟에 보내는 용도로 쓴다고 했을 때는 어떻게 해야할 까요?이런 상황에서는 커스텀 역직렬화를 ksqldb나 connect에서 사용하기 어려울 것 같은데, 프로듀서에서 Avro 타입등으로 전송해야 하는지 궁금합니다. 특정 상황에서는 스키마를 굳이 관리하지 않고 그냥 Json타입을 사용하고 싶을 수도 있을 것 같은데 커스텀 직렬화를 통해 바이트 코드로 토픽에 전송시킨 후 ksqldb 등에서 JSON 포맷으로 읽으면 읽혀질까요?
-
미해결[데브원영] 아파치 카프카 for beginners
Hbase sink connector
안녕하세요강의 다 잘들었습니다.처음 만들어보는중인데 최종목표는 PostgreSQL과같은 rdb의 데이터를CDC로Apache atlas로 표현하기 위해 Hbase로 전달하고싶은게 목표입니다 Hbase sink connector를 검색해도 잘안나와서 가능한지와 json으로 어떻게 변환해서 넣어야하느지 궁금합니다
-
해결됨카프카 완벽 가이드 - ksqlDB
IoT Event Streaming 적용에 대해서
안녕하세요. IoT Device들의 데이터를 받아서 값들이 조건을 만족하면 이벤트를 발생시키는 개발업무에 있습니다. 그래서 streaming 분석솔루션을 찾던도중 ksqlDB관련을 접하게되었습니다. 강의를 간단하게 훑어보고 ksqlDB 솔루션을 적용해보고싶은데 궁금한점이있어서 질문 드립니다. IoT Device의 개수가 많을 경우에 각각의 Device의 걸어주어야하는 조건이 다양해질수있습니다.만약에,A device의 조건은 해당 값이 10이 넘어가면 이벤트 발생 그리고 B device의 조건은 값이 15가 넘어가면 이벤트발생 이런식으로 구성될수있습니다.각 Device마다 고유한 조건이 있기때문에 많은 stream이 생성될수있습니다.또한 E Device에서 발생한 이벤트 와 J Device에서 발생한 이벤트를 조인해서 새로운 stream을 만들어주어야할때도있습니다. 디바이스가 많고 이벤트처리 흐름이 복잡해질수록 stream,table,Mview가 많이 생길수 있기때문에 성능에대한 우려가 있습니다.물론 H/W나 traffic, SQL문의 복잡도,네트워크구성등 성능에 미치는 요인들이 많기때문에 성능이 어떻다는 확실히 답변하기 어려울것같긴합니다. 결론은 데이터스트리밍 분석을 위해 많은 stream,table,Mview 작성해도 성능 이슈가 크게 발생하는지(몇백 혹은 몇천개단위). 만약 성능이 부족하다면 kafka를 scale out,up하면 나아질수있는지도 궁금합니다. 강의를 전체적으로 훑는식으로봐서 자세히 듣지못해 틀린부분이 있을수있지만, 부족한점 참고하여 봐주시면 감사하겠습니다.
-
미해결Airflow 마스터 클래스
SQLAlchemy 2.X 지원
구글링해보면 Airflow가 전체적으로 2.X 지원을 준비하는 것 같긴 합니다만,docker-compose로 airflow 2.8.4 docker를 설치하면SQLAlchemy가 1.4.X가 설치되는 것 같습니다. 저희가 만든 Dags는 내부에 SQLAlchemdy 2.X를 사용해서 DB 접근을 하는 코드가 있는데Airflow에 SQLAlchemy 2.X를 설치해서 쓰는 방법이 있을까요?예를 들면, dags를 실행하는 Airflow-worker에 SQLAlchemy 최신 버전을 pip install로 설치한다던지요..또는 기본 Base가 되는 이미지에 2.X로 업그레이드 시키거나, worker에 2.X를 설치할 때 Airflow의 기존 로직들은 이상이 없을지요?아니면, 아래처럼 virtual env 방식으로 SQLAlchemy를 설치하는 식으로 사용해야 할까요? @task.virtualenv( task_id="virtualenv_python", requirements=["SQLAlchemy==2.0.0"], system_site_packages=False ) 일반적으로 사용하는 방법에 대해 궁금합니다. 감사합니다.
-
미해결카프카 완벽 가이드 - ksqlDB
[수정요청] Join이해 중 select inner join a.user_id 수정 필요
안녕하세요.. 수강 하면서 하다 보니, 본의 아니게 수정 사항이 보입니다.KSQLDB/Join 이해 중에 select절에서 a.id 가 아닌 , a.user_id 로 수정 해야 될거 같습니다.
-
해결됨카프카 완벽 가이드 - ksqlDB
실무에서 카프카 환경 구축
안녕하세요,문득 실무에서 카프카 클러스터 환경 구축에 대해 궁금한 점이 생겼습니다. 강사님께서 진행하신 방법은 confluent의 카프카 프로젝트를 하나의 노드에 직접 다운받아서 주키퍼, 브로커 기동도 하고 ksql-cli 실행도 하신 것 같은데요,실무 환경에서는 클러스터 구축 노드가 주키퍼 클러스터를 이루는 노드들 및 브로커 등 여러 가지 일텐데요, 이런 경우는 어떻게 진행하는게 일반적일까요? 강의에서 사용한 동일한 플랫폼용 카프카 프로젝트를 ansible 등으로 설치 지원이 되는지 궁금합니다. 추가로 주키퍼나 브로커 노드들은 그 기능만 수행하고 ksql-cli나 schema-registry 혹은 connect 용으로 노드를 별도로 두고 사용하는 것이 일반적인지 궁금합니다.
-
미해결카프카 완벽 가이드 - ksqlDB
[수정요청] Mview CSAS 강좌중에 Insert문장 수정 요청
안녕하세요. 강좌를 수강 하다가, 강의 내용중 Mview CSAS 에서, customer_activeity_stream insert 문장이 강의 내용과 다르고, 칼럼이 달라서 에러 발생 합니다. activety_id 없습니다. 감사 합니다. INSERT INTO customer_activity_stream (customer_id, activity_id, activity_type, activity_point) VALUES (2, 10,'mobile_open',0.65); INSERT INTO customer_activity_stream (customer_id, activity_id, activity_type, activity_point) VALUES (4, 3, 'deposit', 0.35);
-
해결됨Airflow 마스터 클래스
공공데이터 받아오기 - XML형식 표시하기 질문
항상 강의 감사드립니다.SimpleHttp오퍼레이터로 공공데이터 받아오기 실습부분에 질문이 있습니다. 강의에서는 Json형식의 데이터를 받아와 load함수를 사용하셨는데요, 제가 받아온 데이터는 xml형식이어서 코드를 수정해가며 실습을 진행했습니다. 구글링을 통해 필요한 라이브러리를 가져와 다음과 같이 코드를 수정했습니다.import pendulum from airflow import DAG from airflow.operators.bash import BashOperator from airflow.providers.http.operators.http import SimpleHttpOperator from airflow.decorators import task with DAG( dag_id='dags_simple_http_operator', start_date=pendulum.datetime(2024, 3, 1, tz='Asia/Seoul'), schedule=None, catchup=False ) as dag: '''서울시 공공데이터 정보''' # http://openapi.seoul.go.kr:8088/(인증키)/xml/TnJbhntBassOpen/1/5/ get_hr_data = SimpleHttpOperator( task_id='get_hr_data', http_conn_id='openapi.seoul.go.kr', endpoint='{{var.value.apikey_openapi_seoul_go_kr}}/xml/TnJbhntBassOpen/1/10/', method='GET', headers={ 'Content-Type':'application/json', 'charset':'utf-8', 'Accept':'*/*' } ) @task(task_id='python_2') def python_2(**kwargs): ti = kwargs['ti'] rslt = ti.xcom_pull(task_ids='get_hr_data') # SimpleHttpOperator가 가진 데이터를 가져오기 import xml.etree.ElementTree as ET from pprint import pprint root = ET.fromstring(rslt) print(f'root : {root}, root/tag : {root.tag}, root/attrib : {root.attrib}') # for child in root: # print(child.tag, child.attrib) for child in root: print(f'Tag : {child.tag}, Content : {child.text}') get_hr_data >> python_2() (pprint라이브러리는 오류가 생겨 사용하지 않았습니다) python_2 태스크의 Logs결과입니다 :[2024-03-25, 00:18:05 KST] {logging_mixin.py:188} INFO - Tag : list_total_count, Content : 827 [2024-03-25, 00:18:05 KST] {logging_mixin.py:188} INFO - Tag : RESULT, Content : [2024-03-25, 00:18:05 KST] {logging_mixin.py:188} INFO - Tag : row, Content : [2024-03-25, 00:18:05 KST] {logging_mixin.py:188} INFO - Tag : row, Content :결론적으로 내용들이 표시가 되지 않는데, 이유가 무엇인가요?(child.attrib함수도 시도해보았지만, 역시 담는 내용이 없었습니다)문서는 다음 문서를 참고하였습니다 :https://docs.python.org/ko/3/library/xml.etree.elementtree.html#xml-tree-and-elements
-
미해결카프카 완벽 가이드 - 코어편
kafka paraller-consumer 처리방법을 알고 싶습니다.
하나의 토픽, 하나의 파티션으로 순서보장을 하는 Consumer 처리를 알고싶습니다.kafka paraller-consumer 처리를 하고 싶은데 마땅한 예제가 나와있지 않아서요.해당 예제를 찾아보면 보통 multi thread 방식이라 순서보장이 되지않은것 같아 사용을 못할것 같습니다.최종적으로 순서보장을 하는 consumer 병렬처리 방법을 알고 싶어 질문드렸습니다.
-
미해결처음하는 MongoDB(몽고DB) 와 NoSQL(빅데이터) 데이터베이스 부트캠프 [입문부터 활용까지] (업데이트)
studio - 3T에서 Connection오류
- 본 강의 영상 학습 관련 문의에 대해 답변을 드립니다. (어떤 챕터 몇6분 8초studio - 3T에서 Connection이 자꾸 local resource안으로 들어갑니다. (root level이 아니라)
-
미해결카프카 완벽 가이드 - 커넥트(Connect) 편
스키마 호환성 질문
안녕하세요https://www.inflearn.com/questions/1207899/%EC%8A%A4%ED%82%A4%EB%A7%88-%ED%98%B8%ED%99%98%EC%84%B1-%EC%A7%88%EB%AC%B8%EC%9E%88%EC%8A%B5%EB%8B%88%EB%8B%A4이 질문에 대한 추가 질문이 있습니다. BACKWARD에 대해 지원하는 신규 스키마 변경에서기존 필드 삭제, 기본 값 가진 신규 필드 추가이 부분은 sink쪽 스키마에서의 변경에 대한 내용인 것은 맞는건가요? 예를 들어 스키마 호환성 체크에서새로 추가되는 컬럼이 기본 값을 가지고 있지 않으면 하위 호환성 오류다. 라는 문장이 있다면"sink 쪽에서" 새로 추가되는 컬럼이 기본 값을 가지고 있지 않으면 하위 호환성 오류다. 라고 해석하는 것이 맞는지 질문드립니다.
-
미해결카프카 완벽 가이드 - 코어편
consumer 병렬처리를 알고 싶습니다.
안녕하세요.해당 수업을 잘듣고 있습니다.혹시 consumer에 대한 병렬처리방법에 대한 강의가 있을까요?참고할만한 강의가 있을까요?감사합니다.
-
미해결카프카 완벽 가이드 - 커넥트(Connect) 편
schema registry 포맷 지원
안녕하세요, schema registry를 사용할 때 avro를 사용해야한다고 말씀해주셨는데요, Json 포맷은 지원하지 않는건가요? 물론 avro의 경우 필드 정보가 payload에 빠지고 바이너리 형태이니 전송이 가장 빠르고 최적화된 포맷이라는 것은 알지만, Json 포맷도 설정을 통해 스키마를 지원할 수 있도록 할 수 있는데 schema registry의 지원 대상에서 제외되는 것인지 궁금합니다.
-
미해결[아파치 카프카 애플리케이션 프로그래밍] 개념부터 컨슈머, 프로듀서, 커넥트, 스트림즈까지!
데이터가 많은 브로커에서는 ISR이 유지되기 어렵나요?
replication lag이라는게 존재하면, 데이터가 리더 파티션에 들어올 때 마다 약간의 지연 시간이 팔로워에서 발생한다는 건데, 그말인 즉슨 ISR이 거의 유지될 수 없다처럼 느껴져서요.. 이부분이 궁금합니다.