描述
為便於定製各種不同的應用,在查詢文法中引入kvpair,即key-value對。
文法格式
kvpair={key}:{value};{key}:{value};....樣本
query=SELECT brand, COUNT(*) FROM phone &&kvpair=trace:INFO;formatType:full_json支援的kvpair子句列表
參數名 | 取值範圍 | 預設值 | 參數說明 |
trace | DISABLE, FATAL, ERROR, WARN, INFO, DEBUG, TRACE1, TRACE2, TRACE3, SCHEDULE, NOTSET | DISABLE | 在前端輸出查詢過程中的相關資訊 |
formatType/format | string, json,full_json, flatbuffers | string | 返回結果類型, 參考查詢結果解讀 , json建議使用full_json格式,速度快建議為flatbuffers |
timeout | ulimit | 由sql配置決定 | query查詢逾時限制,單位ms |
searchInfo | true, false | false | 是否返回search info資訊 |
sqlPlan | true, false | false | 是否返回sql plan資訊 |
forbitMergeSearchInfo | true, false | false | qrs不合并各列search返回的searchInfo, 用於查各列的詳細資料 |
resultReadable | true, false | false | 在format為json/full_json時,json中會加一些換行增加可讀性 |
parallel ( Ha3 < 3.8.0適用 ) | 1-16 | 1 | searcher上開啟多路並行最佳化 Ha3 >= 3.8.0版本請使用新的實現: Hint 注意:新老實現不相容,請勿同時啟用 |
parallelTables ( Ha3 < 3.8.0適用 ) | 多個table間用'|'分隔, 配合并行使用,表示哪些table可以支援拆分並行,主要用於join情境 | ||
databaseName | 指定預設dbName,用於qrs訪問對應的search,qrs也可以同時訪問多個search,需要在query子句的table前拼上dbName.tableName | ||
lackResultEnable | true, false | false | 允許結果缺列,例如一列rpc逾時 |
iquan.optimizer.debug.enable | true/false | false | 是否開啟最佳化階段的debug功能 |
iquan.optimizer.sort.limit.use.together | true/false | true | 是否強制要求order by後一定要有limit |
iquan.optimizer.force.limit.num | ulimit | 100 | 如果開啟了iquan.optimizer.force.limit.enable, iquan將這個選項的值作為limit的大小 |
iquan.optimizer.join.condition.check | true/false | true | 是否強制要求join的欄位為hash欄位 |
iquan.optimizer.force.hash.join | true/false | false | 是否強制讓所有的join節點都變為hash join |
iquan.plan.format.type | json | json | iquan產出的執行計畫的格式。目前只支援json。 |
iquan.plan.prepare.level | rel.post.optimize jni.post.optimize | jni.post.optimize | 和cache或者動態參數配合使用。推薦jni.post.optimize. 當使用者開啟了cache, iquan會將指定階段的結果放入緩衝中; 當使用者開啟了動態參數, iquan會對指定階段的結果進行動態參數替換。 rel.post.optimize: 最佳化後的結果,在Java代碼中 jni.post.optimize: JNI調用返回後的結果,在Cpp代碼中 |
iquan.plan.cache.enable | true / false | false | 是否將當前的結果放入cache中。 |
exec.source.id | "" | 指定串訪問特定行,多exchange時有用,預設按時間產生 | |
exec.source.spec | "" | 指定業務方來源,請按照指定格式填寫 TPP推薦情境:tpp-appid-abid-solutionid-ip 其他情境:產品名-系統名-IP | |
dynamic_params | 二維數組 | 無 | |
urlencode_data | true / false | false | 如果對dynamic_params的內容做了urlencode,需要設定為true |
注意:
kvpair和配置同時存在的項,以kvpair優先;
多個kvpair之間用 ; 隔開,中間不允許有空格