Description
µ¥ÀÌÅͺ£À̽º¿¡ ÀúÀåµÇ¾î Àִ ƯÁ¤ ¹®¼¿Í À¯»çÇÑ ¹®¼µéÀ» °Ë»öÇÏ´Â ÇÁ·ÎÅäÄÝÀÌ´Ù.
"±âÁع®¼"ÀÇ ¹®¼½Äº°ÀÚ¿Í, ´ë»ó Å×À̺í, ´ë»ó ¼½¼Ç, À¯»çµµ °ª µîÀ» ÁöÁ¤ Çϸé, "±âÁع®¼"¿Í À¯»çÇÑ ¹®¼µéÀ» °Ë»öÇϰí "°á°ú¼Â¹øÈ£"¿Í "¹®¼°Ç¼ö"°¡ ¹ÝȯµÈ´Ù.
ÀÌÈÄ Ã³¸®´Â ±âÁ¸ÀÇ "ÀϹݰ˻ö"°ú µ¿ÀÏÇÏ°Ô ÇÏ¸é µÈ´Ù.
[ÁÖ] "±âÁع®¼"´Â °Ë»ö´ë»ó¿¡¼ Á¦¿Ü µÈ´Ù
InParameter
vectortable_namelist; [À¯»ç¹®¼ °Ë»ö´ë»ó Å×À̺í ÁöÁ¤] int table_id; [±âÁع®¼ÀÇ Å×À̺í½Äº°ÀÚ] int doc_id; [±âÁع®¼ÀÇ ¹®¼½Äº°ÀÚ] vector section_namelist; [À¯»ç¹®¼ °Ë»ö ´ë»ó ¼½¼Ç(µé)] float threshold; [´ë»ó¹®¼¿ÍÀÇ À¯»çµµ °ª(0.0 - 0.99)]
OutParameter
unsigned int set_id; [°á°ú¼Â¹øÈ£] unsigned int total_df; [°Ë»ö°á°ú °Ç¼ö] unsigned int estimated_total_df; [°Ë»ö ¹®¼ ÃßÁ¤Ä¡] long unsigned int service_time; [°Ë»ö ¼öÇà ½Ã°£]
Example
// °Ë»ö ´ë»ó Å×À̺í ÁöÁ¤
table_namelist.push_back("blue01");
table_namelist.push_back("blue02");
table_namelist.push_back("blue03");
//table_namelist.push_back("blue04");
// À¯»ç ¹®¼ °Ë»ö½Ã »ç¿ëÇÒ ´ë»ó ¼½¼Ç ÁöÁ¤(º¹¼ö°³ ÁöÁ¤ °¡´É)
section_namelist.push_back("TIK");
//section_namelist.push_back("ABS");
// ¿äûÀ» ó¸®ÇÒ Å¬·¡½º¸¦ »ý¼º
// »ý¼ºÀÚÀÇ ¸Å°³º¯¼ö·Î ó¸®ÇÒ DB ¼ºñ½ºÀÇ ÁÖ¼Ò¿Í Æ÷Æ®¹øÈ£¸¦ ÀÔ·Â
ClientLIB clientLib(SERVER_IP, SERVER_PORT);
Cparameter_t p_in, p_out; // ¸Å°³º¯¼ö Ŭ·¡½º ¼±¾ð
Cdocument_t doc;
doc.table_id = table_id;
doc.document_id = doc_id;
p_in.documents.push_back(doc);
p_in.table_namelist = table_namelist; // °Ë»ö ´ë»ó Å×À̺í ÁöÁ¤
p_in.section_namelist = section_namelist; // Ãâ·Â¿ë ¼½¼Ç À̸§ ¸®½ºÆ® ÁöÁ¤
p_in.similarity_value = threshold; // À¯»çµµ ÀÓ°èÄ¡ ÁöÁ¤
// p_in.set_id = 0; // ¼ÂÀº »ç¿ë ¾ÈÇÔ
// À¯»ç¹®¼ °Ë»ö ¼öÇà
RedirectStdoutInit(); // ¿äû ¼öÇà Áß¿¡ Ãâ·ÂµÇ´Â ¸Þ½ÃÁö ¸·À½...
int ret_val = clientLib.Request(RETRIEVE_SIMILAR_DOCUMENTS, p_in, p_out);
RedirectStdoutClose();
if (ret_val != 0) {
cout << "ERROR : " << p_out.errmsg << "(" << p_out.errcode << ")" << endl;
return -1;
}