inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

직렬화, 역직렬화 관련

미해결

[아파치 카프카 애플리케이션 프로그래밍] 개념부터 컨슈머, 프로듀서, 커넥트, 스트림즈까지!

안녕하세요. 좋은 강의 감사합니다. 직렬화, 역직렬화 관련해서 질문이 있습니다. 저는 Spring 프레임워크를 사용해서 프로듀서와, 컨슈머를 각각 따로 서버를 만들어서 개발 하고 있습니다. 수업 내용은 단순히 String이지만 제가 실무에 사용하려고하는건 웹 애플리케이션 과 같이 DTO 클래스로 받은 데이터를 그대로 프로듀서에서 send()에 담아서 보내고 있습니다. 컨슈머에서 DTO로 받으려고 관련 자료를 찾아 보니 JsonSerializer가 있어 해보았습니다. Object 로 받아서 여러 DTO를 받을 수 있는 Consumer factory를 만들다 보니 여러 에러가 발생해서 ObjectMapper를 사용했습니다. @Component public class ObjectMapperService { private final ObjectMapper objectMapper = new ObjectMapper(); public <T> T convertValue(String json, Class<T> valueType) throws JsonProcessingException { return objectMapper.readValue(json, valueType); } } @Component @Slf4j @Data @RequiredArgsConstructor public class KafkaConsumer { private final ObjectMapperService mapper; @KafkaListener(topics = "member-join", containerFactory = "commonKafkaListenerContainerFactory") public void receiveMemberJoin(ConsumerRecord<String, String> consumerRecord, Acknowledgment acknowledgment) throws Exception { String value = consumerRecord.value(); MemberJoin memberJoin = mapper.convertValue(value, MemberJoin.class); String recommendCode = memberJoin.getRecommendCode(); log.info("recommendCode: {}", recommendCode); log.info("received payload = {}", memberJoin.toString()); acknowledgment.acknowledge(); } } 이런식으로 사용해서 DTO클래스로 사용했는데 실무에서는 어떤식으로 하는지 궁금합니다. 혹시 참고할 수 있는 정보가 있을까요? 감사합니다.

  • kafka
  • 데이터-엔지니어링
  • 직렬화
  • 역직렬화
  • spring
jhahn 댓글 2 좋아요 0 조회수 479

같은 대역의 PC로 연결 후 Java code 질문

미해결

카프카 완벽 가이드 - 코어편

저번 질문이 많이 도움이 되었습니다. 그래서 같은 대역의 PC 2개를 가지고 하나는 kafka 서버로 만들어서 ssh로 연결이 되었고 여러 명령들도 잘 실행되었습니다. 이번엔 java code로 만들어본 simpleproducer를 이용하여 메세지를 보내보고싶은데 IP 부분의 code를 어떻게 설정하면 좋을까요? kafka 서버의 PC의 ip는 210.110.32.125 이고 포트번호는 12345로 포트 포워딩을 통해 22번 변경했습니다 Properties props = new Properties(); //bootstrap.servers, key.serializer.class, value.serializer.class //props.setProperty("bootstrap.servers", "192.168.56.101:9092"); props.setProperty(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, "192.168.56.101:9092");

  • kafka
  • 데이터-엔지니어링
행복한 족제비 댓글 1 좋아요 0 조회수 208

인텔리제이 Producer실행 관련

미해결

카프카 완벽 가이드 - 코어편

인텔리제이에서 메인문을 실행하였을 때, 이러한 로그가 반복되며 무한히 나옵니다. gradle에서slf4j도 정상적으로 적용시켰습니다만 해결이 안되네요. 뭐가 문제일까요?

  • kafka
  • 데이터-엔지니어링
ytnam1 댓글 3 좋아요 0 조회수 297

kafka 서버 구성한 기기 외 다른 기기에서 접속하고싶은데..

해결됨

카프카 완벽 가이드 - 코어편

강의에서는 한 기기에서 모든게 이루어져서 강의에서 진행되는 기기는 kafka 서버로 두고 외부 기기 2개로 producer와 consumer 코드를 실행시켜보고 싶은데 설정을 어떻게 해야할지 모르겠습니다. 검색을해보면 advertised.listeners에 IP를 입력해야 하는거 같은데 무슨 IP를 입력하면 좋을까요? 아니면 또 다른 설정이 있나요? kafka서버 PC 한대 와 다른 PC 2대인 상황이고 같은 와이파이를 공유하고 있는 상황입니다. producer 코드를 가진 PC를 실행시켜 kafka 서버 PC에 접속하여 consumer 코드를 가진 PC로 받고싶습니다.

  • kafka
  • 데이터-엔지니어링
