Records
기록
기술, 일상, 생각, 프로젝트, 만냥구름의 기록을 모았습니다.AI, Backend, Agent, 그리고 만냥구름. 배우고 만들고 사랑하는 것들을 기록합니다.

눈으로만 봤던 납땜을 직접 해봤다.
76만 원에 산 모니터의 수리비가 40만 원대라는 말을 듣고, 유튜브 쇼츠에서만 보던 납땜을 처음으로 직접 해봤다.

요즘 나는 AI로 노래를 만들고 있다
Suno로 노래를 만들고, ChatGPT와 Codex로 영상 업로드 파이프라인을 만들며 느낀 AI 시대의 진입장벽과 창작에 대한 생각입니다.

AI가 코드를 써주는 시대에, 우리는 무엇을 책임져야 하나
AI Advisor 회고 이후, AI가 개발문화를 바꾸는 시대에 엔지니어와 리더가 무엇을 책임져야 하는지 개인적인 경험을 바탕으로 정리한 글입니다.

3km도 못 뛰던 내가 100일 만에 하프를 완주했다 (국제신문 부산마라톤)
3km도 제대로 못 뛰던 내가 100일 동안 300km를 달리고, 제27회 국제신문 부산마라톤대회 하프를 꼴찌로 완주한 회고.

회사에서 AI Advisor로 보낸 3개월 회고
회사에서 AI Advisor 역할로 3개월간 선행 실험을 진행하며 겪었던 착각과 실패, 그리고 그 과정에서 얻은 배움과 앞으로의 가능성을 정리한 회고입니다.

우왕좌왕 Postgres 디비 마이그레이션 충돌기
생각한 대부분의 문제는 이미 제기되어 있다. 그리고 그것을 해결하는 것은 의지와 시간에 달려있다.

Spring Jpa ManyToOne 관계 알아보기
Spring Jpa 에서 OneToMany 관점에서 Best Practice 는 양방향 관계를 맺는 것이다. 다만 ManyToOne 관계에서는 단방향이어도 상관 없다.

Spring Jpa OneToMany 관계 Best Practice
단방향 OneToMany 보다는 양방향 OneToMany 가 일반적으로 좋은 선택이다.

Agile 문화를 방해하는 요소들
Agile 을 방해하는 요소는 매우 합니다. 하지만 Agile 을 방해하는 요소를 인정함으로 이를 억제할 수 있습니다.

pgloader 를 사용하여 mysql 디비 postgres 로 마이그레이션하기
pgloader 를 사용하면 mysql 디비를 postgres 로 손쉽게 옮길 수 있다.

mysql vs postgres 짧은 비교
일반적으로 postgres 는 mysql 에 비해 대용량 서비스에서 더 나은 성능을 제공한다.

kotlin spring 에서 유용한 에러 반환하기.
Controller Advice 사용하여 모든 request life cycle 에 적용되는 에러 처리를 하자.

맥에서 쿠버네티스 k3s 환경설정하기
multipass 를 사용하면 쉽다!!

spring 에서 retrofit 으로 soap 통신 하기.
Custom soap converter 를 사용하면 soap xmlns 통신이 충분히 가능하다x

kotlin toString 을 사용하다 생긴 오류
코틀린에서 사용하는 toString() 은 종류가 하나가 아니다.

코틀린 json serializer 만들어보기
코틀린 Serializer 는 리플렉션을 통해 만들 수 있다.

kotlin annotation and reflection
코틀린 어노테이션과 리플렉션은 프로그램을 런타임에 분석하게 해주는 도구이다.

javascript 로 블로그 포스트 가져오기.
함수와 함수와 함수와 함수였다.

Next.js 가 페이지 경로를 생성하는 방식
nextjs 가 제공하는 폴더 디렉토리 구조를 통해 페이지 경로를 제공한다.

포스트의 데이터는 어디에? 그리고 어떻게?
이 포스트의 데이터는 루트디렉토리/data/blog 폴더에 존재한다.

Node.js process.Tick() 이란
nextTickQueue는 process.nextTick() API의 콜백들을 가지고 있으며, microTaskQueue는 Resolve된 프로미스의 콜백을 가지고 있습니다.이 두 개의 큐는 이벤트루프에 포함되어있지 않으며 이벤트루프에 앞서 실행하기 위한 것을 목적으로

