TIL 37

2022/10/21 TIL

루씬인액션 루씬의 관리와 관련된 부분과 사례 연구부분을 읽었다. 인덱스가 깨졌을때 어떻게 대응해야하는지, 복원하는 절차는 어떤 것이 있는지 방법을 보았고, 인덱스가 깨졌는지 여부를 알 수 있는 프로그램도 보았다. 사례연구에서는 서비스에서 특정한 용도로 어떠한 분석기를 쓰고, 필터링을 어떻게 했다같은 실용적인 예시를 볼 수 있었다. 한편 아쉬운점은 서비스 종료한 케이스가 많아서 링크드인 사례만 확인 가능 했던 점이다. 루씬 인 액션 끝! 허클베리핀 240페이지까지 읽었다. 계속해서 자유주를 향해 둘은 이동해나간다. 그 과정에서 핀이 재치(라고 쓰고 거짓말이라고 말한다)를 통해서 상황을 모면하고 모험을 계속 떠나는 내용을 볼 수 있다. 이 과정에서 핀이 거짓말을 하다보면 후회를 하게 된다는 것, 그리고 낯선..

TIL 2022.10.22

2022/10/20 TIL

루씬 인 액션 필수 확장 기능, 루씬을 포팅한 엔진, 라이브러리에 대한 소개, 성능 튜닝과 관련된 부분에 대해서 읽었다. 필수 확장 기능에서 기억에 남는 내용은 스팬 쿼리의 경우 성능이 좋지 않기 때문에(아마 토큰의 위치정보들을 훑어봐야하기 때문에, 도큐먼트 내부를 까보는 비용이 적지 않을 것 같다는 생각이다.) 쿼리 필터를 통해서 미리 검색 대상을 줄여두고 사용하는 것을 잊지 말아야한다는 내용이 기억에 남았다. 그리고 GeoCode 관련된 내용도 나왔다. 예전에 Firebase에서 제공해주는 FireStore에서 GeoHash를 사용했는데, 그때는 구글이 이런 알고리즘을 구상했구나 했는데, 그전에 이미 있었다는 것을 알게 되었다. 그리고 루씬을 포팅한 라이브러리 Clucene, dotLucene등에 대..

TIL 2022.10.21

2022/10/18 TIL