행복한 족제비 댓글 1 좋아요 0 조회수 475

broker config vs topic config

미해결

카프카 완벽 가이드 - 코어편

broker와 A topic config가 각각 log.retention.ms = 1일, retention.ms =1일 인 상황에서 broker config를 1주일로 바꿨습니다. A 토픽 메세지 보관 기간은 여전히 1일인가요 ? 브로커쪽 설정 수정이 global 하게 적용되는게 아닌건가요? 감사합니다. - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

  • kafka
  • 데이터-엔지니어링
정영준 댓글 1 좋아요 0 조회수 168

데이터베이스 설치 관련

해결됨

Database - SQL

안녕하세요. MS SQL server express 설치 부분에서 문제가 발생해서 질문 드립니다. 기본 인스턴스 또는 명명 인스턴스와 상관없이 다음 사진과 같이 데이터베이스 엔진이 설치가 되지 않습니다. 방화벽이 문제 때문이라고 생각하여 1433 포트를 허용하는 인바운드 규칙도 추가하였으나 여전히 설치에 오류가 발생합니다. 혹시 강의 내용과 다른 SQL Server 2022 버전을 설치해서 발생하는 문제일까요? 어떤 점에서 문제가 발생하는 지 잘 모르겠습니다

  • sql
  • 데이터-엔지니어링
hanwool.suh 댓글 4 좋아요 0 조회수 1340

수업자료 한번에 다운 받을 수 없을까요?

미해결

실리콘밸리 엔지니어와 함께하는 Redis

수업자료를 매번 다운받고 아이패드에 넣고 하는 작업이 번거롭네요 ㅠ 한번에 다운받고 싶어요!

  • 빅데이터
  • redis
  • 데이터-엔지니어링
  • database
노희석 댓글 1 좋아요 1 조회수 251

OrderDBHandler 에서 데이터가 다 안들어가고 누락이 됩니다.

미해결

카프카 완벽 가이드 - 코어편

원인을 찾아보니 insertOrders 메소드에서 pstmt.executeUpdate(); 이 부분이 문제입니다. 대신에 pstmt.executeBatch(); 이렇게 하니 누락된 데이터가 없이 다 들어갑니다.

  • kafka
  • 데이터-엔지니어링
jwleesh 댓글 4 좋아요 2 조회수 398

user 내장 시 ref 필드 필요성

미해결

mongoDB 기초부터 실무까지(feat. Node.js)

안녕하세요 ! 유익한 강의 감사합니다. Blog.js에서 BlogSchema를 보면, user를 내장하였는데, _id에 ref 필드가 그대로 있더라구요. 사실 populate 하지 않을 꺼면 ref필드는 삭제해도 되지 않을까요? 만약 내장하려는 문서에 ref가 필요한 케이스가 있다면 어떤 게 있을까요?

  • javascript
  • node.js
  • aws
  • mongodb
  • rest-api
  • dbms/rdbms
  • 데이터-엔지니어링
maple V 댓글 1 좋아요 0 조회수 279

Producer의 acks 설정 관련 실습 질문

미해결

카프카 완벽 가이드 - 코어편

안녕하세요 선생님 질문이 있습니다. acks = -1 이 All이라 하셨는데 예제에서 erorr를 따로 던지지 않는 이유가 min_insync_replicas 가 기본값이 0 이라서 그냥 성공하는것인가요?

  • kafka
  • 데이터-엔지니어링
dohyun_lim 댓글 2 좋아요 0 조회수 289

강의 내용 정리

미해결

Airflow 마스터 클래스

안녕하세요! 에어플로우를 사용하고 싶어서 강의를 수강하게 되었는데 수업을 너무 잘 해주셔서 많은 도움을 받고 있습니다. 다름이 아니라 제가 개인적인 공부를 목적으로 개인 블로그를 하고 있는데, 에어플로우에 관해 강의 자료를 토대로 정리해서 게시물을 작성해도 될지.. 여쭤보고 싶습니다..! 강의 자료를 그대로 사용하지는 않고 내용을 바탕으로 정리해서 작성할 계획입니다..!

  • python
  • 데이터-엔지니어링
  • airflow
