IT 14

Elasitcsearch 지정된 mapping 정보만 입력되도록 설정하는 방법

-사용목적 elasticsearch를 사용할때 mapping 정보를 입력해서 사용하곤 합니다. 이는 특정 필드를 특정 타입으로 저장하기 위한 일정의 정의 입니다. 그런데 es를 사용할때 위와 같은 maaping의 경우 지정된 필드명에 다른 타입이 들어가는 것은 맊을 수 있으나 지정되지 않은 다른 이름의 필드가 들어가는 것을 맊을수는 없습니다. 시스템 로그를 수집하기 위해 사용하는 ES의 경우는 지정되지 않은 다른 값이 들어와도 상관 없으나(오히려 받아야됨) 무언가 시스템을 운영하는 목적의 es에는 다른 이름의 필드값이 들어가는 것은 좋은 상환은 아닙니다. "type_num" : { "type": "integer" } 위와 같이 mapping 정보를 입력후에 다른 타입의 데이터를 넣으면 입력 에러가 발생하..

IT/elasticsearch 2023.10.10

elasticsearch disk watermark 란 ? 그리고 사용방법

안녕하세요 elasticsearch에는 Disk watermark 기능입니다. 이 기능은 ElasticSearch의 노드 디스크가 100%가 되는것을 막기 위한 ElasticSearch의 주요 기능입니다. 특히 모니터링 시스템에 elasticsearch를 사용하다 보면 들어오는 로그보다 ILM에서 삭제되는 로그보다 많아서 디스크가 생각보다 빠르게 증가합니다. 그리고 노드 중에 하나라도 일정 수치 이상이 넘어가면 watermark 가 동작합니다. disk watermark 디스크 워터마크에 여러 가지 설정이 있지만 쓴이가 사용하는 옵션은 보통 세 가지 정도를 사용합니다. 정책(기본값) 설명 disk.watermark.low(85%) 노드에 추가 샤드의 생성을 중지합니다. disk.watermark.high..

IT/elasticsearch 2023.09.03

[React] 리액트 useEffect 사용방법

