[Elasticsearch] 동의어 처리하기
·
데이터엔지니어링
Elasticsearch에 데이터를 넣고, search로 검색을 하면 내가 쓰건 검색엔진과 똑같겠지? 라고 생각하면 오산이다.기본적인 setting으로는 'ai'는 'ai'만 검색할 수 있고, 'llm'이나 'gpt'같은 유사하게 사용되는 단어는 검색할 수 없다.혹시나 'ai는'이 포함된 글을 검색하는 것도 불가능하다. 그렇다면 Elasticsearch에서 이러한 동의어는 어떻게 처리할까?기본 설정에서의 'ai' 검색index 설정 및 document 삽입# synonyms_test index 생성PUT /synonyms_test# _bulk API를 통해 동시에 여러개의 document 삽입POST /synonyms_test/_bulk{ "index": { "_id": 1 } }{ "descriptio..
Elasticsearch, Airflow 활용하기 - 3. Airflow 환경설정
·
ML_DL/MUJAKJUNG (무작정 시리즈)
Airflow 설치windows 환경에서는 Airflow 사용이 쉽지 않기 때문에, Docker를 활용 Airflow 실행Docker 설치 : https://www.docker.com/products/docker-desktop/yml 파일 링크 : https://airflow.apache.org/docs/apache-airflow/2.10.5/docker-compose.yaml초기 ID와 Password는 airflow이며, 내부에서 비밀번호 변경이 가능하다.cd /airflow/docker-compose upDAG 파일 생성FastAPI의 서버와 Docker로 실행한 Airflow는 localhost라도 기본적으로 통신할 수 없기 때문에,  host.docker.internal:8000으로 해야 api..
Elasticsearch, Airflow 활용하기 - 2. Elasticsearch 설정
·
ML_DL/MUJAKJUNG (무작정 시리즈)
Elasticsearch 실행elasticsearch.bat 로 elasticsearch 실행보안 설정 해제로컬 환경의 보다 편리한 테스트를 위해 아이디/비밀번호 가 필요한 보안 설정 해제/elasticsearch/config 폴더의 elasticsearch.yml 파일의 xpack.security.enabled를 false로 변경Elasticsearch 객체 생성 및 index 생성indices : index의 복수형으로 물리적인 저장 공간을 의미title, url, published, timestamp를 field로 하는 index 생성from elasticsearch import Elasticsearches = Elasticsearch("http://localhost:9200")INDEX_NAME ..
Elasticsearch, Airflow 활용하기 - 1. 환경설정
·
ML_DL/MUJAKJUNG (무작정 시리즈)
1. 가상환경 생성 및 라이브러리 설치 (conda activate 제발 먼저 하자) Elasticsearch 로컬 다운로드 Download ElasticsearchDownload Elasticsearch or the complete Elastic Stack (formerly ELK stack) for free and start searching and analyzing in minutes with Elastic....www.elastic.co conda create -n ainews python>=3.12conda activate ainews# fastapi 관련pip install fastapi pydantic uvicorn# elastic 관련pip install elasticsearch# airf..
Data Lake, Data Warhouse, Data Mart
·
데이터엔지니어링
Data Lake원시 데이터 및 비정형 데이터 (구조화, 반구조화, 비정형)실시간 분석이나 ML에 활용검색 및 처리가 비교적 어려움ex - SNS의 게시물, 댓글, 좋아요, 영상 데이터 등Data Warhouse여러 부서의 데이터를 통합하여 저장데이터를 구조화된 형식으로 저장주기적 업데이트 (실시간 처리보다 배치 처리 방식)Data Mart금융, 마케팅 또는 영업 부서와 같은 특정 사업부의 요구 사항을 지원하는 data warehousedata warehouse 보다 작은 규모로 운영빠르게 접근하여 분석 가능구조화된 데이터 사용
[LeetCode] 1768. Merge Strings Alternately
·
코딩테스트/Python
🔗 Problem Linkhttps://leetcode.com/problems/merge-strings-alternately/description/❔Thinkingword1, word2 두 단어가 주어질 때, 두 단어의 각 글자를 번갈아 합친 단어를 반환한다.길이가 다르다면, 남은 길이의 단어는 그대로 붙인다.Input: word1 = "abc", word2 = "pqr"Output: "apbqcr"Explanation: The merged string will be merged as so:word1: a b cword2: p q rmerged: a p b q c r💻Solution1. stack을 활용한 풀이class Solution: def mergeAlternately..