A
AB180
July 13, 20231회
적정 엔지니어링으로 검색 속도 10x 빠르게 만들기

간단 소개
에어브릿지의 트래킹링크 검색 성능을 개선하기 위해 검색용 테이블을 생성하고 MySQL Trigger를 사용하여 10배 빠른 검색 속도를 달성했습니다.
AI Summary
- 문제 상황 및 목표
- 에어브릿지 트래킹링크 검색 기능의 성능 저하, 분 단위 검색 소요 시간 발생
- Elasticsearch 도입 고려했으나, AuroraDB와의 실시간 동기화 어려움 및 운용 비용 문제로 보류
- 기존 DB에 검색용 테이블 생성하여 검색 성능 개선 목표 설정
- 문제 해결 전략
- 역직렬화 테이블 방식은 생성 성능 저하 문제로 제외
- 검색 테이블 단순화: 검색 및 조회에 필요한 모든 필드를 컬럼으로 포함, Join 최소화, 정규식 대신 LIKE 사용
- 모든 컬럼에 인덱스 적용, varchar 타입 컬럼 길이 제한 (50자)
- MySQL Trigger를 사용하여 데이터 적재, 생성 로직 영향 최소화, 하나의 트랜잭션으로 관리, Airflow로 데이터 누락 방지
- 성과 및 결론
- 검색 속도 10배 향상 (3분 -> 2초), 슬로우 쿼리 감소, 트래킹링크 다운로드 기능 성능 향상
- 적절한 엔지니어링 방법 고민 및 선택 과정에서 RDB 동작 방식에 대한 이해도 향상
- 서비스 규모 확장에 따른 추가적인 문제 해결 필요성 인지
Next Feeds

ML gpu model server 성능을 유지하며 cpu server로 전환한 경험 공유
G플레이스AI개발팀의 GPU 모델 서버를 CPU 서버로 전환하여 성능을 유지하고 비용을 절감한 경험 공유.
CPU servingGPU 자원Knowledge DistillationipexTorchServe
2023. 7. 13.
네이버플레이스

초분광 기술과 IoT의 접목 사례
초분광 기술은 AI와 결합하여 다양한 산업 분야에서 품질 관리, 불량 검출, 공정 자동화 등에 활용될 수 있으며, 자동화 및 효율성 향상에 기여한다.
초분광AI데이터 큐브딥러닝불량 검출
2023. 7. 11.
skplanet
실무에서 적용하는 테스트 코드 작성 방법과 노하우 Part 1: 효율적인 Mock Test
효율적인 Mock Test를 통해 테스트 코드 작성 생산성을 높이고, 유지보수성을 확보하는 방법을 제시합니다.
테스트 코드Mock TestMockBeanTestConfigurationjava-test-fixtures
2023. 7. 10.
카카오페이
![[여기보기] WAS의 정보는 개인정보 다루듯이 보호하라](https://netmarble.engineering/wp-content/uploads/2023/07/preview.png)
[여기보기] WAS의 정보는 개인정보 다루듯이 보호하라
WAS 정보는 개인정보처럼 중요하게 다뤄야 하며, 불필요한 파일 제거, HTTP 응답 헤더 수정, HTTP 상태 코드 메시지 관리 등을 통해 보호할 수 있다.
WAS보안HTTP 응답 헤더HTTP 상태 코드정보 보호
2023. 7. 5.
넷마블

서비스 기획자의 뷰티컬리로 확장하기
컬리의 뷰티컬리 확장 과정에서 서비스 기획자의 역할과 우선순위 설정, 협업 전략을 분석합니다.
뷰티컬리서비스 기획분할 정복고객 여정협업
2023. 7. 5.
컬리

사운드 리소스 전달 WebApp 만들기
게임 리소스 전달을 위한 Web App 개발 경험 공유: 단순한 설계로 사용자 부담을 줄이고 효율적인 버전 관리를 가능하게 함.
리소스 전달버전 관리Web AppNext.jsGit
2023. 7. 4.
데브시스터즈