toy_project

08. 엘라서치 조회해보기3

인계동ADHD환자 2022. 4. 26. 23:50
728x90

우선 mbti_stomi_term인덱스를 새로 생성했다 팥장님 티스토리를 참고했다

 

term_vector: true -> 필드의 용어가 저장된다

"fielddata" : <true | false> - 디폴트는 false 입니다. true로 설정하면 해당 필드의 색인된 텀 들을 가지고 집계(aggregation) 또는 정렬(sorting)이 가능합니다. 이 설정은 다이나믹 설정으로 이미 정의된 매핑에 true 또는 false로 다시 적용하는 것이 가능합니다.

 

fielddata를 사용하면 메모리사용량이 많아진다한다 그치만 어쩌겠는가 문서의 모든 단어들을 다 카운팅하고싶은데...

GET mbti_stomi_term/_search
{
  "query": {
    "bool": {
      "must": [
        {"term": {"keyword":"infp"}},
        {"match": {"contents": "아이폰"} }
      ]
    }
  }
}

 

must -> 쿼리에서 AND조건에 해당한다

should -> OR조건

 

where keyword = 'infp'

and contents like '%아이폰%'

 

이런 느낌의 쿼리이다

 

GET mbti_stomi_term/_search
{
  "query": {
    "match": {
      "contents": "새해부터"
    }
  },
  "explain": true
}

단순조회 쿼리준에 explain true를 넣으면 해당 단어의 문서 갯수를 볼 수 있다