루씬 인 액션 루씬 인 액션 2부를 읽기 시작했다. 티카를 사용하는 방법과 필수 확장기능에 대해서 배웠다. 필수 확장 기능에서 기억에 남는 것은 N그램필터와 스태머링(단어의 기본형찾아주기),싱글(Shingle)이 있었다. N그램이란 단어를 문자 단위로 토큰을 만드는것인데, 문자의 길이가 최대 단어의 길이만큼 길어질 수 있다. 예를 들어, lettuce 의 N그램은 l,e,t,t,u,c,e,le,et,tt,tu,uc,ce,let,ett,ttu,tuc,uce,lett,ettu,ttuc,tuce,lettu,ettuc,ttuce,lettuc,ettuce,lettuce가 있다. 이렇게 단어의 N그램을 토큰으로 만들어두면 검색어의 일부 혹은 부분문자열만으로도 문서를 찾을 수 있다는 장점이 있다.(물론 검색어의 중요..

TIL 2022.10.18

2022/10/17 TIL

루씬 고급 검색 기법과 검색기능 확장 검색에서 기본적인 키워드로 검색하는 것 뿐 아니라, SpanQuery와 같이 Term사이의 거리를 확인해서 검색하거나, 텀벡터를 이용한 검색, RangeQuery등에 대해서 배울 수 있었다. 그리고 Term을 저장할때 페이로드를 같이 저장할 수 있는데, 이때 이 페이로드를 통해서 다양한 검색기능을 구현할 수 있는 것을 배웠다. 오늘까지 해서 루씬의 일반적인 기능에 대한 내용은 모두 읽었다. 내일부터는 확장기능에 대해서 읽게 될 것 같다. 허클베리 핀의 모험 허클베리 핀의 모험을 읽기 시작했다. 오늘은 60 페이지 정도 읽었다. 미국인들의 정서를 잘 표현한다는 마크트웨인의 작품인데, 읽고 많은 감상을 얻길 바란다. 소설이다보니, 다 읽고나서 이야기를 해보려고 한다.

TIL 2022.10.18

2022/10/15 TIL

루씬 분석기 루씬 분석기는 최상위 추상클래스로 Analyzer를 사용하고 있고 이를 상속받은 다양한 분석기를 제공받거나 구현받아 사용할 수도 있다. Standard Analyzer 가 영문을 작성할때는 보편적으로 사용할 수 있다고 하는데, 이외에도 불용어만 없애주거나 소문자로만 바꿔주는 분석기도 존재한다. 분석기를 여러개 적용할수도 있으니 작성해서 확인해보면 좋을 것같다. 한중일 아시아 언어를 위한 CJKAnalyzer도 존재하니 한국어 텍스트를 분석할때는 이런걸 써봐도 좋을 것같다.

TIL 2022.10.17

2022/10/11 TIL

요새 취준이 삶에 끼어들면서 라이프사이클이 조금씩 어긋나고 있다. 다시 다잡아보고자 책읽기를 다시 라이프사이클에 넣어서 생활하려고 한다. 수영도 빠지지 말아야지. 이 글을 보고있는 미래의 내가 지금보다는 나은 고민을 하면 좋을 것 같다. k8s korea group online 오늘 밋업을 처음 들어가봤는데, 도커 컴포즈에서 RKE2로 마이그레이션한 이야기를 들을 수 있었다. 왜 RKE2로 옮기게 되었는지, 어떤 방식으로 운영하는지 같은 부분에 대해서 공유를 해주셔서 유의미한 시간을 보낼 수 있었다. 어서 쿠버네티스를 더 공부해서 위드유에서도 최종 발표전에 적용을 해볼 수 있으면 좋을 것 같다. Lucene Index Reader and Index Writer 루씬 인 액션을 이어서 읽고 있다. 오늘은 ..

TIL 2022.10.12

2022/10/06 TIL

ACM 세팅 오늘 개인정보처리방침 S3에 올리고 CF랑 S3연결하는 작업을 했는데 오랜만에 CF세팅을 해보니 ACM을 통해서 발급받은 인증서나 IAM Certificate를 통해서만 CName을 등록할 수 있는 것을 확인했다. 전에는 다른 도메인 사이트 써서 도메인 구매처에 로그인하고 그랬던것이 불편했는데, route53으로 도메인도 사버리니까 한번에 작업하는건 확실히 편하게 작업할 수 있었던 것 같다. 카카오톡 소셜 로그인 Flutter + Webview 구현 이렇게 제목 달아놓으면 다들 runJavascript나 자바스크립트 채널로 구현했을거라고 생각할텐데 코틀린에 메쏘드 채널 연결해서 인텐트를 직접 넘기는 방식으로 구현했다. 결국 안드로이드 코드 만지는건 못하는구나 싶었다. 이거는 현재 버전으로 블..

TIL 2022.10.07

2022/10/04 TIL

깃헙 워크 플로우 작성 오늘은 CI 작성을 위해서 깃헙 워크플로우를 작성했다. 코드 작성을 하고 Test를 자동으로 돌려주도록 만들면 더 마음 편하게 코드를 작성하고, 효율적으로 작업할 수 있을 것 같았다. 그래서 소마 프로젝트에 CI를 적용했다. 작성하고 나니까 CI가 있으니 Test에 대한 필요성도 더 강하게 느낄 수 있게 되어서 좋았다. 그리고 이 내용을 보는 분들이 만약 안해봤다면, 꼭 해봤으면 좋겠다. Github에 작성되어있는 예시들과 인터넷에서 검색한 내용으로 작성하니 생각보다 빠르게 적용할 수 있으니 쉽게 할 수 있다. 면접 준비 소마에서 박재홍 멘토님이 면접 준비 멘토링을 열어주셨다. 들어가서 멘토링을 받아보니 스스로를 점검하고 다른 사람들의 의견을 들어볼 수 있어서 좋았다. 면접은 결국..

TIL 2022.10.06

2022/09/24 TIL

오늘은 라인 코딩테스트와 카카오 코딩테스트가 있어서 하루종일 코딩테스트만 봤다. 라인 코딩테스트 5문제중에서 2문제 풀었다. 3번 문제도 거의 다 풀었는데, 시간이 약간 부족해서 못 풀어서 아쉬웠다. 접근은 그래도 좋았던 것 같다. 카카오 코딩테스트 카카오 코딩테스트에서는 1문제를 풀었다. 개념적으로는 잘 이해했는데, 에러가 있어서 틀린 문제가 2개 있었다. 이번에 코딩 테스트를 보면서 느꼈던 점은 몇가지 있었는데, 다음 기회에는 이것들을 잘 반영하면 좋을 것 같다. 1. 코딩테스트는 가장 중요한 것이 문제요구사항을 제대로 이해하는 것이다. 전에 본 유형이라고 생각하고 막 풀기 시작하면 안된다.. 운이 좋아서 유형이 맞으면 다행이지만 조건 하나만 바뀌어도 알고리즘 카테고리 자체가 변하는 경우가 생기니 문..

TIL 2022.09.25

2022/09/22 TIL

융합 IOT 오늘 수업에서는 음향센서 파트1을 다뤘다. 합성곱을 통해서 청음 지점에서 얻을 수 있는 음파에 대해서 계산하는 수식에 대해서 배웠다. 타우로 적분하는 시점에서 약간 머리가 아팠는데 주말에 리뷰를 다시 해야할 것 같음. 카카오 2020 코딩테스트 문제 리뷰 오늘 나동빈 멘토님이 자유 멘토링을 해주셔서 2020 코딩테스트 문제에 대해서 리뷰하는 시간을 가졌다. 기존에 풀었던 것보다 더 쉽게 푸는 방법을 들을 수 있어서 좋았다. 코딩테스트 준비 유형별로 문제를 풀기 시작했는데 오늘은 프로그래머스에서 해시와 스택, 큐를 풀어봤다. 내일은 카카오 2021 코딩테스트랑 2차원 배열 돌리기 문제를 쭉 풀어봐야겠다. Kubeconfig eks에 올려둔 클러스터에 붙기 위해서 kubeconfig 세팅을 했다..

TIL 2022.09.22