일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- Selenium
- mysql
- Analyzer
- Aggregation
- Elasticsearch
- 테슬라
- 아이온큐
- file download
- dbeaver
- KNN
- TSLA
- JPA
- Query
- IONQ
- Elastic
- aqqle
- elasticsearch cache
- java
- java crawler
- NORI
- request cache
- API
- Docker
- redis
- ann
- api cache
- aggs
- vavr
- Cache
- 양자컴퓨터
- Today
- Total
목록분류 전체보기 (203)
아빠는 개발자

이스라엘이랑 하마스랑 붙었다.. 이스라엘이 지상군을 가자지구에 침투시키면 x 되고 헤즈볼라 참전하면 x 되고 환율은 고점인상태에서 조금내렸지만 1350원대.. 기름값도.. 살짝내렸지만 아직도 90불 근처 아이온큐.. 이색.. 일봉을 보아하니.. 그냥 x 됐다는 생각만 들긴하지만 이미 오버슈팅해서 15%이상 더 매수한 상태.. 서학개미가 주포였나... ㅋ

Elasticsearch high level client 를 사용해서 거리안에 있는 위치를 구하는 API 를 만들어보자 우선 위도 경도를 어떻게 구할것이냐.. google map에서 확인할 수 있다는데 안나오드라.. 그래서 검색해보니 찾은 사이트 http://map.esran.com/ 여기서 확인할 수 있다. 지역을 검색하고 지도를 클릭하면 위도, 경도를 확인 할 수 있음. 컨트롤러에서는 거리만 받을 예정 @CrossOrigin("*") @ApiOperation(value = "search", notes = "검색") @GetMapping("distance") public CommonResult getDistance( @ApiParam(value = "distance") @RequestParam(valu..

검색성능 개선 final 이다. 지금까지 테스트 해본 결과를 바탕으로 구조를 잡아서 테스트 ( final 이라고 해놓고 진격의 거인마냥 final part 1, final part 2, final 1기 1쿨 이렇게 증식되지 않기를 바랄뿐..) 우선 이슈는 픽업 서비스 오픈 이후 response time이 튀는 현상이 발생했다. 당연히 검색쿼리로 데이터 조회 후 처리 로직이 추가되었으니 당연히 응답시간이 늘어나는건데 이것이 문제가 되고 있으니.. 늘어난 응답시간은 100ms 이하라서 사용자가 인지하기 힘든 속도이긴 하나. cloud watch 의 모니터링 대시보드에선 널뛰기를 하는 모습으로 나온다. 그래도 로직이 추가될때마다 성능이 저하된다면 문제가 맞긴 한듯하다 cloud watch의 ALB 대상그룹의 ..

메소드 별로 redis 케시를 태워서 검색 성능을 최적화 해보자 Cache Api 에서 multi_match 쿼리 1 회, multi_match 쿼리 + Aggs 3회 를 실행한다. file system cache : 적용 redis cache : 미적용 API 평균 : 58.97 API 평균 : 58.28 API 평균 : 58.19 Cache Api 에서 multi_match 쿼리 1 회, multi_match 쿼리 + Aggs 3회 를 실행한다. 여기서 Aggs 처리하는 메소드에 redis cache 를 적용하고 cache key 는 country code 로 한다. file system cache : 적용 redis cache : 적용 API 평균 : 61.48 API 평균 : 13.01 API 평..

검색결과중 일부 메소드에서 처리하는 데이터 들만 캐싱해야하는 상황.. 일단 구현해보자 https://father-lys.tistory.com/42 에서 세팅한 redis 정보를 활용 우선 컨드롤러 생성 CacheService 의 getCaches 를 호출 package com.doo.aqqle.controller; import com.doo.aqqle.model.CommonResult; import com.doo.aqqle.service.CacheService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import lombok.Requ..

5일전 아이온큐(https://ionq.com)가 랙 장착형 엔터프라이즈급 양자 컴퓨터인 ‘아이온큐 포르테 엔터프라이즈(IonQ Forte Enterprise)’ 및 ‘아이온큐 템포(IonQ Tempo)’를 공개했다. 이 기사에서 내가 주목하는 문구는 아이온큐는 이들 엔터프라이즈급 시스템이 기업과 정부기관 등 기존에 구축한 인프라에 양자 기능을 접목하고자 하는 고객들을 위해 설계되었으며 아이온큐 포르테 엔터프라이즈는 기존의 현대적인 데이터 센터에 양자 컴퓨팅이 쉽게 접목될 수 있도록 개발되었다. 신제품은 프로세스 최적화, 양자 머신러닝, 상관 관계 분석 및 패턴 인식을 포함한 복잡한 컴퓨팅 문제를 위해 설계됐고, 기존 데이터 센터 인프라 전반에 쉽게 배치될 수 있는 컴팩트한 폼 팩터를 제공한다. #AQ ..

지난시간 elasticsearch 의 file system cache 를 사용해서 성능을 올려보았는데 https://father-lys.tistory.com/40 [java] API - file system cache (request cache) API 를 만들고 응답시간을 측정해서 최적의 성능을 만들어 보자 일단 제물이 될 index 820만건의 location-index 일단 aqqle 의 shop API 를 응용해서 후다닥 만들어 보자. 복붙해서 이름만 바꾸니까 1분 미 father-lys.tistory.com 캐싱하면 redis 니까 함 넣어보잣 우선 redis 설치 https://father-lys.tistory.com/41 그리고 aqqle api 에 redis 설정 1. build.gradl..

1. Redis 도커 이미지 가져오기 일단 Redis 도커 이미지가 필요합니다. docker pull 명령어로 redis 최신 버전을 가져옵니다. docker pull redis 이미지를 잘 가져왔는지 확인하려면 docker images 명령어로 확인합니다. 2. docker-compose.yml 작성 다음과 같이 docker-compose.yml 파일을 작성합니다. # 파일 규격 버전 version: "3.1" # 실행하려는 컨테이너들 정의 services: # 서비스명 redis_container: # 사용할 이미지 image: redis:latest # 컨테이너명 container_name: redis_test # 접근 포트 설정(컨테이너 외부:컨테이너 내부) ports: - 6379:6379 # ..

API 를 만들고 응답시간을 측정해서 최적의 성능을 만들어 보자 일단 제물이 될 index 820만건의 location-index 일단 aqqle 의 shop API 를 응용해서 후다닥 만들어 보자. 복붙해서 이름만 바꾸니까 1분 미만 컷 지금은 bool > filter > term 쿼리로 조회하니 응답속도가 빠르다. 일단 이 상태에서 리소스 사용과 응답속도를 측정해보잣 캐싱이 안되고 있지만 너무 빠르다 일단 지난 캐시 테스트와 같은 구조로 multi_match 쿼리 와 count집계(aggs) 를 두번 추가 전체쿼리 더보기 { "size":100, "query":{ "bool":{ "must":[ { "multi_match":{ "query":"country_code", "fields":[ "CO^1...

검색대상 products index (alias : shop) index 의 prefix 랑 alias 를 맞춰야 겠다. 쿼리의 구조는 아래와 같은데.. 뭔가 복잡하네 query > function_score > query > bool > must , should query > function_score > functions > filter > match_all query > function_score > functions > script_score > script 위의 구조에서 script 의 유사도 비교는 cosineSimilarity 로 별다른 계산로직을 태우지 않고 일단 실행 결과값에 vector 제외 (excludes) API swagger 가 설치되어 있으니 검색 테스트 response 전체 ..