{
  "took" : 1,
  "timed_out" : false,
  "_shards" : {
    "total" : 1,
    "successful" : 1,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : {
      "value" : 4,
      "relation" : "eq"
    },
    "max_score" : 7.2478127,
    "hits" : [
      {
        "_shard" : "[mbti_stomi_term][0]",
        "_node" : "BMwAz1ZPSSmhR9Uy0K9m4g",
        "_index" : "mbti_stomi_term",
        "_type" : "_doc",
        "_id" : "7009b9ce14ce182178b843b4cbac45a4ecf02127",
        "_score" : 7.2478127,
        "_source" : {
          "comment_cnt" : 5,
          "contents" : """임인년 호랑이 해가 밝았읍니다. 니 안의 호랑이~🐯🐅 저도 호랑이 띠 입니다.(그냥 그렇다고)   정국이 사진에 내 얼굴 오려넣기정국씨는 25살에 빌보드 10주 연속 1위하고 막 세계신기록 기록하는데 내가 그 기를 이어받아 나도 올해는 꼭,,,!잘 되게 해주세요,,,🙏🏻아 물론 나만^^   새해부터 근사하게 차려먹고 후식으로 아이스크림에 별다방 커피까지 싸-악 조져주는 나란녀자 너무 멋져 돌쇠한테 스벅 테잌아웃 부탁했더니 건장한 남성분이 내 닉네임 불러주는데 다들 쳐다봤다고 한다 미안해요들,,,, 내 안에 있던 흥염룡이 깨어난다. 에스파 넥스트레벨 추가 해달라고요~~!! 블랙맘바 추다가 도가니 나갈 뻔했다고요~!!관절에 무리가 가면 안되는 나이,,  알엠씨 나랑 운명인가봅니다. 나 앨범사면 다 남준씨 뽑는다? 신기하죠?나는야 알엠잡이    나는 말이지,, 전생에 코끼리가 아니였나 몰라,, 이름도 상아고 밥도 코끼리처럼 엄청 먹으니까? (양심상 샐러드도 먹었다^^)  보라색 포실포실한 겨울느낌 낭낭 머리끈 했는데 사진 잘 안찍혀서 개킹 ㅠ  머 대충 이런 느낌  1월 맞이 새 시즌그리팅 달력으로 삭막했던 내 안구에 오아시스를  엄마 워치 이제 도착,,? 아주 입이 귀에 걸렸어  워치 공부하세욘 어머니 다솜이랑 오랜만에 만나서 분명 샤브샤브랑 샌드위치까지 먹었눈데 왜 사진은 항공뷰 아메리카노만 있는겨,,?  코끼리는 또 다이어트 여긴 회사 앞에 위치한 달리는 커피인데 샐러드가 아주 그냥 조오오온맛탱이었다. 다레 수인씨랑 고추가서 볶음밥까지>_<  너무 맛있어서 발라당 뒤로 자빠짐   어찌저찌 즉흥 갑분 대천여행 평소에 잘 착용하지 못하는 Bts 다이너마이트 머플러와 비니🧣 이봐 어르신들 내 포즈 따라하라고  참고한다면서 다 다른 하트ㅠㅠ   Mbti 한 명 빼고 다 P라 일명 무계획 여행 그치만 즉흥도 넘나리 재밌는 것 :-)뭐먹지? 하다가 원래 맛집은 앞에 욕을 붙여야한다며 초록창에 <대천 𝙅𝙊𝙉𝙉𝘼 맛집> 쳤다가 진짜 𝙅𝙊𝙉𝙉𝘼 맛있는 집 찾음   잠시 병원 신세 때문에 장장 3일간의 긴 휴가(주말끼면 5일) 할머니한테 페이스톡 했는데 왜 가을이가 받니? (킹받는건 심지어 지가 버튼 눌렀댄다.)   스벅가서 구석에 쳐박혀 조용히 봉숭아물들이기 분명 수인씨 공부 나 다이어리쓰기 였는데 갑자기 종목바뀜  대전 카레맛집 미세노센세 아 사진찍는데 그림자 킹받네ㅜ 아주 새해부터 킹킹킹킹 그래도 달 사진은 포기못해 나는야 먹짱 대왕카스텔라 개개개준맛탱 ㅜ 오리지널이랑 생크림 둘다 먹고싶어서 수인씨랑 반 노나서 교환  하 오씨,,오씨 사랑해 내 맘 알지?지독하게 짝사랑 중   다헤언니가 요즘 드로잉 명함 공부 중이라고 해서 의뢰해버리기~~~ 하 이 언니 못하는게 머야,,,,? 새해 첫 눈❄️눈이 살포시 내 패딩에 안정적으로 착지해 귀여워서 사진 찍어줘땅 ㅎㅎ 퇴근길은 언제봐도 아름답구나,,,  써니사이드업 새해를 맞이하여 (의미부여 오짐) 요즘 이불밖은 위험해 시전 중 코로나 머선일? 추운게 젤싫어사실 나 집순이 인데 아무도 안믿음 진짜라고요,, 요새 MBTI도 ESFP ISFP INFP 이렇게 나온다구요!!    내가 유일하게 하는 외출이라곤 당근거래와 굿즈거래 소소한 수입 🥰당근마켓🥕 중독되면 진짜 헤어나올 수 없음 ㅜ  맨날 집에서 오늘은 뭘 팔지? 하고 고민하게 된다는 ㅎㅎ 항상 퇴근하고 오면 울 돌쇠가 맛난 저녁도 만들어준다링 비빔국수인데 개존맛탱진짜 요리 너무잘해,, 난 너무 잘 먹고   내 최애 스트로베리 🍓🍓팀원분들 다 나눠드리고 몰래 쿰척쿰척  <금커>일명 금요일은 커피마시는 날 커피 쳐돌이 평일에는 커피마시면 밤에 잠 못자😪평일날 먹고 싶은 커피 꾹꾹 참고 금요일만을 기다림 헿진이 주임님이랑 브알라 가서 <소금커피+크로와상>  ☕️🥐내 최애 크로와상과 아메리카노라면 어디든 갈 수 있어,,,⛵️ 지후 센빠이 대사 응용을 이렇게 하네,,,^^   오소당이라는 구움과자집 스콘에 휘낭시에 쿠키 마들렌까지 하,,,진짜 밀가루쳐돌이 환장 이곳은 천국인가요,,,?   명절,연휴 전 금요일 명절이라고 다들 일찍 가라고 하셔서 1:40분에 퇴근 정말 단순히 호기심에 집까지 얼마나 걸릴까 하고 걸어감   집 가다가 헬기도 봄 🚁👋👋🙋🏻‍♀️ 어쨌든 집 앞까지 걸어옴 부들부들  울 갱쥐나보러 대전 온거야??  앵뚜랑 오랜만에 인생사컷 내 인생네컷 단골🥰 성심당 들러 아가방 사장님 뵈러 가는 길에 완전 큰 딸기 봄 스트롱베리,,?  고추 한 번도 안 가본 앵수랑 밍듀씨랑 쿰척쿰척>_<  밍듀씨가 찍어준 나랑 앵수 김밥 두 줄😋 일요일은 집콕🏠구동매와 함께하는 일욜❤️    떡은 사랑입니다. 🍡삼첩분식 마라로제 먹으려고 일주일을 참았는데하필 휴무,,, 로제는 태리로제죠~!  할머니가 귀염둥이 가을씨랑 같이 내 최애 게장 배달해주고 가서쿰척쿰척 게장먹기🦀🦀  또 주세요~~!!!   코로나 오미크론은 get out~!!  세뱃돈 수금하러 총총총   2월도 재미나게 지내보자~!! """,
          "crawl_url" : "https://blog.naver.com/PostView.nhn?blogId=lhkk1229&logNo=222635295874",
          "id" : 23951,
          "keyword" : "INFP",
          "like_cnt" : 7,
          "platform" : "naver_blog",
          "reg_date" : "2022-01-31T05:58:00",
          "title" : "1월",
          "writer" : "Asang"
        },
        "_explanation" : {
          "value" : 7.2478127,
          "description" : "weight(contents:새해부터 in 268) [PerFieldSimilarity], result of:",
          "details" : [
            {
              "value" : 7.2478127,
              "description" : "score(freq=2.0), computed as boost * idf * tf from:",
              "details" : [
                {
                  "value" : 2.2,
                  "description" : "boost",
                  "details" : [ ]
                },
                {
                  "value" : 5.4046774,
                  "description" : "idf, computed as log(1 + (N - n + 0.5) / (n + 0.5)) from:",
                  "details" : [
                    {
                      "value" : 4,
                      "description" : "n, number of documents containing term",
                      "details" : [ ]
                    },
                    {
                      "value" : 1000,
                      "description" : "N, total number of documents with field",
                      "details" : [ ]
                    }
                  ]
                },
                {
                  "value" : 0.6095573,
                  "description" : "tf, computed as freq / (freq + k1 * (1 - b + b * dl / avgdl)) from:",
                  "details" : [
                    {
                      "value" : 2.0,
                      "description" : "freq, occurrences of term within document",
                      "details" : [ ]
                    },
                    {
                      "value" : 1.2,
                      "description" : "k1, term saturation parameter",
                      "details" : [ ]
                    },
                    {
                      "value" : 0.75,
                      "description" : "b, length normalization parameter",
                      "details" : [ ]
                    },
                    {
                      "value" : 536.0,
                      "description" : "dl, length of field (approximate)",
                      "details" : [ ]
                    },
                    {
                      "value" : 491.708,
                      "description" : "avgdl, average length of field",
                      "details" : [ ]
                    }
                  ]
                }
              ]
            }
          ]
        }
      },
      {
        "_shard" : "[mbti_stomi_term][0]",
        "_node" : "BMwAz1ZPSSmhR9Uy0K9m4g",
        "_index" : "mbti_stomi_term",
        "_type" : "_doc",
        "_id" : "268",
        "_score" : 7.2478127,
        "_source" : {
          "comment_cnt" : 5,
          "contents" : """임인년 호랑이 해가 밝았읍니다. 니 안의 호랑이~🐯🐅 저도 호랑이 띠 입니다.(그냥 그렇다고)   정국이 사진에 내 얼굴 오려넣기정국씨는 25살에 빌보드 10주 연속 1위하고 막 세계신기록 기록하는데 내가 그 기를 이어받아 나도 올해는 꼭,,,!잘 되게 해주세요,,,🙏🏻아 물론 나만^^   새해부터 근사하게 차려먹고 후식으로 아이스크림에 별다방 커피까지 싸-악 조져주는 나란녀자 너무 멋져 돌쇠한테 스벅 테잌아웃 부탁했더니 건장한 남성분이 내 닉네임 불러주는데 다들 쳐다봤다고 한다 미안해요들,,,, 내 안에 있던 흥염룡이 깨어난다. 에스파 넥스트레벨 추가 해달라고요~~!! 블랙맘바 추다가 도가니 나갈 뻔했다고요~!!관절에 무리가 가면 안되는 나이,,  알엠씨 나랑 운명인가봅니다. 나 앨범사면 다 남준씨 뽑는다? 신기하죠?나는야 알엠잡이    나는 말이지,, 전생에 코끼리가 아니였나 몰라,, 이름도 상아고 밥도 코끼리처럼 엄청 먹으니까? (양심상 샐러드도 먹었다^^)  보라색 포실포실한 겨울느낌 낭낭 머리끈 했는데 사진 잘 안찍혀서 개킹 ㅠ  머 대충 이런 느낌  1월 맞이 새 시즌그리팅 달력으로 삭막했던 내 안구에 오아시스를  엄마 워치 이제 도착,,? 아주 입이 귀에 걸렸어  워치 공부하세욘 어머니 다솜이랑 오랜만에 만나서 분명 샤브샤브랑 샌드위치까지 먹었눈데 왜 사진은 항공뷰 아메리카노만 있는겨,,?  코끼리는 또 다이어트 여긴 회사 앞에 위치한 달리는 커피인데 샐러드가 아주 그냥 조오오온맛탱이었다. 다레 수인씨랑 고추가서 볶음밥까지>_<  너무 맛있어서 발라당 뒤로 자빠짐   어찌저찌 즉흥 갑분 대천여행 평소에 잘 착용하지 못하는 Bts 다이너마이트 머플러와 비니🧣 이봐 어르신들 내 포즈 따라하라고  참고한다면서 다 다른 하트ㅠㅠ   Mbti 한 명 빼고 다 P라 일명 무계획 여행 그치만 즉흥도 넘나리 재밌는 것 :-)뭐먹지? 하다가 원래 맛집은 앞에 욕을 붙여야한다며 초록창에 <대천 𝙅𝙊𝙉𝙉𝘼 맛집> 쳤다가 진짜 𝙅𝙊𝙉𝙉𝘼 맛있는 집 찾음   잠시 병원 신세 때문에 장장 3일간의 긴 휴가(주말끼면 5일) 할머니한테 페이스톡 했는데 왜 가을이가 받니? (킹받는건 심지어 지가 버튼 눌렀댄다.)   스벅가서 구석에 쳐박혀 조용히 봉숭아물들이기 분명 수인씨 공부 나 다이어리쓰기 였는데 갑자기 종목바뀜  대전 카레맛집 미세노센세 아 사진찍는데 그림자 킹받네ㅜ 아주 새해부터 킹킹킹킹 그래도 달 사진은 포기못해 나는야 먹짱 대왕카스텔라 개개개준맛탱 ㅜ 오리지널이랑 생크림 둘다 먹고싶어서 수인씨랑 반 노나서 교환  하 오씨,,오씨 사랑해 내 맘 알지?지독하게 짝사랑 중   다헤언니가 요즘 드로잉 명함 공부 중이라고 해서 의뢰해버리기~~~ 하 이 언니 못하는게 머야,,,,? 새해 첫 눈❄️눈이 살포시 내 패딩에 안정적으로 착지해 귀여워서 사진 찍어줘땅 ㅎㅎ 퇴근길은 언제봐도 아름답구나,,,  써니사이드업 새해를 맞이하여 (의미부여 오짐) 요즘 이불밖은 위험해 시전 중 코로나 머선일? 추운게 젤싫어사실 나 집순이 인데 아무도 안믿음 진짜라고요,, 요새 MBTI도 ESFP ISFP INFP 이렇게 나온다구요!!    내가 유일하게 하는 외출이라곤 당근거래와 굿즈거래 소소한 수입 🥰당근마켓🥕 중독되면 진짜 헤어나올 수 없음 ㅜ  맨날 집에서 오늘은 뭘 팔지? 하고 고민하게 된다는 ㅎㅎ 항상 퇴근하고 오면 울 돌쇠가 맛난 저녁도 만들어준다링 비빔국수인데 개존맛탱진짜 요리 너무잘해,, 난 너무 잘 먹고   내 최애 스트로베리 🍓🍓팀원분들 다 나눠드리고 몰래 쿰척쿰척  <금커>일명 금요일은 커피마시는 날 커피 쳐돌이 평일에는 커피마시면 밤에 잠 못자😪평일날 먹고 싶은 커피 꾹꾹 참고 금요일만을 기다림 헿진이 주임님이랑 브알라 가서 <소금커피+크로와상>  ☕️🥐내 최애 크로와상과 아메리카노라면 어디든 갈 수 있어,,,⛵️ 지후 센빠이 대사 응용을 이렇게 하네,,,^^   오소당이라는 구움과자집 스콘에 휘낭시에 쿠키 마들렌까지 하,,,진짜 밀가루쳐돌이 환장 이곳은 천국인가요,,,?   명절,연휴 전 금요일 명절이라고 다들 일찍 가라고 하셔서 1:40분에 퇴근 정말 단순히 호기심에 집까지 얼마나 걸릴까 하고 걸어감   집 가다가 헬기도 봄 🚁👋👋🙋🏻‍♀️ 어쨌든 집 앞까지 걸어옴 부들부들  울 갱쥐나보러 대전 온거야??  앵뚜랑 오랜만에 인생사컷 내 인생네컷 단골🥰 성심당 들러 아가방 사장님 뵈러 가는 길에 완전 큰 딸기 봄 스트롱베리,,?  고추 한 번도 안 가본 앵수랑 밍듀씨랑 쿰척쿰척>_<  밍듀씨가 찍어준 나랑 앵수 김밥 두 줄😋 일요일은 집콕🏠구동매와 함께하는 일욜❤️    떡은 사랑입니다. 🍡삼첩분식 마라로제 먹으려고 일주일을 참았는데하필 휴무,,, 로제는 태리로제죠~!  할머니가 귀염둥이 가을씨랑 같이 내 최애 게장 배달해주고 가서쿰척쿰척 게장먹기🦀🦀  또 주세요~~!!!   코로나 오미크론은 get out~!!  세뱃돈 수금하러 총총총   2월도 재미나게 지내보자~!! """,
          "crawl_url" : "https://blog.naver.com/PostView.nhn?blogId=lhkk1229&logNo=222635295874",
          "id" : 23951,
          "keyword" : "INFP",
          "like_cnt" : 7,
          "platform" : "naver_blog",
          "reg_date" : "2022-01-31T05:58:00",
          "title" : "1월",
          "writer" : "Asang"
        },
        "_explanation" : {
          "value" : 7.2478127,
          "description" : "weight(contents:새해부터 in 574) [PerFieldSimilarity], result of:",
          "details" : [
            {
              "value" : 7.2478127,
              "description" : "score(freq=2.0), computed as boost * idf * tf from:",
              "details" : [
                {
                  "value" : 2.2,
                  "description" : "boost",
                  "details" : [ ]
                },
                {
                  "value" : 5.4046774,
                  "description" : "idf, computed as log(1 + (N - n + 0.5) / (n + 0.5)) from:",
                  "details" : [
                    {
                      "value" : 4,
                      "description" : "n, number of documents containing term",
                      "details" : [ ]
                    },
                    {
                      "value" : 1000,
                      "description" : "N, total number of documents with field",
                      "details" : [ ]
                    }
                  ]
                },
                {
                  "value" : 0.6095573,
                  "description" : "tf, computed as freq / (freq + k1 * (1 - b + b * dl / avgdl)) from:",
                  "details" : [
                    {
                      "value" : 2.0,
                      "description" : "freq, occurrences of term within document",
                      "details" : [ ]
                    },
                    {
                      "value" : 1.2,
                      "description" : "k1, term saturation parameter",
                      "details" : [ ]
                    },
                    {
                      "value" : 0.75,
                      "description" : "b, length normalization parameter",
                      "details" : [ ]
                    },
                    {
                      "value" : 536.0,
                      "description" : "dl, length of field (approximate)",
                      "details" : [ ]
                    },
                    {
                      "value" : 491.708,
                      "description" : "avgdl, average length of field",
                      "details" : [ ]
                    }
                  ]
                }
              ]
            }
          ]
        }
      },
      {

단어의 빈도수도 아니고 문서의 빈도수라서 별로 원하는 결과는 아니지만 암튼 저 explain는 검색한 결과를 구체적인 수치들로 설명해주는 것같다

 

GET mbti_stomi_term/_explain/1
{
  "query": {
    "match": {
      "contents.nori_mixed": "마리오"
    }
  }
}

/인덱스/_explain/문서번호

적고 매치쿼리를 날려주면

{
  "_index" : "mbti_stomi_term",
  "_type" : "_doc",
  "_id" : "1",
  "matched" : true,
  "explanation" : {
    "value" : 12.967896,
    "description" : "weight(contents.nori_mixed:마리오 in 0) [PerFieldSimilarity], result of:",
    "details" : [
      {
        "value" : 12.967896,
        "description" : "score(freq=4.0), computed as boost * idf * tf from:",
        "details" : [
          {
            "value" : 2.2,
            "description" : "boost",
            "details" : [ ]
          },
          {
            "value" : 6.5032897,
            "description" : "idf, computed as log(1 + (N - n + 0.5) / (n + 0.5)) from:",
            "details" : [
              {
                "value" : 1,
                "description" : "n, number of documents containing term",
                "details" : [ ]
              },
              {
                "value" : 1000,
                "description" : "N, total number of documents with field",
                "details" : [ ]
              }
            ]
          },
          {
            "value" : 0.90638715,
            "description" : "tf, computed as freq / (freq + k1 * (1 - b + b * dl / avgdl)) from:",
            "details" : [
              {
                "value" : 4.0,
                "description" : "freq, occurrences of term within document",
                "details" : [ ]
              },
              {
                "value" : 1.2,
                "description" : "k1, term saturation parameter",
                "details" : [ ]
              },
              {
                "value" : 0.75,
                "description" : "b, length normalization parameter",
                "details" : [ ]
              },
              {
                "value" : 312.0,
                "description" : "dl, length of field (approximate)",
                "details" : [ ]
              },
              {
                "value" : 2482.204,
                "description" : "avgdl, average length of field",
                "details" : [ ]
              }
            ]
          }
        ]
      }
    ]
  }
}

detail안에서 마리오라는 단어가 4번나왔다고 freq가 나타난다

 

문서 내 발생한 term 빈도수(TF, term freq)가 클수록 weight가 높다. 문서내에서 같은 단어가 여러번 등장한다면 그 단어에 높은 가중치를 주는 알고리즘이다.

-> detail부분은

  • termFreq = 문서에 매칭된 키워드 수
  • k1 = es에서는 default 1.2 혹은 2.0을 사용 : 알고리즘을 정규화하기 위한 가중치
  • b = es default는 0.75: 알고리즘을 정규화하기 위한 가중치
  • avgFieldLength = 전체도큐먼트 평균 필드의 길이를 의미
  • fieldLength = 실제 문서가 검색된 문서의 길이 
  • dl = 필드길이

라고한다

dl이 작고 avgdl이 클수록 TF값이 높게 나온다

그래서 팥장님이 필드 길이가 영향이 크니까 띄어쓰기, 엔터같은거 제거하라고 하셨나보다

 

근데 dl은 필드의 길이라고 했는데 엘라스틱책 148페이지에서는 토큰 수라고 나오기도한다..

다르지 않나? 같나?

_doc/1의 필드 길이는 

421자가 나오는데 dl이 312로 나오는거면 토큰 수가 맞는 것같다

 

이걸로 할 수 있는건 혹시

이 contents가 가장 높은 TF를 보여주는 단어 뭔지도 알 수 있을까...? 그러면 이 contents에서 가장 유의미한 단어 하나만 가져올 수 있지 않을까.,.? 우선 얘는 두고

 

사실 내가 하고싶은건 

 

GET mbti_stomi_term/_search/
{
  "size": 0,
  "aggs": {
    "term_cnt": {
      "terms": {
        "field": "contents",
        "size": 10
      }
    }
  }
}

팥장님이써준 분석기에서 위에 있는 저 쿼리를 써서 단어들만 카운트하고 싶은건데

호오옥시

엘라스틱 책을보니

standard 가 

The 10 most loving dog breeds.

-> the, 10, most, loving, dog, breeds로 분리해주고

stop이

-> most loving dog breeds 로 분리를 해주는 분석기라고하는데

얘를 한번 써보면 달라지지 않을까?

한번 도전!

 

인덱스는 왜 수정이 안될까.. mbti_stomi_term2를 만들었고 search_analyser를 stop으로 만들었다

껄껄....

결과는 standard나 stop나 똑같다

 

이거는 분석기를 만들 필요성이 느껴진다..

그 나무위키에 있는 단어들을 필터에 넣어서 분석기를 생성하고

explain으로 빈도수를 본다던가..?

 

 

term_vector: true -> 필드의 용어가 저장된다

"fielddata" : <true | false> - 디폴트는 false 입니다. true로 설정하면 해당 필드의 색인된 텀 들을 가지고 집계(aggregation) 또는 정렬(sorting)이 가능합니다. 이 설정은 다이나믹 설정으로 이미 정의된 매핑에 true 또는 false로 다시 적용하는 것이 가능합니다.

 

이 term_vector라는것이 토큰된 애들들이 하나의 변수로 저장되는 느낌이라면 분석기를 커스텀하는게 맞는 것같다

 

 


GET mbti_stomi_term/_search
{
  "query":{
    "bool":{
      "should":[
       {"term": {"contents.nori_mixed": "마리오"}},
       {"term": {"contents.nori_mixed": "언니"}},
       {"term": {"contents.nori_mixed": "포켓몬"}},
       {"term": {"contents.nori_mixed": "게임"}}
      ]
    }
  }
  , "explain": true
}

이런식으로 넣으면 각 문서에 마리오, 언니, 포켓몬, 게임 용어들의 빈도수를 문서별로 보여준다

문제는 문서도 많고 용어도 많아서 전체를 탐색할때는 좋지 않는 방법 같다 좋지 않은 정도가 아니라 잘못된 방법같다

 

 

728x90