이한희 댓글 1 좋아요 0 조회수 274

axios오류 문의드립니다!

미해결

따라하며 배우는 도커와 CI환경 [2023.11 업데이트]

프론트엔드 폴더에서 npm run start하면 바로 저 에러가 발생하고 소스 컨트롤 +S (저장)버튼 한번 누르면 되돌아옵니다. install axios 을 통해 package.json에 정상적으로 들어가 있는것도 확인했습니다.. 인풋값에 값 입력 후 전송 해도 동일한 에러가 발생하고 axiox관련 404문제라 경로 및 오타도 확인해봤지만 문제가 없다고 생각하며 소스도 복사해서 가져온 상태입니다. 어떤곳을 확인을 해봐야될까요??ㅠㅠ

  • aws
  • docker
  • github
  • ci/cd
  • travis-ci
  • 데이터-엔지니어링
우섭 댓글 1 좋아요 0 조회수 385

카프카 브로커와 레플리카 수 관계

미해결

카프카 완벽 가이드 - 코어편

안녕하세요 카프카 브로커 수와 토픽의 레플리카 팩터 수 관계가 궁금합니다! 토픽 레플리카 팩터를 3으로 할꺼면브로커는 최소 3개를 가져가야하는지 궁금합니다. 토픽 레플리카 팩터와 브로커 수가 연관이 있는지요!

  • kafka
  • 데이터-엔지니어링
paysecedu 댓글 1 좋아요 0 조회수 189

zookeeper security group 에러

미해결

빅데이터 클러스터 구축 패키지; 성공을 향한 로드맵

안녕하세요! zookeeper start 실행시 자꾸 connection refused 에러가 나서 문의드립니다.... ㅠㅠ 강의에 나온 대로 security group 설정했고 ping test까지 해봤는데도 잘되는데 에러가 발생하네요.... standalone 모드로는 돌아가는 것으로 보아 zookeeper 설치는 제대로 된 것 같은데 왜 통신이 안될까요

  • 빅데이터
  • hadoop
  • apache-spark
  • 데이터-엔지니어링
  • cluster
fade 댓글 2 좋아요 0 조회수 427

파이참에서 외부 파이썬 함수 수행하기

해결됨

Airflow 마스터 클래스

안녕하세요. 외부 파이썬 함수 수행하기가 안되어서 문의드리게 되었습니다. 저는 Pycharm이 익숙해서 Pycharm으로 하고 있었는데, Pycharm의 경우 .env파일이 인식이 안되는 걸까요..? common 모듈을 발견하지 못하네요... .env파일을 아래와 같이 설정하였고 dags_python_import_ func.py 에서도 Enable EnvFile에 체크표시를 하였는데 여전히 해당 모듈을 읽지 못하네요...ㅠㅠ 혹시 Pycharm의 경우 .env파일을 다르게 설정해야하는 걸까요...?

  • python
  • 데이터-엔지니어링
  • airflow
rosy 댓글 2 좋아요 0 조회수 624

Pull 쿼리 제약에 대한 이유

미해결

카프카 완벽 가이드 - ksqlDB

안녕하세요, 강의 내용 중 table에 대해서 source를 topic으로 하는 경우 pull 쿼리가 불가능 한 이유에 대해 강사님께서 구체적으로 확인이 되지 않았지만 rocksdb 이슈로 추정된다라고 말씀하신 것 같은데요, 혹시 아래의 이유가 아닐 지 확인 부탁드립니다. https://docs.ksqldb.io/en/latest/concepts/materialized-views/ In ksqlDB, a table can be materialized into a view or not. If a table is created directly on top of a Kafka topic, it's not materialized. Non-materialized tables can't be queried, because they would be highly inefficient. On the other hand, if a table is derived from another collection, ksqlDB materializes its results, and you can make queries against it. document에 따르면 source가 topic인 table의 경우는 mview가 아니라고 하는 것 같습니다. (mview가 아니기 때문에 비효율적이다.) 그렇다면 이 경우는 rocksdb를 통해 stateful한 결과를 저장한 뒤 가져오는 것이 아닌 토픽으로부터 전체 레코드를 읽어와서 compact한 처리를 하는 케이스라고 볼 수 있을 것 같습니다. 즉, source가 topic인 케이스는 오히려 rocksdb를 사용하지 않는 케이스이기 때문에 그런 것이 아닐까 추측이 되는데요 어떻게 생각하시는지 궁금합니다.

  • kafka
  • 데이터-엔지니어링
  • ksqldb
