묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실리콘밸리 엔지니어와 함께하는 Elasticsearch
docker-compose로 실행 시 es01이 중지됩니다.
안녕하세요 강사님 https://www.elastic.co/blog/getting-started-with-the-elastic-stack-and-docker-compose에 있는 깃허브 레포지토리를 클론하여 처음에는 es01이 실행되고 로그 스테시가 종료되었습니다. 그 이후 부터는 es01이 중지되는데 아래와 같은 로그와 함께 종료 되는 종료 되는데 logstash와 es01 사이에 충돌이 있어 종료되는 걸까요..? elastic-stack-docker-part-one-logstash01-1 | [2024-11-21T08:02:22,058][INFO ][logstash.agent ] Successfully started Logstash API endpoint {:port=>9600, :ssl_enabled=>false}elastic-stack-docker-part-one-logstash01-1 | [2024-11-21T08:02:22,413][INFO ][org.reflections.Reflections] Reflections took 103 ms to scan 1 urls, producing 132 keys and 462 valueselastic-stack-docker-part-one-logstash01-1 | [2024-11-21T08:02:22,681][INFO ][logstash.javapipeline ] Pipeline main is configured with pipeline.ecs_compatibility: v8 setting. All plugins in this pipeline will default to ecs_compatibility => v8 unless explicitly configured otherwise.elastic-stack-docker-part-one-logstash01-1 | [2024-11-21T08:02:22,691][INFO ][logstash.outputs.elasticsearch][main] New Elasticsearch output {:class=>"LogStash::Outputs::ElasticSearch", :hosts=>["https://es01:9200"]}elastic-stack-docker-part-one-logstash01-1 | [2024-11-21T08:02:22,795][INFO ][logstash.outputs.elasticsearch][main] Elasticsearch pool URLs updated {:changes=>{:removed=>[], :added=>[https://elastic:xxxxxx@es01:9200/]}}elastic-stack-docker-part-one-logstash01-1 | [2024-11-21T08:02:23,021][WARN ][logstash.outputs.elasticsearch][main] Restored connection to ES instance {:url=>"https://elastic:xxxxxx@es01:9200/"}elastic-stack-docker-part-one-logstash01-1 | [2024-11-21T08:02:23,026][INFO ][logstash.outputs.elasticsearch][main] Elasticsearch version determined (8.7.1) {:es_version=>8}elastic-stack-docker-part-one-logstash01-1 | [2024-11-21T08:02:23,027][WARN ][logstash.outputs.elasticsearch][main] Detected a 6.x and above cluster: the type event field won't be used to determine the document _type {:es_version=>8}elastic-stack-docker-part-one-logstash01-1 | [2024-11-21T08:02:23,041][INFO ][logstash.outputs.elasticsearch][main] Not eligible for data streams because config contains one or more settings that are not compatible with data streams: {"index"=>"logstash-%{+YYYY.MM.dd}"}elastic-stack-docker-part-one-logstash01-1 | [2024-11-21T08:02:23,041][INFO ][logstash.outputs.elasticsearch][main] Data streams auto configuration (`data_stream => auto` or unset) resolved to falseelastic-stack-docker-part-one-logstash01-1 | [2024-11-21T08:02:23,042][WARN ][logstash.outputs.elasticsearch][main] Elasticsearch Output configured with ecs_compatibility => v8, which resolved to an UNRELEASED preview of version 8.0.0 of the Elastic Common Schema. Once ECS v8 and an updated release of this plugin are publicly available, you will need to update this plugin to resolve this warning.elastic-stack-docker-part-one-logstash01-1 | [2024-11-21T08:02:23,051][INFO ][logstash.outputs.elasticsearch][main] Using a default mapping template {:es_version=>8, :ecs_compatibility=>:v8}elastic-stack-docker-part-one-logstash01-1 | [2024-11-21T08:02:23,056][INFO ][logstash.javapipeline ][main] Starting pipeline {:pipeline_id=>"main", "pipeline.workers"=>5, "pipeline.batch.size"=>125, "pipeline.batch.delay"=>50, "pipeline.max_inflight"=>625, "pipeline.sources"=>["/usr/share/logstash/pipeline/logstash.conf"], :thread=>"#<Thread:0x5c232bef@/usr/share/logstash/logstash-core/lib/logstash/java_pipeline.rb:134 run>"}elastic-stack-docker-part-one-kibana-1 | [2024-11-21T08:02:23.823+00:00][INFO ][plugins.fleet] Fleet Usage: {"agents_enabled":true,"agents":{"total_enrolled":0,"healthy":0,"unhealthy":0,"offline":0,"inactive":0,"unenrolled":0,"total_all_statuses":0,"updating":0},"fleet_server":{"total_all_statuses":0,"total_enrolled":0,"healthy":0,"unhealthy":0,"offline":0,"updating":0,"num_host_urls":0}}elastic-stack-docker-part-one-logstash01-1 | [2024-11-21T08:02:25,308][INFO ][logstash.javapipeline ][main] Pipeline Java execution initialization time {"seconds"=>2.24}elastic-stack-docker-part-one-logstash01-1 | [2024-11-21T08:02:25,995][INFO ][logstash.inputs.file ][main] No sincedb_path set, generating one based on the "path" setting {:sincedb_path=>"/usr/share/logstash/data/plugins/inputs/file/.sincedb_c6353e36a29b3d92bc7ba2e7e43ff9d8", :path=>["/usr/share/logstash/ingest_data/*.csv"]}elastic-stack-docker-part-one-logstash01-1 | [2024-11-21T08:02:26,067][INFO ][logstash.javapipeline ][main] Pipeline started {"pipeline.id"=>"main"}elastic-stack-docker-part-one-logstash01-1 | [2024-11-21T08:02:26,113][INFO ][filewatch.observingread ][main][aa52bdf6ce8b0a9dfd85c6762c35822ea405c6a5f2bb1ac09cf453850a9715f3] START, creating Discoverer, Watch with file and sincedb collectionselastic-stack-docker-part-one-logstash01-1 | [2024-11-21T08:02:26,619][INFO ][logstash.agent ] Pipelines running {:count=>1, :running_pipelines=>[:main], :non_running_pipelines=>[]}elastic-stack-docker-part-one-es01-1 |elastic-stack-docker-part-one-es01-1 | ERROR: Elasticsearch exited unexpectedly혹시 따로 설정해야 되는 부분이 있을까요..?이미지 삭제 후 재실행해도 똑같은거 같네요...
-
해결됨실리콘밸리 엔지니어와 함께하는 Elasticsearch
setup-1 이 실행되었다가 꺼지는 현상
docker-compose-multi.yml 파일을 생성한 후, window cmd를 실행하여 해당 yml 파일있는 곳으로 이동한후, docker compose -f docker-compose-multi.yml up명령어를 실행하며 대시보드에 컨테이너가 생성 된것을 확인하였습니다. 이미지의 setup-1 컨테이저가 실행되지 않아 직접 실행하였으나 바로 종료되는 현상이 반복되고 있습니다... setup-1이 실행되지 않아서 있는 /heath로 확인해도 number_of_shard도 여전히 1개로 보여집니다.. 어떻게 하면 수정 가능 할까요?
-
해결됨실리콘밸리 엔지니어와 함께하는 Elasticsearch
update 질문드립니다.
강의에서는 POST /my_index/_update/100이와같이 update를 진행하였는데, POST /my_index/_doc/1/_update이와같이 update를 수행하여도 동일하게 동작을 하는데 둘다 유효한 문법인 것 같은데 어느경우에 첫번째를 사용하고 어느경웨 두번째 문법을 사용하는지 궁금합니다.
-
미해결빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
수강기간연장가능할까요?
생각보다 진도를 못나가서 혹시 연장이 가능한가요?
-
해결됨실리콘밸리 엔지니어와 함께하는 Elasticsearch
term query를 "text" 타입 필드에 사용하면 이점이 없어질까요?
예제 하실 때 보면, _score 값이 계산된 것처럼 보이긴 했습니다.query value의 대문자를 소문자로 변경하는 처리(Lowcase Token Filter)는 하지 않는 것 같지만, _score는 계산하기 때문에..제대로 성능의 이점을 보려고 한다면 keyword 타입 필드에서 사용하는 것이 좋은 것인지요?
-
해결됨실리콘밸리 엔지니어와 함께하는 Elasticsearch
소스 코드의 변경이 없게 하기 위해서는...
이미 소스 코드가 이미 base_index를 기반으로 구현되어 있어야 하는 것으로 이해하면 될까요?
-
해결됨실리콘밸리 엔지니어와 함께하는 Elasticsearch
롤오버된 인덱스의 경우 리인덱싱을 어떻게 하면 되나요?
안녕하세요 궁금한게 있어서 질문 남깁니다.기존 인덱스 맵핑을 업데이트 하는 방법의 경우 새로 인덱스를 생성하고 리인덱싱 api 를 이용하여 데이터를 옮기고 색인을 새로 하는 걸로 강의를 보고 학습했습니다.그렇다면 실무환경에서 롤오버되어있는 인덱스의 경우 어떻게 처리를 하면 좋을지 질문 남깁니다.롤오버 될 경우 rollover-test-000001rollover-test-000002rollover-test-000003...이런식으로 인덱스가 생성이 되어있을텐데전부 새로 생성하고 리인덱싱 해줘야 하는 부분일까요아니면 실무에서는 다른 방법을 사용하는걸까요
-
미해결ElasticSearch Essential
색인과정 이해하기 중 질문입니다.
색인과정에서 number_of_shards, number_of_replicas 의값이 1로 기본 설정이 되어있는 경우 첫번재 두번째 요청이 들어오면 내부 라우팅 알고리즘에 의하여 두번째 데이터 노드로 색인 요청이 온다면 프라이머리 샤드가 없기 때문에 첫번재 데이터 노드로 요청을 하고 두번째 데이터 노드에있는 레플리카 샤드로 다시 복제한다는 것 까지 이해를 하였습니다. 하지만 그 뒤의 부분에서 현재 총 3개의 데이터 노드가 존재하는데, 프라이머리 샤드, 레플리카 샤드의 기본값을 1로 설정되어있기 때문에, 세번째 노드가 사용되지 않고있는 상황인데, 프라이머리 샤드와 레플리카 샤드의 경우는 색인을 하는 경우 사용자가 직접 설정하거나 기본값으로 1로 설정되는데 데이터 노드의 경우는 기본값이나 직접 설정이 가능한가요? 따로 설정한 부분이나 설명이 없는데 초기 그림부터 세개의 데이터 노드가 존재하는 부분에 의문이 생깁니다. 프라이머리 샤드와 레플리카 샤드의 갯수 설정을 함에 따라 데이터 노드의 갯수가 어떻게 달라지는지도 궁금합니다.
-
해결됨실리콘밸리 엔지니어와 함께하는 Elasticsearch
Dynamic Template
수고하십니다 유용한 강의 잘듣고 있습니다해당 강의 강의자료가 안올라와있습니다확인부탁드립니다 감사합니다
-
해결됨실리콘밸리 엔지니어와 함께하는 Elasticsearch
질문 하나 드립니다.
당연한 얘기겠지만 확인차원에서 질문드립니다.여러노드들을 하나의 물리적 서버에 설치하여 사용이 가능할까요?
-
미해결ElasticSearch Essential
xlsx 파일 색인 중 CircuitBreakingException 발생
안녕하세요. Elasticsearch Essential 강의 수강 후 실무에서 Elasticsearch를 사용하는 중 질문이 생겨 문의드립니다.Java 17 기반 G1GC 사용 중(Elasticsearch 7.10 버전), Apache Tika를 이용해 각종 확장자 파일에서 텍스트를 추출하여 indexing 합니다.그런데 doc, txt, pdf, ppt, xlsx 파일 중 유독 xlsx 파일 색인(text 타입, fielddata=false)할 때만 CircuitBreakingException이 발생합니다. Full GC 를 강제로 발생시켜도 Heap이 비워지지 않고 하한값을 높이다가 Circuit Breaker 임계치까지 도달합니다.xlsx의 시트 내에 숫자 cell이 많은데 edgengram (min_gram = 1) 토큰화 결과, 너무 많은 역색인 트리 구조가 발생한 것이 원인일까요?
-
미해결ElasticSearch Essential
ES 트러블슈팅 사례분석 강의 내용중 궁금한 게 있습니다.
안녕하세요 강사님 좋은 강의 만들어주셔서 도움이 많이 되었습니다.특시 트러블슈팅 강의는 운영시 큰 도움이될 것 같아요. 강의 수강중 아래 2가지 내용이 궁금하여 글 남깁니다. 트러블슈팅 사례분석 #2 (문서색인 불가) 에서 디스크 사용량에 따른 제한을 주는 클러스터 세팅 옵션이 있었는데요. 아래 두가지 옵션에 대하여 궁금한게 있습니다.cluster.routing.allocation.disk.watermark.low: 85% cluster.routing.allocation.disk.watermark.high: 90%위와 같이 워터마크 설정을 % 로 설정을 할 수도 있지만, 절대값으로도 가능한것 같은데요.저희쪽 설정을 보니 아래와 같이 되어 있는데 이럴때 의미가 어떻게 되는지 궁금합니다cluster.routing.allocation.disk.watermark.low: 25.0gb cluster.routing.allocation.disk.watermark.high: 22.0gblow 설정의 경우 디스크가 25.0gb 남았을경우 더이상 샤드를 배치하지 않는다. 로 이해되는데 high 설정이 어떤 의미인지 잘 이해가 안되어요. 트러블슈팅 샤례분석 #3 (간헐적 색인 누락)에서 문제해결 방법으로 데이터 노드 증설 혹은 큐 증설을 말씀 주셨는데요. 아래와 같은 상황에서 데이터 노드 증설이 해답이 되는지 궁금합니다.프라이머리 노드가 3개이고 데이터 노드가 3개인 상황에서 색인이 누락되고 있으면, 이때 데이터 노드를 증설해도 결국에는 추가된 노드는 색인 작업에 참여치 못하것 같은데요. 제가 이해한게 맞는지 궁금합니다. 이럴경우에는 프라이머리 샤드 갯수를 조정할 수 없는 상황일 것 같아서 어떤식으로 문제를 해결 할 수 있을지 궁금합니다.
-
미해결ElasticSearch Essential
동잭매핑 매핑 시 색인 질문
동적매핑에 의해 매핑 정보가 생성된 후에 타입이 안 맞을 경우 파싱 에러가 발생합니다 부분을 따라했는데 저 같은 경우에는 그냥 색인이 되어버리는데 그 부분에 대해 궁금합니다.(엘라스틱서치 6버전을 사용합니다.) PUT /movie_mapping_test/_doc/1{"movieCd" : "3","movieNm" : "US","prdtYear": 2014,"rating" : 3.0} 을 한 후에GET movie_mapping_test/_mapping 을 하니"movie_mapping_test": {"mappings": {"_doc": {"properties": {"movieCd": {"type": "text","fields": {"keyword": {"type": "keyword","ignore_above": 256}}},"movieNm": {"type": "text","fields": {"keyword": {"type": "keyword","ignore_above": 256}}},"prdtYear": {"type": "long"},"rating": {"type": "float"}}}}} 분명히 prdtYear long 이고 rating은 float 입니다. 하지만 PUT /movie_mapping_test/_doc/1 <PUT를 해도 POST를 해도 같습니다/>{"movieCd" : "3","movieNm" : "US","prdtYear": 2014,"rating" : "3.0"}을 하니 에러는 커녕 "_source": {"movieCd": "3","movieNm": "US","prdtYear": 2014,"rating": "3.0"} 이렇게 잘 들어갑니다 강의 대로 동적매핑을 한 후 float를 "3.0"을 하니 에러는 커녕 잘 들어가는 부분이 궁금합니다,. 정적매핑을 해도 비슷합니다...
-
미해결IT인을 위한 ELK 통합로그시스템 구축과 활용
엘라스틱 라이센스
강의내용 잘 보고 있습니다강의내용을 바탕으로 홈피에 검색기능을 추가 하여 상업적으로 이용할려고 하는데 아래 사항이 궁금합니다현상황 : 자체서버에 엘라스틱 도커를 설치하여 어느정도 개발이 완료됨문의사항1달정도가 지나니까 라이센스 만료가 나타나는데 이때 무료기간을 (30일) 확장하면 그동안 저장된 data를 사용할수 있는지 ?2. 무료로 계속 사용할수 있는 방법이 있는지유료를 검색해보니 $95/월 인데 이것을 이용하는 방법이 어떠한지 궁금합니다수고하세요
-
미해결빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
수강 기한 연장이 가능할까요?
안녕하세요 강사님어느새 수강기한이 얼마 남지 않아서..혹시 연장할 수 있는 방법이 있는지 문의드립니다.좋은 강의 감사드립니다!
-
미해결빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
강의 연장 문의
안녕하세요, 수강 기한이 얼마 안 남았는데, 기간 연장이 가능할까요?미리 감사드립니다
-
해결됨빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
wb.json , pandas.json 파일을 jupyter notebook 환경에서 read 가 안됩니다..ㅠ
현재 AWS Glue 4.0 docker 이미지를 내려 받아 pyspark 커널에서 사용 중이며 섹션 8 판다스 환경에서 airbnb..csv, analyzed_americsv_2023.csv 파일은 문제 없이 잘 열리는데 Json 파일만 열리지 않습니다..ㅠ Renderer Failure: wb.jsonUnexpected non-whitespace character after JSON at position 6858 (line 2 column 1) file_name = "wb.json" df = sqlContext.read.json(file_name) df.printSchema pyspark.sql.utils.AnalysisException: Path does not exist: file:/home/glue_user/workspace/wb.json __ file_name = "pandas.json" df = sqlContext.read.json(file_name) df.printSchema return_value = get_return_value( File "/home/glue_user/spark/python/pyspark/sql/utils.py", line 196, in deco raise converted from None pyspark.sql.utils.AnalysisException: Path does not exist: file:/home/glue_user/workspace/pandas.json pandas.json 윈도우 로컬 환경에서 열면두번째 행에서 첫번째 에서 빨간줄이 나옵니다 혹시 각 딕셔너리를 담는 변수는 따로 필요가 없을까요?
-
해결됨빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
[HDFS] Data integrity; checksum 관련 질문
안녕하세요. 현재 빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술 수업을 수강 중인 학생입니다. HDFS의 Data integrity 부분의 강의를 듣다 궁금한 점이 생겨서 질문 올립니다.checksum은 transmission 과정에서 발생하는 에러로 인해 data가 corrupt 되었는지를 destination에서 판단하기 위해 사용한다고 이해했습니다.근데 "transmission 과정에서 data를 corrupt 시킬만한 에러가 발생했다면 checksum 값도 함께 corrupt될 수도 있는거 아닌가"라는 궁금증이 생겼습니다. 제가 궁금한 점은 아래와 같이 2가지 입니다:1. transmission 과정 중 checksum 값도 corrupt될 가능성이 있는지만약 그렇다면 그런 경우를 대비한 별도의 메커니즘이 존재하는지 답변에 미리 감사드립니다.
-
해결됨IT인을 위한 ELK 통합로그시스템 구축과 활용
docker-composer에서 작업중이었는데 bulk api memory 부족
indexing_pressure.memory.limit 이거를 올려주라는데 혹시 일시적으로 어떻게 올리는 건가요?
-
미해결
(엘라스틱서치) 영어사이트에서 검색시 기본적 검색결과 패턴에 대한 조건..
1. 현상 fishing 검색시 최소단위로 분절되어 "fish", "ing"로 token 검색이 fishing이나 fish, fishing이 우선순위 없이 결과에 노출됨 *현재 검색은 and 조건에 따라 -> must문으로 처리 2. 원인 형태소 분석기를 통해 분절된 후에 동의어처리가 되면서 같은 단어로 인식 3. 확인 사항 **고객요청) keyword("fishing")를 분절하지 않고 검색에 활용 -> 이렇게 하더라도, fish도 결과에 나와야 한다. ** 개발팀화인) 사용자 입력 값 자체에 score를 높여 검색 상단위 위치 fishing -10 fish -5 ing -5 -> 사용자 사전에 fish / ing 따로 등록필요하고, 모든 단어에 적용해야 하는 수고가 있음 ** 어떻게 검색에 대해 의사소통을 해야하는지, 기본적은 사항