Node.js Event loop 파헤치기
🙄 그래서 Event loop 가 뭘까? 이전 포스트에서 Event loop 는 epoll_wait loop 로서 커널에 관심사를 알려주고 커널에서 알림이 blocking 상태를 해제하고 적절한 javascript API 로 변환하는 과정이라고 했습니다. 쉽게 말하

Node.js Event loop 저수준에서 파헤치기
시작하기 앞서 이 포스트는 Node.js 유튜브 영상 을 참조하고 만든 것을 알려드립니다.!!Node.js 의 Event Loop 가 Scale 측면에서 우수하다 라는 말을 알기 위해서는기존에는 요청을 어떻게 처리 했는지를 이해하면 도움이 많이 됩니다.TCP Conne

Redux 기본서!! (feat. react context hook)
기본 Redux 는 간단하게 작용합니다. 중앙화 된 상태저장소가 있고 각각의 컴포넌트들이 그 상태저장소에 접근해서 원하는 것을 가져올 수 있습니다. 자식들에게 상태(state)와 자산(props)을 물려줄 필요는 없습니다.Redux 를 구성하는 3가지 요소가 있습니다.

2. NestJS 블로그 만들기 - 리팩토링과 e2e 테스트!!
이번에는 이전 포스트에서 다뤘던 내용에 대해서 Refactoring 을 하고 테스트도 해보겠습니다.계속 리팩토링 하다보니 위와 같은 구조가 만들어졌습니다.파일 이름이 바뀐 것도 있고, 내부 구현사항이 바뀐 것도 있습니다.리팩토링 하면서 설계의 중요성을 다시 느낍니다.C

Node.js 의 특징과 한계
초기 웹 페이지는 지금처럼 동적이지 않고 정적이었습니다.그런데 동적으로 좀 움직이면 좋겠는데.. 하고 나온 것이 Javascript 입니다.Javascript Javascript 는 브라우저의 자바스크립트 엔진을 통해 DOM Context 를 제어하며 동적인 웹페이지를

2. NestJS 블로그 만들기 - 데이터베이스 연결 (Postgresql)과 User 모듈
저는 오늘 포스팅할 분량의 앱을 만든 후 블로그 포스팅하기 때문에 중간에 오류가 생길 수도 있습니다.오류 내용과 함께 댓글을 달아주시면 저도 알아보겠습니다!!여러분 드디어 데이터베이스에 연결할 시간이 왔습니다!!.실제 연습할 때는 배열 같은 임의 적인 놈을 만들고 나서

[leetcode][45] Jump Game II 문제풀기!
문제풀러가기✈처음 인덱스에서 마지막 인덱스에 도달하려면 몇 번 점프해야할까?해당 인덱스에서 최대 얼마나 뛸 수 있는지는 알려줄게!자세한 문제 설명과 릿코드 홈페이지 참고. 문제풀러가기주어지는 인풋의 길이가 최대 30,000 이기 때문에 최소 O(nlgn) 기법을 써야

[leetcode][44] Wildcard Matching 문제풀기!
문제풀러가기✈간단한 정규식 패턴을 줄게.'?' 이건 하나의 문자를 대체할 수 있는 놈이야.'\*' 임마 이거는 빈 문자를 포함해서 문자열을 대체할 수 있는 놈이야.자 이제 내가 문자열을 줄테니까 이전에 준 패턴으로 만들 수 있는 놈인지 판단해줘!자세한 문제 설명과 릿코
![[🌎elasticsearch] search query 집중탐구 - 1 전처리 과정 대표 이미지](/_astro/elasticsearch-overview.Blt_9ByT_kb8BQ.webp)
[🌎elasticsearch] search query 집중탐구 - 1 전처리 과정
Elasticsearch 가이드북 ✈Elasticsearch 홈페이지 가기 ✈Elasticsearch 는 "text" 로 매핑된 필드의 경우 그 안에 데이터를 Inverted Index 라는 구조로 저장합니다.직역하자면 역 색인, 반대 색인 이런 뜻인데 대충 감이 오시

[DevTip] UUID vs Auto Increment
UUID 는 간단하게 범용 고유 식별자라고 생각하면 편할것 같습니다.예를 들어 내가 뭔가 만들 때마다 식별할 수 있는 고유값을 만들고 싶다면 사용하면 됩니다.문서를 만들고 문서의 고유 식별자를 만들 때도,회원가입을 하고 유저의 고유 식별자를 만들 때도UUID 를 만드는