이무 댓글 1 좋아요 0 조회수 243

xcom_pull 메서드 사용 질문

미해결

Airflow 마스터 클래스

안녕하세요 강의에서 xcom_pull 메서드 사용시 task_ids를 지정하지 않으면 가장 마지막 태스크의 키값을 가져온다고 하셨는데요, 실습코드를 돌려보니 먼저 실행되었던 태스크의 밸류값을 리턴합니다. from airflow import DAG import pendulum from airflow.decorators import task with DAG( dag_id="dags_python_with_xcom_eg1", schedule="30 6 * * *", start_date=pendulum.datetime(2024, 3, 1, tz="Asia/Seoul"), catchup=False, ) as dag: @task(task_id="python_xcom_push_task1") def xcom_push1(**kwargs): ti = kwargs["ti"] ti.xcom_push(key="result1", value="value_1") ti.xcom_push(key="result2", value=[1, 2, 3, 4]) @task(task_id="python_xcom_push_task2") def xcom_push2(**kwargs): ti = kwargs["ti"] ti.xcom_push(key="reuslt1", value="value_2") ti.xcom_push(key="reuslt2", value=[1, 2, 3]) @task(task_id="python_xcom_pull_task") def xcom_pull(**kwargs): ti = kwargs["ti"] value1 = ti.xcom_pull(key="result2") # [1, 2, 3] value2 = ti.xcom_pull( key="result1", task_ids="python_xcom_push_task1" ) # value_1 print(value1) print(value2) xcom_push1() >> xcom_push2() >> xcom_pull() dag는 위와 같이 작성했고요, [1, 2, 3]이 반환될 것으로 기대했던 부분에서 [1, 2, 3, 4]가 반환되어서 혹시 제가 코드를 잘못 작성한건지 궁금해서 여쭤봅니다

  • python
  • 데이터-엔지니어링
  • airflow
방효석 댓글 2 좋아요 0 조회수 352

show_templates() 함수의 키워드 아규먼트 질문

해결됨

Airflow 마스터 클래스

안녕하세요 강사님! dags_python_with_ templates.py 파일에서 show_templates 함수를 아무 인자도 넣지 않고 실행을 시키는데요, dag 실행시 출력되는 키워드 인자들은 에어플로우 태스크 객체에 기본으로 입력되는 값들인가요? 정확한 원리가 궁금하여 여쭤봅니다

  • python
  • 데이터-엔지니어링
  • airflow
방효석 댓글 2 좋아요 0 조회수 337

인덱스? 파티셔닝? 관련 문의 드립니다

해결됨

갖고노는 MySQL 데이터베이스 by 얄코

안녕하세요 얄코님 좋은 강의 덕분에 하루 하루 성장해가는 1인 입니다 혹시 인덱스, 파티셔닝 이런 용어들이 있어 찾아봐도 이해가 잘 되지 않더라구요 추 후에 샤딩?, 레플리케이션?, 파티셔닝, 인덱스등 DB 튜닝? 관련하여 강의를 출시할 예정이 있으신가요?

  • sql
  • mysql
  • dbms/rdbms
  • 데이터-엔지니어링
홍태경 댓글 1 좋아요 0 조회수 311

3정규화

미해결

데이터베이스 중급(Modeling)

3정규화용 주문 테이블에 주문번호 상품번호 상품명 있으면 3정규화 대상으로 주문 테이블은 주문번호 상품번호 상품 테이블 따로 만들어서 상품번호 상품명 이렇게 따로 관리해야한다는거같은데용 문제가요, 상품명이 바뀌게 되면 주문 테이블에 상품명도 바껴서 예전에 주문했던 상품명이 달라져서 혼란스러울것같은데 이런거는 3정규화 대상인가요 정책에 따라서 달라지나요

  • dbms/rdbms
  • 데이터-엔지니어링
이종민 댓글 2 좋아요 0 조회수 259

인기 태그

인프런 TOP Writers

주간 인기글