리액트 개발을 진행할 때, 특정 컴포넌트가 처음 호출될 때 특정 명령어를 실행하기 위해 useEffect를 사용합니다. useEffect는 컴포넌트가 마운트 될때 그리고 언마운트 될 때 처리할 로직 작성해서 컴포넌트 실행 간에 값을 계산하거나 컴포넌트가 언마운트될때 특정 값을 반환 혹은 정리할 때 사용합니다. useEffect의 기본 사용방법은 아래와 같습니다. useEffect(() => { //마운트시 동작할 로직 return () => { //언마운트시 동작할 로직 }; }, []);//체크할 변수 위에 코드에 // 마운트시 동작할 로직, 언마운트시 동작할 로직을 작성하고 해당 컴포넌트가 호출될 때 동작하게 되어있습니다. 그리고 [] 해당 영역에는 useEffect를 동작하도록 하는 변수명을 작성할..

IT/React 2023.08.29

[ElasticSearch] 인덱스 mapping / dynamic strict

ElasticSearch의 인덱스 는 기존의 RDB처럼 스키마를 생성할 필요가 없습니다. 이는 기존에 존재하지 않는 인덱스에 Create API 만 호출하면 해당 인덱스가 생성되며, 들어온 정보로 Dynamic 매핑정보를 생성합니다. 이번 블로그에서는 인덱스 필드 속성 즉 mapping에 대해 알아보겠습니다. Dynamic mapping 사용자가 전달한 정보로 ElasticSearch에서 알아서 인덱스의 mapping 정보를 생성합니다. 사용자가 전달한 정보가 스트링이라면 text/keyword , 정수숫자라면 long, 논리값이라면 boolean, 날짜라면 data이런식으로 매핑이 자동으로 생성됩니다. 이런식의 Dynamic 매핑 덕분에 최초의 데이터를 쉽게 넣어서 매핑 정보를 확인 하거나 할때 유용하..

IT/elasticsearch 2023.08.21

Elasticsearch 여러 필드 검색 하기 COPY_TO사용법

Elasitcsearch는 inverted index를 이용해서 아주 빠르게 우리가 원하는 내용을 찾을 수 있습니다. 오늘은 Elasitcsearch를 이용해서 여러 필드를 검색하는 방법에 대해 작성해 보겠습니다. 위에 내용처럼 ES는 Inverted index를 사용한 검색을 하기 때문에 기본적으로 DSL을 사용합니다. 찾으려는 내용이 Text 필드 이거나 Keyword필드일 때 각각 match와 term을 사용해서 검색을 할 수 있습니다. 그런데 간혹 2가지 이상의 필드를 검색할때 어떻게 검색해야 하는지 난감한 순간이 있는데, 그럴 때 제가 사용했던 방법에 대해 말씀드리겠습니다. Text필드 검색 text 검색일때는 multi_match를 사용하면 됩니다. 예를 들어서 아래와 같은 인덱스가 있다고 할..

IT/elasticsearch 2023.08.14

Python Mutable과 Immutable 객체

python 개발을 하다 보면 에러에 Mutable과 Immutable에 대한 에러를 많이 볼 수 있다. Mutable과 Immutable은 쉽게 말해 변환가능 , 변환불가이다. 변수는 내용을다 변경할 수 있는 거 아닌가? 하는 생각이 처음에 들었었고 해당 내용들이 이해가 잘 가지 않았었다 그러던 도중 깊은 복사와 얕은 복사의 개념을 공부할 때 정확한 내용을 알 수 있었다 Immutable을 아래 예시를 보면서 알아보자 보통 우리는 변수를 선언하고 조회할 때 아래와 같은 방식을 사용한다 아래 내용은 string 변수를 선언한 내용이다 A = "대한민국" B = A print(A) #대한민국 print(B) #대한민국 B = "한국" print(A) #대한민국 print(B) #한국 A변수에 대한민국을 선..

IT/python 2023.08.10

Elasticsearch index template 만들기

elasticsearch 에서는 R-DBMS의 테이블의 스키마/아키텍쳐와 같은 것이 elastic의 인덱스(테이블)에는 존재하지 않습니다. 이를 비/반정형 데이터라 부르며 정형 데이터와 달리 넣는 그대로 네이과 내용이 들어간다(elastic은 반정형 데이터 입니다) 그렇다면 elastic에서 데이터의 구조가 없이 들어간다면 나중에 통계나 서치를 하는 부분의 문제가 생길수 있습니다. 그렇기 때문에 보통은 index를 생성할때 mapping이나 setting을 할수 있으나 이도 인덱스가 생성될때 마다 정의를 하기에는 어려운 일입니다. 그래서 elastic에는 index_template 라는 기능이 있으며 , template 사용시 특정인덱스의 생성시 특정 컬럼(이름)의 특정 데이터 형테를 지정할수 있습니다...

IT/elasticsearch 2022.09.14

elasticsearch - ilm 설정하기

elasticsearch 에서는 시계열 인덱스 저장 관리를 hot, warm, cold 로 진행을 할수 있다 이는 서버의 자원을 효율적으로 쓰기위한 방법이라고 생각하면 된다 서버 자원이 전부 좋다고 한다면 hot 혹은 그냥 data_contant 노드에 넣어두면 되나 우리는 조금이라도 서버를 효율적으로 사용해야 하기 때문에 ILM을 설정해서 운영하는것이 효율적이라 할 수 있다 * 추가로 같은 종류의 노드를 운영하는 서버는 스펙이 같은게 좋습니다. 서능이 낮은 서버가 있다면 해당 인덱스의 속도는 하향 평준화 됩니다. 참고 자료 https://www.elastic.co/guide/en/elasticsearch/reference/8.4/index-lifecycle-management.html ILM: Mana..

IT/elasticsearch 2022.08.30

웹 호스팅 블루호스트(blue host) 환불받기

처음 블로그 준비하면서 1년을 할인가로 결재한 bluehost 호스팅 서비스 몇 달 이용결과 올릴 수 있는 용량이나 속도 문제로 다시 티스토리로 이동하고 생각 없이 놔두었더니 할인이 끝난 가격으로 연장 결재가 되어버렸다 카드사에 blue*ost라고 나와있어서 뭔가 했다가 138달라가 결재된 걸 보고 바로 환불을 진행했는데 생각보다 쉽게 환불받을 수 있었다 1.블로호스트 서비스 접속 일단 블루호스트 웹페이지에 접속한다 Best Web Hosting 2021 - Domains - WordPress - Bluehost Best Web Hosting 2021 - Domains - WordPress - Bluehost Build your website with WordPress With Bluehost, you ..

IT 2021.03.23

갤럭시 탭 A with S Pen (Wi-Fi) / SM-P200 개봉기

정말 오랜만에 신형전자 제품을 사고 개봉기를 올리네요 지금까지 사용하던 넥서스 7 2세대가 드디어 고장이 났습니다, ㅠ,.ㅠ2013년에 30만원 정도로 구매 후 약 7년간의 노예 생활 후 주인의 잘못된 선택으로 커펌 개조를 받다가 넷플릭스도 재생할 수 없는 몸으로,..... 그래서 그만 놓아주려고 합니다. 그리고 새로운 신 노예로 영입을 한게 바로 오늘 개봉기를 보여드릴 갤럭시 탭 A with S pen 입니다. 처음 태블릿을 다시 구매하겠다고 마음을 먹고 아이패드와 갤럭시탭 그리고 기타 저렴한 모델들을 많이 알아봤습니다. 오랜만에 다나와에서 제품을 알아보니까 정말 많은 태블릿이 있었고 이놈의 결정병으로 인해 약 한 달간의 방황을 하다가 결정한 제품이 갤럭시 탭 A with S pen 이였습니다. 제품의..

IT 2020.04.01