[leetcode][43] Multiply Strings 문제풀기!
문제풀러가기✈숫자 두개를 문자열로 줄테니 곱해줘!근데 숫자가 엄청 커 ㅎㅎ;;;자세한 문제 설명과 릿코드 홈페이지 참고. 문제풀러가기BigInteger 를 쓰면 매우 쉽지만, 그러라고 문제 푸는거 아니잖아 ? ? ?나는 우리가 학창시절 때 배웠던 곱셈 방식을 이용했다.

[leetcode][42] Trapping Rain Water 문제풀기!
문제풀러가기✈내가 말이야.. 특이한 목욕탕을 만들고 싶거든.. 근데 물이 얼마나 필요할지 잘 모르겠어.. 니가 좀 구해줄래?자세한 문제 설명과 릿코드 홈페이지 참고. 문제풀러가기대표적으로 이런 문제는 대부분 2 pointer 문제더라!!일단 물 높이를 생각해보자. 인풋

[leetcode][40] Combination Sum II 문제풀기!
문제풀러가기✈숫자들을 줄게. 그 숫자들을 조합해서 내가 원하는 숫자가 나오는 조합을 찾아줘!단, 그 찾은 조합끼리 중복이 있으면 안돼!! 그리고 특정 숫자를 내가 준 개수보다 더 많이 쓰면 안돼!!!!자세한 문제 설명과 릿코드 홈페이지 참고. 문제풀러가기모든 경우를 다

2. NestJS 블로그 만들기 - CRUD 로 시작하자.
저는 NestJS 전문가가 아닙니다.저 또한 NestJS 로 어플리케이션을 만들려고 한지 한달이 채 되지 않았습니다.다만 제가 공부하면서 습득하고 이해한 내용을 바탕으로 간단한 어플리케이션을 만들며 기본적인 지식을여러분께 같이 공유하는 것이 제 목적입니다.대부분의 정보

[leetcode][32] Longest Valid Parentheses 문제풀기
문제풀러가기✈"(" 또는 ")" 로만 구성되어 있는 문자열을 줄거야!!유효한 괄호들의 가장 긴 길이를 구해줘!자세한 문제 설명과 릿코드 홈페이지 참고. 문제풀러가기유효한 괄호의 조건은 ")" 가 나왔을 때 "(" 의 개수와 대조해보면 된다!!"()()" -> 유효하다!

[leetcode][31] Next Permutation 문제풀기!
문제풀러가기✈다음 순열 구해라.자세한 문제 설명과 릿코드 홈페이지 참고. 문제풀러가기솔직히 말해서 다음 순열이 뭔데? 뭔데? 하면서 한 5분은 찾아봤다.다음 순열은 예를 들면 다음과 같다.숫자 1,2,3,4 각각 하나씩 있다. 이를 통해 순열을 만들어보면1,2,3,44
![[🌎elasticsearch] Elasticsearch 타입에 대해서 알아보자! 대표 이미지](/_astro/elasticsearch-overview.Blt_9ByT_kb8BQ.webp)
[🌎elasticsearch] Elasticsearch 타입에 대해서 알아보자!
Elasticsearch 가이드북 ✈Elasticsearch 홈페이지 가기 ✈ElasticSearch 의 다양한 기능들을 둘러보기 전 꼭 알아야 할 타입들에 대해서 알아보겠습니다.!!진짜 진짜 진짜 중요하니 꼭 커피 스윽 마시고 읽어주세요!!Mapping 어떻게 Ela

[leetcode][30] Substring with Concatenation of All Words 문제풀기!
문제풀러가기✈문자열과 단어집을 줄테니 단어집의 모오오오든 단어를 포함하는 문자열의 부분 집합을 찾아줘!!자세한 문제 설명과 릿코드 홈페이지 참고. 문제풀러가기단순히 Brute force 기법을 쓴다면 시간제한에 걸리게 된다.자료구조 Map을 통해 특정 문자를 logN

