Commit b9fc4145 authored by lixiaofang's avatar lixiaofang

add

parent 2d063776
...@@ -22,6 +22,7 @@ from trans2es.utils.brandwiki_transfer import BrandWikiTransfer ...@@ -22,6 +22,7 @@ from trans2es.utils.brandwiki_transfer import BrandWikiTransfer
from trans2es.utils.productwiki_transfer import ProduceWikiTransfer from trans2es.utils.productwiki_transfer import ProduceWikiTransfer
from trans2es.utils.tag_transfer import TagTransfer from trans2es.utils.tag_transfer import TagTransfer
from trans2es.utils.wordresemble import WordResemble from trans2es.utils.wordresemble import WordResemble
from trans2es.utils.search_query import SearchWord
from libs.es import ESPerform from libs.es import ESPerform
from libs.tools import tzlc, getMd5Digest from libs.tools import tzlc, getMd5Digest
from trans2es.commons.words_utils import QueryWordAttr from trans2es.commons.words_utils import QueryWordAttr
...@@ -286,7 +287,8 @@ def get_type_info_map(): ...@@ -286,7 +287,8 @@ def get_type_info_map():
name='suggest', name='suggest',
type='doctor_tips', # doctor type='doctor_tips', # doctor
model=doctor.Doctor, model=doctor.Doctor,
query_deferred=lambda: doctor.Doctor.objects.all().filter(doctor_type__in=[DOCTOR_TYPE.DOCTOR,DOCTOR_TYPE.OFFICER]).query, query_deferred=lambda: doctor.Doctor.objects.all().filter(
doctor_type__in=[DOCTOR_TYPE.DOCTOR, DOCTOR_TYPE.OFFICER]).query,
get_data_func=DoctorTransfer.get_doctor_suggest_data_list, get_data_func=DoctorTransfer.get_doctor_suggest_data_list,
bulk_insert_chunk_size=100, bulk_insert_chunk_size=100,
round_insert_chunk_size=5, round_insert_chunk_size=5,
...@@ -365,89 +367,97 @@ def get_type_info_map(): ...@@ -365,89 +367,97 @@ def get_type_info_map():
round_insert_chunk_size=5, round_insert_chunk_size=5,
round_insert_period=2, round_insert_period=2,
), ),
# TypeInfo( TypeInfo(
# name='suggest-v1', name='suggest',
# type='doctor_tips', # doctor type='search_query', # tag
# model=doctor.Doctor, get_data_func=SearchWord.get_search_query,
# query_deferred=lambda: doctor.Doctor.objects.all().filter(doctor_type=DOCTOR_TYPE.DOCTOR).query, bulk_insert_chunk_size=100,
# get_data_func=DoctorTransfer.get_doctor_suggest_data_list, round_insert_chunk_size=5,
# bulk_insert_chunk_size=100, round_insert_period=2,
# round_insert_chunk_size=5, ),
# round_insert_period=2, TypeInfo(
# ), name='suggest-v1',
# TypeInfo( type='doctor_tips', # doctor
# name='suggest-v1', model=doctor.Doctor,
# type='hospital_tips', # hospital query_deferred=lambda: doctor.Doctor.objects.all().filter(doctor_type=DOCTOR_TYPE.DOCTOR).query,
# model=doctor.Hospital, get_data_func=DoctorTransfer.get_doctor_suggest_data_list,
# # query_deferred=lambda: doctor.Doctor.objects.all().filter(doctor_type=DOCTOR_TYPE.OFFICER).query, bulk_insert_chunk_size=100,
# query_deferred=lambda: doctor.Hospital.objects.all().query, round_insert_chunk_size=5,
# get_data_func=HospitalTransfer.get_hospital_suggest_data_list, round_insert_period=2,
# bulk_insert_chunk_size=100, ),
# round_insert_chunk_size=5, TypeInfo(
# round_insert_period=2, name='suggest-v1',
# ), type='hospital_tips', # hospital
# TypeInfo( model=doctor.Hospital,
# name='suggest-v1', # query_deferred=lambda: doctor.Doctor.objects.all().filter(doctor_type=DOCTOR_TYPE.OFFICER).query,
# type='itemwiki_tips', # itemwiki query_deferred=lambda: doctor.Hospital.objects.all().query,
# model=itemwiki.ItemWiki, get_data_func=HospitalTransfer.get_hospital_suggest_data_list,
# query_deferred=lambda: itemwiki.ItemWiki.objects.all().query, bulk_insert_chunk_size=100,
# get_data_func=ItemWikiTransfer.get_itemwiki_suggest_data_list, round_insert_chunk_size=5,
# bulk_insert_chunk_size=100, round_insert_period=2,
# round_insert_chunk_size=5, ),
# round_insert_period=2, TypeInfo(
# ), name='suggest-v1',
# TypeInfo( type='itemwiki_tips', # itemwiki
# name='suggest-v1', model=itemwiki.ItemWiki,
# type='collectwiki_tips', # collectwiki query_deferred=lambda: itemwiki.ItemWiki.objects.all().query,
# model=collectwiki.CollectWiki, get_data_func=ItemWikiTransfer.get_itemwiki_suggest_data_list,
# query_deferred=lambda: collectwiki.CollectWiki.objects.all().query, bulk_insert_chunk_size=100,
# get_data_func=CollectWikiTransfer.get_collectwiki_suggest_data_list, round_insert_chunk_size=5,
# bulk_insert_chunk_size=100, round_insert_period=2,
# round_insert_chunk_size=5, ),
# round_insert_period=2, TypeInfo(
# ), name='suggest-v1',
# TypeInfo( type='collectwiki_tips', # collectwiki
# name='suggest-v1', model=collectwiki.CollectWiki,
# type='brandwiki_tips', # brandwiki query_deferred=lambda: collectwiki.CollectWiki.objects.all().query,
# model=brandwiki.BrandWiki, get_data_func=CollectWikiTransfer.get_collectwiki_suggest_data_list,
# query_deferred=lambda: brandwiki.BrandWiki.objects.all().query, bulk_insert_chunk_size=100,
# get_data_func=BrandWikiTransfer.get_brandwiki_suggest_data_list, round_insert_chunk_size=5,
# bulk_insert_chunk_size=100, round_insert_period=2,
# round_insert_chunk_size=5, ),
# round_insert_period=2, TypeInfo(
# ), name='suggest-v1',
# TypeInfo( type='brandwiki_tips', # brandwiki
# name='suggest-v1', model=brandwiki.BrandWiki,
# type='productwiki_tips', # productwiki query_deferred=lambda: brandwiki.BrandWiki.objects.all().query,
# model=productwiki.ProductWiki, get_data_func=BrandWikiTransfer.get_brandwiki_suggest_data_list,
# query_deferred=lambda: productwiki.ProductWiki.objects.all().query, bulk_insert_chunk_size=100,
# get_data_func=ProduceWikiTransfer.get_productwiki_suggest_data_list, round_insert_chunk_size=5,
# bulk_insert_chunk_size=100, round_insert_period=2,
# round_insert_chunk_size=5, ),
# round_insert_period=2, TypeInfo(
# ), name='suggest-v1',
# TypeInfo( type='productwiki_tips', # productwiki
# name='suggest-v1', model=productwiki.ProductWiki,
# type='tag_tips', # tag query_deferred=lambda: productwiki.ProductWiki.objects.all().query,
# model=tag.Tag, get_data_func=ProduceWikiTransfer.get_productwiki_suggest_data_list,
# query_deferred=lambda: tag.Tag.objects.all().filter( bulk_insert_chunk_size=100,
# tag_type__in=[TAG_TYPE.BODY_PART, TAG_TYPE.BODY_PART_SUB_ITEM, TAG_TYPE.ITEM_WIKI]).query, round_insert_chunk_size=5,
# get_data_func=TagTransfer.get_tag_suggest_data_list, round_insert_period=2,
# bulk_insert_chunk_size=100, ),
# round_insert_chunk_size=5, TypeInfo(
# round_insert_period=2, name='suggest-v1',
# ), type='tag_tips', # tag
# TypeInfo( model=tag.Tag,
# name='suggest-v1', query_deferred=lambda: tag.Tag.objects.all().filter(
# type='wordrel_tips', # tag tag_type__in=[TAG_TYPE.BODY_PART, TAG_TYPE.BODY_PART_SUB_ITEM, TAG_TYPE.ITEM_WIKI]).query,
# model=wordresemble.WordRel, get_data_func=TagTransfer.get_tag_suggest_data_list,
# query_deferred=lambda: wordresemble.WordRel.objects.filter( bulk_insert_chunk_size=100,
# category__in=[13, 12, 11, 9, 1]).query, round_insert_chunk_size=5,
# get_data_func=WordResemble.get_resemble_list, round_insert_period=2,
# bulk_insert_chunk_size=100, ),
# round_insert_chunk_size=5, TypeInfo(
# round_insert_period=2, name='suggest-v1',
# ) type='wordrel_tips', # tag
model=wordresemble.WordRel,
query_deferred=lambda: wordresemble.WordRel.objects.filter(
category__in=[13, 12, 11, 9, 1]).query,
get_data_func=WordResemble.get_resemble_list,
bulk_insert_chunk_size=100,
round_insert_chunk_size=5,
round_insert_period=2,
)
] ]
type_info_map = { type_info_map = {
...@@ -550,7 +560,7 @@ def tips_attr_sync_to_redis_type_info_map(): ...@@ -550,7 +560,7 @@ def tips_attr_sync_to_redis_type_info_map():
TypeInfo( TypeInfo(
name='suggest', name='suggest',
type='wordresemble_results_num', # api_wordrelresemble type='wordresemble_results_num', # api_wordrelresemble
model= wordresemble.WordRel, model=wordresemble.WordRel,
query_deferred=lambda: wordresemble.WordRel.objects.filter( query_deferred=lambda: wordresemble.WordRel.objects.filter(
category__in=[13, 12, 11, 9, 1]).query, category__in=[13, 12, 11, 9, 1]).query,
get_data_func=WordResemble.set_data_to_redis, get_data_func=WordResemble.set_data_to_redis,
......
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
import sys
import logging
import traceback
import base64
from libs.tools import tzlc, getMd5Digest
from libs.es import ESPerform
from libs.cache import redis_client
import json
from django.conf import settings
from trans2es.models import wordresemble
from trans2es.commons.words_utils import QueryWordAttr, get_tips_word_type
from trans2es.commons.commons import get_tips_suggest_list
from trans2es.utils.doctor_transfer import DoctorTransfer
from trans2es.utils.itemwiki_transfer import ItemWikiTransfer
from trans2es.utils.tag_transfer import TagTransfer
class SearchWord(object):
@classmethod
def get_search_query(self):
try:
##先拿到所有存在redis的数据存进es
key = "search_tips_save_query_word"
data = redis_client.get(key)
if data:
redis_data = json.loads(data, encoding="utf-8")
for key, value in redis_data.items():
ret_list = list()
item_dict = dict()
item_dict["id"] = getMd5Digest(str(key))
item_dict["ori_name"] = key
item_dict["is_online"] = 1
item_dict["order_weight"] = QueryWordAttr.get_project_query_word_weight(key)
item_dict["results_num"] = QueryWordAttr.get_query_results_num(key)
item_dict["type_flag"] = get_tips_word_type(key)
item_dict["offline_score"] = 0.0
item_dict["tips_name_type"] = 5
ret_list.append(item_dict)
suggest_list = get_tips_suggest_list(str(key).lower())
return (item_dict, suggest_list)
except:
logging.error("catch exception,err_msg:%s" % traceback.format_exc())
return ([], [])
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment