xml格式结果解析

查询可以分为普通查询、独立第一阶段查询、独立第二阶段查询三种类型,查询结果输出分别介绍如下:

正常query输出结果

<?xml version="1.0" encoding="UTF-8"?>
<Root>
<TotalTime>0.003</TotalTime>
<SortExprMeta>< ![CDATA[-RANK]] ></SortExprMeta>                     ---0
<hits numhits="1" totalhits="8" coveredPercent="100.00">             ---1
	<hit cluster_name="simple4" hash_id="0" docid="15">          ---2
		<fields></fields>                                    ---3
		<property></property>                                ---4
		<attribute></attribute>                              ---5
		<variableValue></variableValue>                      ---6
		<sortExprValues>0.25</sortExprValues>                ---7
		<trace_info></trace_info>                            ---8
	</hit>                                                        
	<metaHit metaHitKey=""></metaHit>                            ---9
</hits>
<AggregateResults>                                                   ---10
	<AggregateResult key='company_id'>
	</AggregateResult>
</AggregateResults>
<Error>                                                              ---11
	<ErrorCode>0</ErrorCode>
	<ErrorDescription></ErrorDescription>
</Error>
<Request_Trace>                                                      ---12
</Request_Trace>
<fromCache></fromCache>                                              ---13
</Root>

<0>排序字段的名称及升降序(名称前的'-’'表示降序;'+'表示升序)

<1>coveredPercent为查询第一阶段返回结果的parition range范围百分比

<2>cluster名字、hashId、DocId等

<3>各summary field

<4>用户QRS插件中自定义的与每篇doc相关的数据

<5>query中取出的attribute

<6>用户自定义数据.

NOTE只有在调用declareVariable接口时,指定需要序列化的数据才会在最终结果中显示。

<7>排序字段的值

<8>rank trace,记录每篇doc算分过程中的日志信息,可以在查询串的config部分指定相应级别的rank_trace获得,输出示例如下:

  [TRACE1] [build/debug64/ha3/rank/DefaultScorer.cpp:53] tf=1

<9>用户QRS插件中自定义的与每个request相关的数据

<10>统计结果

例如有统计语句aggregate=group_key:company_id,agg_fun:max(id)#min(id),在结果中的显示形式如下:

 <AggregateResults>
        <AggregateResult key='company_id'>
                <group value='1'><max>1</max><min>0</min></group>
                <group value='2'><max>3</max><min>1</min></group>
        </AggregateResult>
</AggregateResults>

<11>Error信息,包括ParitionId, HostName, ErrorCode, ErrorDescription

<12>request trace, 查询过程中的相关信息,包含query流程、查询各阶段耗时等信息。可以在查询串的config部分指定相应级别的trace获得。

<13>表示查询结果是否来自QRS cache,当且仅当config clause中cache_info为yes,显示该项信息。

独立第一阶段查询输出结果

<?xml version="1.0" encoding="UTF-8"?>
<Root>
<TotalTime>0.002</TotalTime>
<SortExprMeta>< ![CDATA[-RANK]] ></SortExprMeta>
<hits numhits="1" totalhits="8" coveredPercent="100.00">
	<hit cluster_name="simple4" hash_id="0" docid="15" gid="simple4_0_0_0_15" pk="00000000000000004d8a42e58ec9d95d">
		<fields>
		</fields>
		<property>
		</property>
		<attribute>
		</attribute>
		<sortExprValues>0.25</sortExprValues>
		<trace_info>
		</trace_info>
	</hit>
</hits>
<AggregateResults>
</AggregateResults>
<Error>
	<ErrorCode>0</ErrorCode>
	<ErrorDescription></ErrorDescription>
</Error>
<Request_Trace>
</Request_Trace>
</Root>

独立第一阶段查询结果相比普通查询,每个hit多输出了gid以及pk(如果有配了primarykey),fields为空

独立第二阶段查询输出结果

相比普通查询,独立第二阶段查询的每个hit也多输出了gid, 并且totalhits总为0,coveredPercent总为0。