[📣top interview question] Best Time to Buy and Sell Stock II 문제풀기!
문제풀러가기✈어떤 물건의 가격이 매일 달라..매일 달라지는 가격을 줄테니...나를 부자로 만들어줘!!자세한 문제 설명과 릿코드 홈페이지 참고. 문제풀러가기가격이 언제 꺾이는지 (하강하다 상승, 상승하다 하강) 에 포인트를 주면 될 것 같다.하강하다가 상승한다면 그 지점

[📣top interview question] Remove Duplicates from Sorted Array Solution 문제풀기!
문제풀러가기✈정렬된 배열을 하나 줄게!중복된 숫자 없는 배열을 갖게 해줘!!자세한 문제 설명과 릿코드 홈페이지 참고. 문제풀러가기문제를 잘 읽어보면, 다른 배열을 만들어서 사용하지 말고 추가 메모리는 하나만 사용하라고 명시되어있다!.이 문제는 채점할 때 다음과 같이 하

1. NestJS 블로그 만들기 -이거는 알고 시작하자.
NestJS를 시작하기전 이거만큼은 알고 시작하자!!🚨🚨🚨 본 포스트와 이후 nestjs 시리즈에서는 Javascript, Typescript 를 배우기 위한 내용은 다루지 않습니다. 🚨🚨🚨Javascript 는 FrontEnd 를 공부중이시거나 NodeJS

[leetcode][16] 3sum closet 문제풀기!
문제풀러가기✈이번에도 숫자를 엄청 줄게!!숫자 3개를 뽑아서 그 숫자들의 합이 내가 원하는 숫자랑 가장 가까워지는 값을 찾아줘!!자세한 문제 설명과 릿코드 홈페이지 참고. 문제풀러가기이번에도 숫자 세개를 뽑아서... 더해서 ... 원하는 숫자와 얼마나 가까운지 체크하면
![[🌎elasticsearch] Elasticsearch 폴더에는 뭐가 있을까?? 대표 이미지](/_astro/elasticsearch-overview.Blt_9ByT_kb8BQ.webp)
[🌎elasticsearch] Elasticsearch 폴더에는 뭐가 있을까??
Elasticsearch 가이드북 ✈Elasticsearch 홈페이지 가기 ✈쉬어가는 느낌으로 ElasticSearch 의 directory 구조를 한번 살펴보도록 하겠습니다.ElasticSearch의 폴더로 한번 가보죠!저는 elk라는 폴더에 elasticsearch

[leetcode][15] 3sum 문제풀기!
문제풀러가기✈숫자를 엄청 줄게!!숫자 3개를 뽑아서 그 숫자들의 합이 0 이 되는 부분집합좀 찾아줘!자세한 문제 설명과 릿코드 홈페이지 참고. 문제풀러가기숫자 세개를 뽑아서... 0 을 만드는지 확인하면 된다!.다만 3개 전부 완전탐색을 돌려버리게 된다면 타임아웃이 뜨

[프로그래머스✈][연습문제] 섬 연결하기 풀이
문제풀러가기✈섬을 연결해!! 최소비용으로!뭐? 어디서 본 거 같은데 ??자세한 문제 설명과 제한 사항은 프로그래머스 홈페이지 참고. 문제풀러가기최소신장트리를 푸는 유명한 2가지 방법이 있다.크루스칼 알고리즘프림 알고리즘솔직히 둘이 좀 헷갈린다. 최소비용 부터 시작하는게
![[🌎elasticsearch] Elasticsearch search 기본사용법 (feat. Kibana) 대표 이미지](/_astro/elasticsearch-overview.Blt_9ByT_kb8BQ.webp)
[🌎elasticsearch] Elasticsearch search 기본사용법 (feat. Kibana)
Elasticsearch 가이드북 ✈Elasticsearch 홈페이지 가기 ✈이번에는 ElasticSearch 를 쓰는 이유중 하나인 전문검색 (Full Text Search) 의 간단한 기능을 알아보고자 합니다.이 부분에 대해서는 내용이 워낙 방대하다보니 제 글은 맛
![[🌎elasticsearch] Elasticsearch bulk 기본사용법 (feat. Kibana) 대표 이미지](/_astro/elasticsearch-overview.Blt_9ByT_kb8BQ.webp)
[🌎elasticsearch] Elasticsearch bulk 기본사용법 (feat. Kibana)
Elasticsearch 가이드북 ✈Elasticsearch 홈페이지 가기 ✈이번에는 쉬어가는 타임으로 bulk 기능을 알아보죠~!하지만 반드시 필수 요소라는것 !!ElasticSearch 의 여러 명령을 실행하기 위해서는 bulk 기능이 정말 편리합니다.bulk 는

[프로그래머스✈][2019 kakao 겨울 인턴쉽] 징검다리 건너기 해설
문제풀러가기✈"우리 돌다리는 약해유.."니니즈 친구들이 라이언 선생님과 함께 가을 소풍을 가는 중에 징검다리를 만났다. 이 징검다리의 돌은 매우 연약하여 여러번 밟으면 부서지고 더이상 사용할 수 없다. 돌마다 내구도가 주어질 때 건널 수 있는 니니즈들의 최대 인원 수를

[프로그래머스✈][2017 카카오코드] 4단 고음 해설
🛑🛑 아이유 팬은 주의 🛑🛑🛑🛑 아이유 팬은 주의 🛑🛑🛑🛑 아이유 팬은 주의 🛑🛑🛑🛑 해당문제를 풀지 말고 돌아가길 권고 🛑🛑문제풀러가기✈우리 지은이는 3단 고음을 넘어 4단 고음을넘어2147483647 단 고음을 연습중이다.우리 지은이는

[백준🔉][14501] 퇴사 문제 해설
정답비율 : 47.669%문제풀러가기✈우리팀에서 가장 열심히, 돈을 위해 직장을 다니던 훌륭한 백준 직원이 퇴사를 하려고 한다.퇴사하기 전까지 가장 많은 돈을 버는 (가장 많은 일을 하는게 아닌) 계획을 짜고 수행하려 한다.백준이가 돈을 많이 벌 수 있게 도와주자.자세

[프로그래머스✈][2020 kakao] 동굴 탐험
문제풀러가기✈우리 프로도는 특정한 규칙을 세워서 동굴의 각 방들을 탐험 하려고 한다. 해당 규칙을 만족하게 계획을 세우고 모든 방을 탐험할 수 있는지 탐색하라!자세한 문제 설명과 제한 사항은 프로그래머스 홈페이지 참고. 문제풀러가기루트부터 각각의 방들을 탐색하며, 선행

[프로그래머스✈][2019 kakao 겨울 인턴십] 불량 사용자 문제 해설
문제풀러가기✈우리가 사용자를 밴 할껀데 사실 나도 누가 밴 해야하는지 원본을 잃어버렸어... 혹시 가능한 경우의 수... 니가 좀 구해줄래? 일단 한번 보고 다 밴하던가 할게....문자열에 별표가 들어있다. 이 문자열의 별표는 알파벳과 숫자로 대체 가능하다. 조건에 맞

[백준🔉][16234] 인구이동 문제 해설
정답비율 : 36.044%문제풀러가기✈1 x 1 모양의 사각형이 n x n 만큼 펼쳐진 땅이 있다고 가정한다.각 사각형은 나라를 지칭하며 그 안에는 백성들의 숫자가 있다.매우 자유로운 이 대륙의 특정한 나라는 다른 나라의 인구수와 비슷하다면 연합을 하여 연합국 간 인구

[프로그래머스✈][2020 kakao] 가사 검색 문제 풀이
정답률정확성: 34.4%효율성: 0.8%문제풀러가기✈너 TRIE 자료구조 아냐?자세한 문제 설명과 제한 사항은 프로그래머스 홈페이지 참고. 문제풀러가기트리가 아니다 T.R.I.E. 다.TRIE 자료구조는 단어의 각 글자를 Node 로 보고 자료를 저장하는 자료구조입니다

[프로그래머스][2020 kakao] 기둥과 보 설치 문제 해설
정답률 : 1.9%문제풀러가기죠르디 는 기둥과 보를 이용하여 벽면 구조물을 자동으로 세우려고 한다. 2차원 벽면 n x n 의 격자칸이 주어지고, 기둥과 보를 설치하고 제거하는 명령어가 주어 질 때 해당 명령어가 실행 가능하다면 실행하라.자세한 문제 설명과 제한 사항은

[프로그래머스✈][2020 kakao] 자물쇠와 열쇠 문제 풀이
정답률: 7.4%문제풀러가기✈고고학자로 위장한 도굴꾼 튜브는 고대 유적지에서 자물쇠를 발견했습니다.가지고 있는 열쇠가 이 자물쇠에 맞는지 사방으로 끼워보고 돌려서도 끼워보고 해서 자물쇠를 열어 발굴할 수 있는지 확인하려고 합니다. 문제를 푸시오.자세한 문제 설명과 제한

