跳到主要内容

LookupTable 查找表

LookupTable

查找表(Lookup Table)。查找表可将指定查询的结果缓存在内存当中,用于快速查找索引值对应的条目。

继承自:

示例 1:
const lookup = new LookupTable();
lookup.init(catalogService, 'lookup_table_name');
// 获取查找表的定义
lookup.fetch().then(() => {
   console.log(lookup.get('key'));
})
// 删除一个lookup定义
lookup.remove().then(() => {})

成员函数:

refresh() → {Promise}

立刻更新查找表

示例:
lookup.refresh().then(() => {});

LookupTables

查找表列表(LookupTables)。用于创建查找表或者获取查找表(LookupTable)的列表。 查找表分为2种类型:

  • CSV查找表
  • 高级查找表

继承自:

示例 1:
const lookupTables = catalogService.lookupTables();
// 获取查找表列表
lookupTables.fetch().then(() => {
    // do something with lookupTables
});
示例 2:
// 创建CSV查找表,需要预先通过API或者UI上传CSV文件,上传之后系统会返回路径,也就是下面例子中的sourcePath。
 lookupTables.create({
     "name": "test_catalog_lookup",
     "sourceCategory": "file",
     "sourcePath": ".system/lookup_table/4b557929-1ecf-40a9-b67b-bdb0435d44e8/category.csv",
     "lazyLoad": false,
     "sourceFormat": "csv",
     "lookupKeys": ["category:HASH"],
}).then((newLookupTable) => {
   // do something with newLookupTable
});
示例 3:
// 创建高级查找表
 lookupTables.create({
     "name": "test_advanced_lookup",
     "query": "select 200, 'OK'",
     "scheduleEnabled": true,
     "sourceCategory": "query",
     "schedule": "*\/10 * * * *",
     "timezone": "Asia/Shanghai",
     "lookupKeys": ["200:HASH"]
 }).then((newLookupTable) => {
     // do something with newLookupTable
 })

成员函数: