OpenSearch中的資料,既支援資料來源匯入,也支援無資料來源,通過API/SDK/控制台上傳檔案的方式匯入資料。通過API/SDK匯入非常靈活,完全由使用者控制。
欄位類型對應關係
OpenSearch 欄位類型 | API推送欄位類型 |
INT | int、long |
INT_ARRAY | int [] 、long [] |
FLOAT | float |
FLOAT_ARRAY | float [] |
DOUBLE | double |
DOUBLE_ARRAY | double [] |
LITERAL | string |
LITERAL_ARRAY | string [] |
SHORT_TEXT | string |
TEXT | string |
TIMESTAMP | long |
GEO_POINT | string,格式為:lon lat。lon表示經度,lat表示緯度,都為double類型,二者之間用空格分隔。lon的範圍:[-180, 180], lat範圍[-90, 90]。 |
API推送資料
1.控制台上傳檔案的功能一般用於搜尋功能測試,不適用於大量文檔上傳,效率比較低,一次只能上傳2M大小的文檔。其他API/SDK更多推送系統限制,點擊此處查看文檔。
2.API/SDK不支援設定資料來源外掛程式,請自行拼接、處理後傳入OpenSearch應用中。比如,array類型使用API上傳時,注意不要上傳為string格式,而是上傳為數群組類型。例:
//定義MapObject Storage Service上傳文檔資料,此為文檔2
Map<String,Object> doc2 =Maps.newLinkedHashMap();
doc2.put("id",1);
String[] literal_arr2 ={"元素1","元素2"};
doc2.put("literal_arr", literal_arr2);
3.API/SDK具體請參見:
Java SDK: Commit推送Demo、Push推送Demo
Php SDK :Push推送Demo、Push推送帶搜尋Demo
Go SDK :行為資料推送Demo、Push推送Demo