[프로그래머스][2019 kakao] 후보키 문제 해설
정답률 : 16.09%문제풀러가기input 으로 들어오는 릴레이션의 정보를 토대로 후보키 를 생성할 수 있는가에 대한 문제최소성과 유일성을 만족해야한다유일성 : 해당하는 릴레이션에 대해 유일하게 식별 가능해야한다.최소성 : 키를 구성하는 속성 중 하나라도 제외 하는 경

[프로그래머스][2019 kakao] 무지의 먹방 라이브 문제 해설
정답률: 정확성 42.08% / 효율성 5.52%문제풀러가기특별한 먹방을 하려는 무지. 회전테이블에 각각의 음식을 놓아두고 자신 앞의 음식을 1초 동안 섭취 한 다음 회전판에 의해 다음 음식을 1초동안 섭취하는 특이한...회전하는데 걸리는 시간은 없다고 본다.빈 그릇이

[프로그래머스][2019 kakao] 길 찾기 게임 문제 해설
정답률 : 7.40%문제풀러가기"전무"로 승진한 라이언이 왕따인 이유를 알려주는 문제."전무" 라이언이 x, y 좌표값을 주면 우리 친구들이 x, y 를 전부 순회를 마친 팀이 이기는 "라이언만" 재미있는 게임이다.x, y 좌표는 사실상 트리의 구성요소라고 생각하면 된

[프로그래머스][2019 kakao] 블록게임 해설
정답률 : 5.85%문제풀러가기피지컬을 극복하려는 프로도의 피빠진 노력게임의 규칙은 간단하다.위에서 검은색 블록을 떨어뜨린다.검은블록을 포함하여 특정 블록이 직사각형의 형태가 되면 그 블록을 지울 수 있다.특정 블록은 무조건 한 개체여야하며 다른 개체와 섞여서는 안된다
![[🌎elasticsearch] Elasticsearch CRUD 기본사용법 (feat. Kibana) 대표 이미지](/_astro/elasticsearch-overview.Blt_9ByT_kb8BQ.webp)
[🌎elasticsearch] Elasticsearch CRUD 기본사용법 (feat. Kibana)
Elasticsearch 가이드북 ✈Elasticsearch 홈페이지 가기 ✈ElasticSearch 의 search 와 Bulk 기능은 이후 포스트에서 다루겠습니다.CreateReadUpdateDeleteElasticSearch 에서는 REST APIs 안의 Docu
![[🌎elasticsearch] Elasticsearch 설치하기 (Ubuntu 20.04) 대표 이미지](/_astro/elasticsearch-overview.Blt_9ByT_kb8BQ.webp)
[🌎elasticsearch] Elasticsearch 설치하기 (Ubuntu 20.04)
Elasticsearch 가이드북 ✈Elasticsearch 홈페이지 가기 ✈다음과 같은 사항이 필요합니다.Ubuntu 20.04 버전이 깔려 있는 OS듀얼코어 이상의 cpu 와 4gb 이상의 램 원활한 실행을 위해 필요하며 필수는 아닙니다.ElasticSearch는

#[프로그래머스][연습문제] 3 x N 타일링 풀이
문제풀러가기✈유명한 DP 문제 2 x N 타일링의 업그레이드 버전 이젠 세로의 길이가 2가 아니라 3이다!!DP 공식을 잘 유도하면 쉽게 풀 수 있다!!자세한 문제 설명과 제한 사항은 프로그래머스 홈페이지 참고. 문제풀러가기dp 공식을 유도해야하는데 순서대로 잘 그려보
![[🌎elasticsearch] Elasticsearch이란? 대표 이미지](/_astro/elasticsearch-overview.Blt_9ByT_kb8BQ.webp)
[🌎elasticsearch] Elasticsearch이란?
Elasticsearch 가이드북 ✈Elasticsearch 홈페이지 가기 ✈네이버 및 구글에서 원하는 문서를 검색하면 잘 나옵니다.어떻게 이런게 가능할까요 ???전문검색(Full-Text-Search 이하 FTS)은 검색 단어를 입력하면 해당하는 문서와 "관련 깊은"