dolphindb 2.0.600 → 2.0.603
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/browser.d.ts +19 -1
- package/browser.js +127 -39
- package/browser.js.map +1 -1
- package/docs.en.json +955 -182
- package/docs.zh.json +3105 -268
- package/index.d.ts +14 -0
- package/index.js +125 -38
- package/index.js.map +1 -1
- package/language.d.ts +1 -1
- package/language.js +0 -2
- package/language.js.map +1 -1
- package/package.json +3 -3
package/docs.zh.json
CHANGED
|
@@ -1382,7 +1382,7 @@
|
|
|
1382
1382
|
"value": [
|
|
1383
1383
|
"增加数据节点或计算节点。新增加的节点为关闭状态,需要通过Web集群管理器或命令行启动。",
|
|
1384
1384
|
"",
|
|
1385
|
-
"注意,如果要在新的服务器上增加节点,要先部署代理节点。详情请参考教程 `多服务器集群部署 <https://gitee.com/dolphindb/Tutorials_CN/blob/master/
|
|
1385
|
+
"注意,如果要在新的服务器上增加节点,要先部署代理节点。详情请参考教程 `多服务器集群部署 <https://gitee.com/dolphindb/Tutorials_CN/blob/master/%E5%AE%89%E8%A3%85%E5%92%8C%E9%83%A8%E7%BD%B2/multi_machine_cluster_deployment.md>`_ 。"
|
|
1386
1386
|
]
|
|
1387
1387
|
}
|
|
1388
1388
|
]
|
|
@@ -2542,7 +2542,7 @@
|
|
|
2542
2542
|
"value": [
|
|
2543
2543
|
"`X` 是有时间类型索引的矩阵(由 :doc:`../s/setIndexedMatrix!` 创建)或序列(由 :doc:`../s/setIndexedSeries!` 创建)。",
|
|
2544
2544
|
"",
|
|
2545
|
-
"`
|
|
2545
|
+
"`rule` 可以是一个字符串,可取以下值,亦可为一个时间类型的向量。",
|
|
2546
2546
|
"",
|
|
2547
2547
|
"============ =================",
|
|
2548
2548
|
"Y参数取值 对应DolphinDB函数",
|
|
@@ -2561,10 +2561,12 @@
|
|
|
2561
2561
|
"\"QS\" quarterBegin",
|
|
2562
2562
|
"\"BQ\" businessQuarterEnd",
|
|
2563
2563
|
"\"BQS\" businessQuarterBegin",
|
|
2564
|
+
"\"REQ\" FY5253Quarter",
|
|
2564
2565
|
"\"A\" yearEnd",
|
|
2565
2566
|
"\"AS\" yearBegin",
|
|
2566
2567
|
"\"BA\" businessYearEnd",
|
|
2567
2568
|
"\"BAS\" businessYearBegin",
|
|
2569
|
+
"\"RE\" FY5253",
|
|
2568
2570
|
"\"D\" date",
|
|
2569
2571
|
"\"H\" hourOfDay",
|
|
2570
2572
|
"\"min\" minuteOfHour",
|
|
@@ -2574,7 +2576,7 @@
|
|
|
2574
2576
|
"\"N\" nanosecond",
|
|
2575
2577
|
"============ =================",
|
|
2576
2578
|
"",
|
|
2577
|
-
"参数 *
|
|
2579
|
+
"参数 *rule* 字符串亦可配合使用数字,例如\"2M\"表示频率为每两个月。",
|
|
2578
2580
|
"",
|
|
2579
2581
|
"`closed` 字符串,表示分组区间哪一个边界是闭合的。",
|
|
2580
2582
|
"",
|
|
@@ -6468,7 +6470,7 @@
|
|
|
6468
6470
|
{
|
|
6469
6471
|
"type": "text",
|
|
6470
6472
|
"value": [
|
|
6471
|
-
"取消已经提交但尚未完成的批处理作业。"
|
|
6473
|
+
"取消已经提交但尚未完成的批处理作业。1.30.19 / 2.00.7 版本后,若执行 cancelJob 时,发现某个 jobId 不存在,系统不再抛出异常,而是将包含 jobId 的报错信息输出到日志。"
|
|
6472
6474
|
]
|
|
6473
6475
|
}
|
|
6474
6476
|
]
|
|
@@ -6502,6 +6504,26 @@
|
|
|
6502
6504
|
" $ submitJob(myJobId,\"write data to dfs table\",writeData,120);",
|
|
6503
6505
|
" $ cancelJob(myJobId);",
|
|
6504
6506
|
"",
|
|
6507
|
+
""
|
|
6508
|
+
]
|
|
6509
|
+
},
|
|
6510
|
+
{
|
|
6511
|
+
"type": "text",
|
|
6512
|
+
"value": [
|
|
6513
|
+
"取消集群中所有未完成的 job。",
|
|
6514
|
+
""
|
|
6515
|
+
]
|
|
6516
|
+
},
|
|
6517
|
+
{
|
|
6518
|
+
"type": "code",
|
|
6519
|
+
"language": "console",
|
|
6520
|
+
"value": [
|
|
6521
|
+
"",
|
|
6522
|
+
" $ def cancelAllBatchJob(){",
|
|
6523
|
+
" $ jobids=exec jobid from getRecentJobs() where endTime=NULL",
|
|
6524
|
+
" $ cancelJob(jobids)\t",
|
|
6525
|
+
" $ }",
|
|
6526
|
+
" $ pnodeRun(cancelAllBatchJob)",
|
|
6505
6527
|
"",
|
|
6506
6528
|
""
|
|
6507
6529
|
]
|
|
@@ -8508,7 +8530,7 @@
|
|
|
8508
8530
|
{
|
|
8509
8531
|
"type": "text",
|
|
8510
8532
|
"value": [
|
|
8511
|
-
"`X`
|
|
8533
|
+
"`X` 可以是向量、矩阵、集合、字典、内存表。"
|
|
8512
8534
|
]
|
|
8513
8535
|
}
|
|
8514
8536
|
]
|
|
@@ -8555,7 +8577,10 @@
|
|
|
8555
8577
|
" 3->6",
|
|
8556
8578
|
" 1->4",
|
|
8557
8579
|
" 2->5",
|
|
8558
|
-
" $ z.clear!();"
|
|
8580
|
+
" $ z.clear!();",
|
|
8581
|
+
"",
|
|
8582
|
+
" $ t = table(1 2 3 as id, 1.0 2.0 3.0 as value)",
|
|
8583
|
+
" $ t.clear!()"
|
|
8559
8584
|
]
|
|
8560
8585
|
}
|
|
8561
8586
|
]
|
|
@@ -10774,7 +10799,7 @@
|
|
|
10774
10799
|
"value": [
|
|
10775
10800
|
"把源节点上的一个或多个chunk的副本复制到目标节点。如果目标节点上已经存在该chunk,那么系统将忽略本次操作。该命令只能由管理员在控制节点上执行。",
|
|
10776
10801
|
"",
|
|
10777
|
-
"通过
|
|
10802
|
+
"通过 :doc:`/FunctionsandCommands/FunctionReferences/g/getRecoveryTaskStatus` 函数可以查看任务状态。"
|
|
10778
10803
|
]
|
|
10779
10804
|
}
|
|
10780
10805
|
]
|
|
@@ -11718,7 +11743,12 @@
|
|
|
11718
11743
|
"",
|
|
11719
11744
|
"\\(3) 最后为计算结果列,可为多列。",
|
|
11720
11745
|
"",
|
|
11721
|
-
"`metrics`
|
|
11746
|
+
"`metrics` 以元代码的格式表示计算指标,支持输入元组。有关元代码的更多信息可参考 :doc:`/Objects/Metaprogramming`。",
|
|
11747
|
+
"",
|
|
11748
|
+
"* 计算指标可以是一个或多个表达式、系统内置或用户自定义函数,但不能是聚合函数。",
|
|
11749
|
+
"* *metrics* 内支持调用具有多个返回值的函数,且必须指定列名,例如 <func(price) as \\`col1\\`col2>。",
|
|
11750
|
+
"",
|
|
11751
|
+
"请注意,若 *metrics* 中指定了左右表列名相同的时间列或者连接列,默认取左表中的列。如果需要取右表中的列,在列前加上右表名。例如:*matchingColumn* = \\`sym, *timeColumn* = \\`timestamp,则 *metrics* = <[rightTable.sym, rightTable.timestamp, price, val, price*val]> 指定 *metrics* 中输出右表的 sym 列和 timestamp 列。",
|
|
11722
11752
|
"",
|
|
11723
11753
|
"`matchingColumn` 表示连接列的字符串标量/向量/tuple,支持 Integral, Temproal 或 Literal(UUID 除外)类型。",
|
|
11724
11754
|
"",
|
|
@@ -12170,7 +12200,7 @@
|
|
|
12170
12200
|
"",
|
|
12171
12201
|
"`mergeSessionEnd` 为可选参数,是一个布尔值,表示每一个区间的计算是否包括其结束时刻(规整后的时刻)的数据。默认值为 false。",
|
|
12172
12202
|
"",
|
|
12173
|
-
"`forceTriggerSessionEndTime`
|
|
12203
|
+
"`forceTriggerSessionEndTime` 可选参数,是正整数,单位与 *timeColumn* 的时间精度一致。若 *sessionEnd* 时刻对应的窗口数据未计算输出,通过该参数设置系统经过多少时间后触发计算并输出。若不指定 *fill* ,未包含在该窗口内的分组不会输出结果;若指定了 *fill* ,未包含在该窗口内的分组会按照 *fill* 指定的方式输出结果。",
|
|
12174
12204
|
"",
|
|
12175
12205
|
"注:",
|
|
12176
12206
|
"",
|
|
@@ -12487,6 +12517,133 @@
|
|
|
12487
12517
|
}
|
|
12488
12518
|
]
|
|
12489
12519
|
},
|
|
12520
|
+
"createDualOwnershipReactiveStateEngine": {
|
|
12521
|
+
"title": "createDualOwnershipReactiveStateEngine",
|
|
12522
|
+
"type": "function",
|
|
12523
|
+
"children": [
|
|
12524
|
+
{
|
|
12525
|
+
"title": "语法",
|
|
12526
|
+
"type": "grammer",
|
|
12527
|
+
"children": [
|
|
12528
|
+
{
|
|
12529
|
+
"type": "text",
|
|
12530
|
+
"value": [
|
|
12531
|
+
"createDualOwnershipReactiveStateEngine(name, metrics1, metrics2, dummyTable, outputTable, keyColumn1, keyColumn2, [snapshotDir], [snapshotIntervalInMsgCount], [keyPurgeFilter1], [keyPurgeFilter2], [keyPurgeFreqInSecond=0], [raftGroup])"
|
|
12532
|
+
]
|
|
12533
|
+
}
|
|
12534
|
+
]
|
|
12535
|
+
},
|
|
12536
|
+
{
|
|
12537
|
+
"title": "参数",
|
|
12538
|
+
"type": "parameters",
|
|
12539
|
+
"children": [
|
|
12540
|
+
{
|
|
12541
|
+
"type": "text",
|
|
12542
|
+
"value": [
|
|
12543
|
+
"``createDualOwnershipReactiveStateEngine`` 与 :doc:`createReactiveStateEngine` 参数基本一致,这里仅介绍有区别的参数:",
|
|
12544
|
+
"",
|
|
12545
|
+
"对 keyColumn1 分组后的数据按照 metrics1 进行计算,分组数据的清条件则由参数 keyPurgeFilter1 设置。",
|
|
12546
|
+
"",
|
|
12547
|
+
"对 keyColumn2 分组后的数据按照 metrics2 进行计算,分组数据的清条件则由参数 keyPurgeFilter2 设置。",
|
|
12548
|
+
"",
|
|
12549
|
+
"`outputTable` 结果的输出表,可以是内存表或者分布式表。使用 ``createDualOwnershipReactiveStateEngine`` 函数之前,需要将输出表预先设立为一个空表,并指定各列列名以及数据类型。",
|
|
12550
|
+
"",
|
|
12551
|
+
"输出表的各列的顺序为:分组列,计算结果列。",
|
|
12552
|
+
"",
|
|
12553
|
+
"其中:",
|
|
12554
|
+
"",
|
|
12555
|
+
"(1) 输出表的前几列为 keyColumn1 和 keyColumn2 的公共列,然后依次为 keyColumn1 的非公共列和 keyColumn2 的非公共列。",
|
|
12556
|
+
"",
|
|
12557
|
+
"(2) 其后为 metrics1 的计算结果列,metrics2 的计算结果列。"
|
|
12558
|
+
]
|
|
12559
|
+
}
|
|
12560
|
+
]
|
|
12561
|
+
},
|
|
12562
|
+
{
|
|
12563
|
+
"title": "详情",
|
|
12564
|
+
"type": "detail",
|
|
12565
|
+
"children": [
|
|
12566
|
+
{
|
|
12567
|
+
"type": "text",
|
|
12568
|
+
"value": [
|
|
12569
|
+
"Dual Ownership Reactive State Engine 是对响应式状态引擎的扩展,支持对同一张流数据表指定两种不同的分组方式分别应用不同的指标进行并行计算。与响应式状态级联实现相比,调用该函数进行计算极大地提升了计算性能。",
|
|
12570
|
+
"",
|
|
12571
|
+
"注意:该引擎输出和输入顺序保持一致,即内部强制使 keepOrder = True。"
|
|
12572
|
+
]
|
|
12573
|
+
}
|
|
12574
|
+
]
|
|
12575
|
+
},
|
|
12576
|
+
{
|
|
12577
|
+
"title": "例子",
|
|
12578
|
+
"type": "example",
|
|
12579
|
+
"children": [
|
|
12580
|
+
{
|
|
12581
|
+
"type": "code",
|
|
12582
|
+
"language": "console",
|
|
12583
|
+
"value": [
|
|
12584
|
+
" ",
|
|
12585
|
+
" $ share streamTable(1:0, `date`time`sym`market`price`qty, [DATE, TIME, SYMBOL, CHAR, DOUBLE, INT]) as trades",
|
|
12586
|
+
" $ outputTable = table(100:0, `date`sym`market`factor1`factor2, [DATE, SYMBOL, CHAR, DOUBLE, DOUBLE])",
|
|
12587
|
+
" $ dors = createDualOwnershipReactiveStateEngine(name=\"test\", metrics1=<mfirst(price, 3)>, metrics2=<mmax(price, 3)>, dummyTable=trades, outputTable=outputTable, keyColumn1=`date`sym, keyColumn2=`date`market)",
|
|
12588
|
+
" $ tmp = table(1:0, `date`time`sym`market`price`qty, [DATE, TIME, SYMBOL, CHAR, DOUBLE, INT]) ",
|
|
12589
|
+
" $ subscribeTable(tableName=`trades, actionName=\"test\",msgAsTable=true, handler=tableInsert{dors})",
|
|
12590
|
+
" $ insert into tmp values(2012.01.01, 09:00:00.030, `a, 'B', 10.65, 1500)",
|
|
12591
|
+
" $ insert into tmp values(2012.01.01, 09:00:00.030, `a, 'B', 10.59, 2500)",
|
|
12592
|
+
" $ insert into tmp values(2012.01.01, 09:00:00.031, `b, 'A', 10.59, 2500)",
|
|
12593
|
+
" $ insert into tmp values(2012.01.01, 09:00:00.031, `a, 'B', 10.65, 1500)",
|
|
12594
|
+
" $ insert into tmp values(2012.01.01, 09:00:00.031, `a, 'A', 10.59, 2500)",
|
|
12595
|
+
" $ insert into tmp values(2012.01.01, 09:00:00.033, `b, 'B', 10.59, 2500)",
|
|
12596
|
+
" $ insert into tmp values(2012.01.01, 09:00:00.033, `a, 'A', 10.59, 2500)",
|
|
12597
|
+
" $ insert into tmp values(2012.01.01, 09:00:00.034, `b, 'A', 10.59, 2500)",
|
|
12598
|
+
" $ insert into tmp values(2012.01.01, 09:00:00.034, `b, 'A', 10.22, 1200)",
|
|
12599
|
+
" $ insert into tmp values(2012.01.01, 09:00:00.035, `a, 'A', 11.0, 2500)",
|
|
12600
|
+
" $ insert into tmp values(2012.01.02, 09:00:00.031, `b, 'A', 10.22, 1200)",
|
|
12601
|
+
" $ insert into tmp values(2012.01.02, 09:00:00.032, `a, 'B', 11.0, 2500)",
|
|
12602
|
+
" $ insert into tmp values(2012.01.02, 09:00:00.032, `b, 'B', 15.6, 1300)",
|
|
12603
|
+
" $ insert into tmp values(2012.01.02, 09:00:00.040, `c, 'B', 13.2, 2000)",
|
|
12604
|
+
" $ trades.append!(tmp)",
|
|
12605
|
+
" $ select * from outputTable",
|
|
12606
|
+
""
|
|
12607
|
+
]
|
|
12608
|
+
},
|
|
12609
|
+
{
|
|
12610
|
+
"type": "text",
|
|
12611
|
+
"value": [
|
|
12612
|
+
"========== ==== ======= ======== ========",
|
|
12613
|
+
"date sym market factor1 factor2",
|
|
12614
|
+
"========== ==== ======= ======== ========",
|
|
12615
|
+
"2012.01.01 a 'B' ",
|
|
12616
|
+
"2012.01.01 a 'B' ",
|
|
12617
|
+
"2012.01.01 b 'A' ",
|
|
12618
|
+
"2012.01.01 a 'B' 10.65 10.65",
|
|
12619
|
+
"2012.01.01 a 'A' 10.59 ",
|
|
12620
|
+
"2012.01.01 b 'B' 10.65",
|
|
12621
|
+
"2012.01.01 a 'A' 10.65 10.59",
|
|
12622
|
+
"2012.01.01 b 'A' 10.59 10.59",
|
|
12623
|
+
"2012.01.01 b 'A' 10.59 10.59",
|
|
12624
|
+
"2012.01.01 a 'A' 10.59 11",
|
|
12625
|
+
"2012.01.02 b 'A' ",
|
|
12626
|
+
"2012.01.02 a 'B' ",
|
|
12627
|
+
"2012.01.02 b 'B' ",
|
|
12628
|
+
"2012.01.02 c 'B' 15.6",
|
|
12629
|
+
"========== ==== ======= ======== ========",
|
|
12630
|
+
""
|
|
12631
|
+
]
|
|
12632
|
+
},
|
|
12633
|
+
{
|
|
12634
|
+
"type": "code",
|
|
12635
|
+
"language": "console",
|
|
12636
|
+
"value": [
|
|
12637
|
+
"",
|
|
12638
|
+
" $ unsubscribeTable(tableName=`trades, actionName=\"dors\")",
|
|
12639
|
+
" $ undef(`trades,SHARED)",
|
|
12640
|
+
" $ dropStreamEngine(\"dors\")"
|
|
12641
|
+
]
|
|
12642
|
+
}
|
|
12643
|
+
]
|
|
12644
|
+
}
|
|
12645
|
+
]
|
|
12646
|
+
},
|
|
12490
12647
|
"createEqualJoinEngine": {
|
|
12491
12648
|
"title": "createEqualJoinEngine",
|
|
12492
12649
|
"type": "function",
|
|
@@ -12694,6 +12851,100 @@
|
|
|
12694
12851
|
}
|
|
12695
12852
|
]
|
|
12696
12853
|
},
|
|
12854
|
+
"createIPCInMemoryTable": {
|
|
12855
|
+
"title": "createIPCInMemoryTable",
|
|
12856
|
+
"type": "function",
|
|
12857
|
+
"children": [
|
|
12858
|
+
{
|
|
12859
|
+
"title": "语法",
|
|
12860
|
+
"type": "grammer",
|
|
12861
|
+
"children": [
|
|
12862
|
+
{
|
|
12863
|
+
"type": "text",
|
|
12864
|
+
"value": [
|
|
12865
|
+
"createIPCInMemoryTable(size, tableName, columnNames, columnTypes)"
|
|
12866
|
+
]
|
|
12867
|
+
}
|
|
12868
|
+
]
|
|
12869
|
+
},
|
|
12870
|
+
{
|
|
12871
|
+
"title": "参数",
|
|
12872
|
+
"type": "parameters",
|
|
12873
|
+
"children": [
|
|
12874
|
+
{
|
|
12875
|
+
"type": "text",
|
|
12876
|
+
"value": [
|
|
12877
|
+
"`size` 整数,表示 table 能缓存的记录数。该值必须大于 1,000,000,否则系统自动取 1,000,000。",
|
|
12878
|
+
"",
|
|
12879
|
+
"`tableName` 字符串,表示跨进程共享内存表的名称。",
|
|
12880
|
+
"",
|
|
12881
|
+
"`columnNames` 字符串向量,用于指定表的列名。",
|
|
12882
|
+
"",
|
|
12883
|
+
"`columnTypes` 向量,表示每列的数据类型。可使用表示数据类型的系统保留字或相应的字符串。"
|
|
12884
|
+
]
|
|
12885
|
+
}
|
|
12886
|
+
]
|
|
12887
|
+
},
|
|
12888
|
+
{
|
|
12889
|
+
"title": "详情",
|
|
12890
|
+
"type": "detail",
|
|
12891
|
+
"children": [
|
|
12892
|
+
{
|
|
12893
|
+
"type": "text",
|
|
12894
|
+
"value": [
|
|
12895
|
+
"创建一个跨进程共享内存表的句柄。",
|
|
12896
|
+
"",
|
|
12897
|
+
"跨进程共享内存表通过共享内存(由操作系统管理)进行跨进程通信。系统允许不同进程对该内存并发写入(暂不支持并发读),或者不同进程对该内存同时读写。注意:共享内存表仅支持在同一物理机内共享,不支持在集群不同物理节点间进行共享。",
|
|
12898
|
+
"",
|
|
12899
|
+
"跨进程共享内存表支持读写,但不支持对跨进程共享内存表的表结构进行修改。向跨进程共享内存表写数据的方法,与普通内存表一致。但对于跨进程共享内存表,既可以通过表的句柄插入数据,亦可通过与表名同名的表对象插入数据。若一次性插入的数据量大于共享内存,系统会抛出异常。"
|
|
12900
|
+
]
|
|
12901
|
+
}
|
|
12902
|
+
]
|
|
12903
|
+
},
|
|
12904
|
+
{
|
|
12905
|
+
"title": "读写机制:",
|
|
12906
|
+
"children": []
|
|
12907
|
+
},
|
|
12908
|
+
{
|
|
12909
|
+
"title": "场景:",
|
|
12910
|
+
"children": []
|
|
12911
|
+
},
|
|
12912
|
+
{
|
|
12913
|
+
"title": "例子",
|
|
12914
|
+
"type": "example",
|
|
12915
|
+
"children": [
|
|
12916
|
+
{
|
|
12917
|
+
"type": "text",
|
|
12918
|
+
"value": [
|
|
12919
|
+
"创建一个跨进程共享内存表,并作为流数据订阅的输出表。",
|
|
12920
|
+
""
|
|
12921
|
+
]
|
|
12922
|
+
},
|
|
12923
|
+
{
|
|
12924
|
+
"type": "code",
|
|
12925
|
+
"language": "console",
|
|
12926
|
+
"value": [
|
|
12927
|
+
" ",
|
|
12928
|
+
" $ share streamTable(10000:0,`timestamp`temperature, [TIMESTAMP,DOUBLE]) as pubTable",
|
|
12929
|
+
" $ ipc_t = createIPCInMemoryTable(1000000, \"ipc_table\", `timestamp`temperature, [TIMESTAMP, DOUBLE])",
|
|
12930
|
+
" $ def shm_append(mutable table, msg) {",
|
|
12931
|
+
" $ \ttable.append!(msg)",
|
|
12932
|
+
" $ }",
|
|
12933
|
+
" $ subscribeTable(tableName=\"pubTable\", actionName=\"act3\", offset=0, handler=shm_append{ipc_t}, msgAsTable=true)",
|
|
12934
|
+
" // 写入数据",
|
|
12935
|
+
"",
|
|
12936
|
+
" $ n = 200 ",
|
|
12937
|
+
" $ timestamp = 2022.01.01T09:00:00.000 + 1..n",
|
|
12938
|
+
" $ temp = 30 + rand(5.0,n)",
|
|
12939
|
+
" $ tableInsert(shm_test,timestamp,temp)",
|
|
12940
|
+
"",
|
|
12941
|
+
" $ tableInsert(pubTable,timestamp,temp)"
|
|
12942
|
+
]
|
|
12943
|
+
}
|
|
12944
|
+
]
|
|
12945
|
+
}
|
|
12946
|
+
]
|
|
12947
|
+
},
|
|
12697
12948
|
"createLookupJoinEngine": {
|
|
12698
12949
|
"title": "createLookupJoinEngine",
|
|
12699
12950
|
"type": "function",
|
|
@@ -12753,7 +13004,13 @@
|
|
|
12753
13004
|
"",
|
|
12754
13005
|
"\\(2) 最后为计算结果列,可为多列。",
|
|
12755
13006
|
"",
|
|
12756
|
-
"`metrics`
|
|
13007
|
+
"`metrics` 以元代码的格式表示计算指标,支持输入元组。有关元代码的更多信息可参考 :doc:`/Objects/Metaprogramming`。",
|
|
13008
|
+
"",
|
|
13009
|
+
"* 计算指标可以是一个或多个表达式、系统内置或用户自定义函数,但不能是聚合函数。",
|
|
13010
|
+
"* *metrics* 内支持调用具有多个返回值的函数,且必须指定列名,例如 <func(price) as \\`col1\\`col2>。",
|
|
13011
|
+
"",
|
|
13012
|
+
"请注意,若 *metrics* 中指定了时间列或者连接列,需要在连接列或时间列前加上表名来指定该列所属的表,若不加表名,则默认取左表的列。例如:*matchingColumn* = \\`sym, *timeColumn* = \\`timestamp,则 *metrics* = <[rightTable.sym, rightTable.timestamp, price, val, price*val]> 指定 *metrics* 中输出右表的 sym 列和 timestamp 列。",
|
|
13013
|
+
"",
|
|
12757
13014
|
"",
|
|
12758
13015
|
"`matchingColumn` 表示连接列的字符串标量/向量或字符串向量组成的 tuple,支持 Integral, Temproal 或 Literal(UUID 除外)类型。",
|
|
12759
13016
|
"",
|
|
@@ -13300,15 +13557,28 @@
|
|
|
13300
13557
|
"value": [
|
|
13301
13558
|
"`name` 一个字符串,表示响应式状态引擎的名称,是其在一个数据节点/计算节点上的唯一标识。可包含字母,数字和下划线,但必须以字母开头。",
|
|
13302
13559
|
"",
|
|
13303
|
-
"`metrics` 以元代码的形式表示计算公式。有关元代码的详情可参考 :doc:`/Objects/Metaprogramming
|
|
13560
|
+
"`metrics` 以元代码的形式表示计算公式。有关元代码的详情可参考 :doc:`/Objects/Metaprogramming`。若需使用用户自定义函数,请注意以下两点:",
|
|
13561
|
+
"",
|
|
13562
|
+
"1. 需在定义前添加声明 \"@state\"。状态函数只能包含赋值语句和 return 语句。",
|
|
13563
|
+
"",
|
|
13564
|
+
"2. 若赋值语句的右值是一个多返回值的函数,则需要将多个返回值同时赋予多个变量。例如:两个返回值的函数 linearTimeTrend 应用于自定义状态函数中,正确写法为:",
|
|
13565
|
+
"",
|
|
13566
|
+
".. code-block:: console",
|
|
13567
|
+
"",
|
|
13568
|
+
" $ @state",
|
|
13569
|
+
" $ def forcast2(S, N){",
|
|
13570
|
+
" $ linearregIntercept, linearregSlope = linearTimeTrend(S, N)",
|
|
13571
|
+
" $ return (N - 1) * linearregSlope + linearregIntercept",
|
|
13572
|
+
" $ }",
|
|
13304
13573
|
"",
|
|
13305
13574
|
"下列状态函数在 DolphinDB 的响应式状态引擎中的实现均得到了优化。目前,状态引擎不允许使用未经优化的状态函数。应避免使用聚合函数。",
|
|
13306
13575
|
"",
|
|
13307
|
-
"* 累计窗口函数:cumavg, cumsum, cumprod, cumcount, cummin, cummax, cumvar, cumvarp, cumstd, cumstdp, cumcorr, cumcovar, cumbeta, cumwsum, cumwavg, cumfirstNot, cumlastNot, cummed, cumpercentile ",
|
|
13576
|
+
"* 累计窗口函数:cumavg, cumsum, cumprod, cumcount, cummin, cummax, cumvar, cumvarp, cumstd, cumstdp, cumcorr, cumcovar, cumbeta, cumwsum, cumwavg, cumfirstNot, cumlastNot, cummed, cumpercentile, cumPositiveStreak",
|
|
13308
13577
|
"* 滑动窗口函数:ema, mavg, msum, mcount, mprod, mvar, mvarp, mstd, mstdp, mskew, mkurtosis, mmin, mmax, mimin, mimax, mmed, mpercentile, mrank, mcorr, mcovar, mbeta, mwsum, mwavg, mmad, mfirst, mlast, mslr, tmove, tmfirst, tmlast, tmsum, tmavg, tmcount, tmvar, tmvarp, tmstd, tmstdp, tmprod, tmskew, tmkurtosis, tmmin, tmmax, tmmed, tmpercentile, tmrank, tmcovar, tmbeta, tmcorr, tmwavg, tmwsum, tmoving, moving, sma,wma, dema, tema, trima, linearTimeTrend, talib, t3, ma",
|
|
13309
|
-
"* 序列相关函数:deltas, ratios, ffill, move, prev, iterate, ewmMean, ewmVar, ewmStd, ewmCov, ewmCorr",
|
|
13578
|
+
"* 序列相关函数:deltas, ratios, ffill, move, prev, iterate, ewmMean, ewmVar, ewmStd, ewmCov, ewmCorr, prevState",
|
|
13310
13579
|
"* topN相关函数:msumTopN, mavgTopN, mstdpTopN, mstdTopN, mvarpTopN, mvarTopN, mcorrTopN, mbetaTopN, mcovarTopN, mwsumTopN",
|
|
13311
|
-
"*
|
|
13580
|
+
"* 高阶函数:segmentBy(参数 func 暂支持 cumsum, cummax, cummin, cumcount, cumavg, cumstd, cumvar, cumstdp, cumvarp)",
|
|
13581
|
+
"* 其他函数:talibNull, dynamicGroupCumsum, dynamicGroupCumcount, topRange, lowRange",
|
|
13312
13582
|
"",
|
|
13313
13583
|
"注意,:doc:`/Functionalprogramming/TemplateFunctions/talib` 作为状态函数时,第一个参数 `func` 只能是响应式状态引擎支持的状态函数。",
|
|
13314
13584
|
"",
|
|
@@ -13381,7 +13651,7 @@
|
|
|
13381
13651
|
"",
|
|
13382
13652
|
"返回一个表对象,向该表写入数据意味着这些数据进入响应式状态引擎进行计算。",
|
|
13383
13653
|
"",
|
|
13384
|
-
"通常与 :doc:`../s/subscribeTable` 函数一起使用。更多详情请参考教程 `DolphinDB 流聚合引擎 <https://gitee.com/dolphindb/Tutorials_CN/blob/master/stream_aggregator.md>`_。创建的响应式状态引擎可以跨会话调用。",
|
|
13654
|
+
"通常与 :doc:`../s/subscribeTable` 函数一起使用。更多详情请参考教程 `DolphinDB 流聚合引擎 <https://gitee.com/dolphindb/Tutorials_CN/blob/master/%E6%B5%81%E8%AE%A1%E7%AE%97/stream_aggregator.md>`_。创建的响应式状态引擎可以跨会话调用。",
|
|
13385
13655
|
"",
|
|
13386
13656
|
"请注意:响应式状态引擎不支持多线程并发写入,必须配置 *subExecutorPooling* = false,使引擎读写任务串行执行。"
|
|
13387
13657
|
]
|
|
@@ -13478,7 +13748,7 @@
|
|
|
13478
13748
|
{
|
|
13479
13749
|
"type": "text",
|
|
13480
13750
|
"value": [
|
|
13481
|
-
"createSessionWindowEngine(name, sessionGap, metrics, dummyTable, outputTable, [timeColumn], [useSystemTime=false], [keyColumn], [updateTime], [useSessionStartTime=true], [snapshotDir], [snapshotIntervalInMsgCount], [raftGroup])"
|
|
13751
|
+
"createSessionWindowEngine(name, sessionGap, metrics, dummyTable, outputTable, [timeColumn], [useSystemTime=false], [keyColumn], [updateTime], [useSessionStartTime=true], [snapshotDir], [snapshotIntervalInMsgCount], [raftGroup], [forceTriggerTime])"
|
|
13482
13752
|
]
|
|
13483
13753
|
}
|
|
13484
13754
|
]
|
|
@@ -13494,13 +13764,9 @@
|
|
|
13494
13764
|
"",
|
|
13495
13765
|
"`sessionGap` 必选参数,是一个正整数,表示会话窗口之间的时间间隔。此参数的时间单位由 *useSystemTime* 参数决定。",
|
|
13496
13766
|
"",
|
|
13497
|
-
"`
|
|
13498
|
-
"",
|
|
13499
|
-
"* 当 *useSystemTime* = true时,按照数据进入引擎的时刻(毫秒精度的本地系统时间,与数据中的时间列无关)确定窗口。",
|
|
13767
|
+
"`useSessionStartTime`: 可选参数,是一个布尔值,默认值为 true,表示输出表中的时刻是否为数据窗口起始时刻,即每个窗口中第一条数据的时刻。若设置为 false,则表示输出表中的时刻为数据窗口结束时刻,即每个窗口中最后一条数据的时刻+ *sessionGap*。如果指定 *updateTime*,*useSessionStartTime* 必须为 true。",
|
|
13500
13768
|
"",
|
|
13501
|
-
"*
|
|
13502
|
-
"",
|
|
13503
|
-
"`useSessionStartTime`: 可选参数,是一个布尔值,默认值为 true,表示输出表中的时刻是否为数据窗口起始时刻,即每个窗口中第一条数据的时刻。若设置为 false,则表示输出表中的时刻为数据窗口结束时刻,即每个窗口中最后一条数据的时刻+ *sessionGap*。如果指定 *updateTime*,*useSessionStartTime* 必须为 true。"
|
|
13769
|
+
"`forceTriggerTime` 可选参数,非负整数,单位与 *timeColumn* 的时间精度一致。该参数仅在设置 *useSystemTime* = false 时起效。当系统收到最后一条数据后,经过 *forceTriggerTime* 时间,将强制触发未计算的窗口进行计算。请注意,若设置了 *keyColumn*,则各分组内进行上述操作。"
|
|
13504
13770
|
]
|
|
13505
13771
|
}
|
|
13506
13772
|
]
|
|
@@ -13528,77 +13794,84 @@
|
|
|
13528
13794
|
"language": "console",
|
|
13529
13795
|
"value": [
|
|
13530
13796
|
" ",
|
|
13531
|
-
" $ share streamTable(1000:0, `time`volume, [TIMESTAMP, INT]) as trades",
|
|
13532
|
-
" $ output1 =
|
|
13533
|
-
" $ engine_sw = createSessionWindowEngine(name = \"engine_sw\", sessionGap = 5, metrics = <sum(volume)>, dummyTable = trades, outputTable = output1, timeColumn = `time)",
|
|
13797
|
+
" $ share streamTable(1000:0, `time`sym`volume, [TIMESTAMP, SYMBOL, INT]) as trades",
|
|
13798
|
+
" $ output1 = table(10000:0, `time`sym`sumVolume, [TIMESTAMP, SYMBOL, INT])",
|
|
13799
|
+
" $ engine_sw = createSessionWindowEngine(name = \"engine_sw\", sessionGap = 5, metrics = <sum(volume)>, dummyTable = trades, outputTable = output1, timeColumn = `time, keyColumn=`sym)",
|
|
13534
13800
|
" $ subscribeTable(tableName=\"trades\", actionName=\"append_engine_sw\", offset=0, handler=append!{engine_sw}, msgAsTable=true)",
|
|
13535
|
-
"
|
|
13801
|
+
"",
|
|
13536
13802
|
" $ n = 5",
|
|
13537
13803
|
" $ timev = 2018.10.12T10:01:00.000 + (1..n)",
|
|
13804
|
+
" $ symv=take(`A`B`C,n)",
|
|
13538
13805
|
" $ volumev = (1..n)%1000",
|
|
13539
|
-
" $ insert into trades values(timev, volumev)",
|
|
13806
|
+
" $ insert into trades values(timev, symv, volumev)",
|
|
13540
13807
|
" ",
|
|
13541
13808
|
" $ n = 5",
|
|
13542
13809
|
" $ timev = 2018.10.12T10:01:00.010 + (1..n)",
|
|
13543
13810
|
" $ volumev = (1..n)%1000",
|
|
13544
|
-
" $
|
|
13811
|
+
" $ symv=take(`A`B`C,n)",
|
|
13812
|
+
" $ insert into trades values(timev, symv, volumev)",
|
|
13545
13813
|
" ",
|
|
13546
|
-
" $ n =
|
|
13547
|
-
" $ timev = 2018.10.12T10:01:00.020 +
|
|
13814
|
+
" $ n = 6",
|
|
13815
|
+
" $ timev = 2018.10.12T10:01:00.020 + 1 2 3 8 14 20",
|
|
13548
13816
|
" $ volumev = (1..n)%1000",
|
|
13549
|
-
" $
|
|
13550
|
-
" $ volumev
|
|
13551
|
-
" $ insert into trades values(timev, volumev)",
|
|
13817
|
+
" $ symv=take(`A`B`C,n)",
|
|
13818
|
+
" $ insert into trades values(timev, symv, volumev)",
|
|
13552
13819
|
"",
|
|
13553
|
-
" $ select * from
|
|
13820
|
+
" $ select * from output1;",
|
|
13554
13821
|
""
|
|
13555
13822
|
]
|
|
13556
13823
|
},
|
|
13557
13824
|
{
|
|
13558
13825
|
"type": "text",
|
|
13559
13826
|
"value": [
|
|
13560
|
-
"======================== ========",
|
|
13561
|
-
"time volume",
|
|
13562
|
-
"======================== ========",
|
|
13563
|
-
"2018.10.12T10:01:00.001
|
|
13564
|
-
"2018.10.12T10:01:00.002
|
|
13565
|
-
"2018.10.12T10:01:00.003
|
|
13566
|
-
"2018.10.12T10:01:00.
|
|
13567
|
-
"2018.10.12T10:01:00.
|
|
13568
|
-
"2018.10.12T10:01:00.
|
|
13569
|
-
"2018.10.12T10:01:00.
|
|
13570
|
-
"2018.10.12T10:01:00.
|
|
13571
|
-
"2018.10.12T10:01:00.
|
|
13572
|
-
"
|
|
13573
|
-
"
|
|
13574
|
-
"
|
|
13575
|
-
"2018.10.12T10:01:00.023 3",
|
|
13576
|
-
"2018.10.12T10:01:00.028 1",
|
|
13577
|
-
"2018.10.12T10:01:00.029 2",
|
|
13578
|
-
"2018.10.12T10:01:00.030 3",
|
|
13579
|
-
"======================== ========",
|
|
13827
|
+
"======================== ==== ========",
|
|
13828
|
+
"time sym volume",
|
|
13829
|
+
"======================== ==== ========",
|
|
13830
|
+
"2018.10.12T10:01:00.001 A 5",
|
|
13831
|
+
"2018.10.12T10:01:00.002 B 7",
|
|
13832
|
+
"2018.10.12T10:01:00.003 C 3",
|
|
13833
|
+
"2018.10.12T10:01:00.011 A 5",
|
|
13834
|
+
"2018.10.12T10:01:00.012 B 7",
|
|
13835
|
+
"2018.10.12T10:01:00.013 C 3",
|
|
13836
|
+
"2018.10.12T10:01:00.021 A 1",
|
|
13837
|
+
"2018.10.12T10:01:00.022 B 2",
|
|
13838
|
+
"2018.10.12T10:01:00.023 C 3",
|
|
13839
|
+
"======================== ==== ========",
|
|
13840
|
+
"",
|
|
13841
|
+
"指定 forceTriggerTime 为1000ms,收到最后一条消息后,经过1000ms,触发所有分组数据计算输出。用以下代码替换上述引擎创建部分的代码。",
|
|
13580
13842
|
""
|
|
13581
13843
|
]
|
|
13582
13844
|
},
|
|
13583
13845
|
{
|
|
13584
13846
|
"type": "code",
|
|
13585
|
-
"language": "
|
|
13847
|
+
"language": "console",
|
|
13586
13848
|
"value": [
|
|
13587
|
-
"
|
|
13588
|
-
"
|
|
13849
|
+
"",
|
|
13850
|
+
" $ engine_sw = createSessionWindowEngine(name = \"engine_sw\", sessionGap = 5, metrics = <sum(volume)>, dummyTable = trades, outputTable = output1, timeColumn = `time, keyColumn=`sym, forceTriggerTime=1000)",
|
|
13589
13851
|
""
|
|
13590
13852
|
]
|
|
13591
13853
|
},
|
|
13592
13854
|
{
|
|
13593
13855
|
"type": "text",
|
|
13594
13856
|
"value": [
|
|
13595
|
-
"
|
|
13596
|
-
"
|
|
13597
|
-
"========================
|
|
13598
|
-
"
|
|
13599
|
-
"
|
|
13600
|
-
"2018.10.12T10:01:00.
|
|
13601
|
-
"
|
|
13857
|
+
"再次查询输出表,可以得到以下结果:",
|
|
13858
|
+
"",
|
|
13859
|
+
"======================== ==== ========",
|
|
13860
|
+
"time sym volume",
|
|
13861
|
+
"======================== ==== ========",
|
|
13862
|
+
"2018.10.12T10:01:00.001 A 5",
|
|
13863
|
+
"2018.10.12T10:01:00.002 B 7",
|
|
13864
|
+
"2018.10.12T10:01:00.003 C 3",
|
|
13865
|
+
"2018.10.12T10:01:00.011 A 5",
|
|
13866
|
+
"2018.10.12T10:01:00.012 B 7",
|
|
13867
|
+
"2018.10.12T10:01:00.013 C 3",
|
|
13868
|
+
"2018.10.12T10:01:00.021 A 1",
|
|
13869
|
+
"2018.10.12T10:01:00.022 B 2",
|
|
13870
|
+
"2018.10.12T10:01:00.023 C 3",
|
|
13871
|
+
"2018.10.12T10:01:00.028 A 4",
|
|
13872
|
+
"2018.10.12T10:01:00.034 B 5",
|
|
13873
|
+
"2018.10.12T10:01:00.040 C 6",
|
|
13874
|
+
"======================== ==== ========"
|
|
13602
13875
|
]
|
|
13603
13876
|
}
|
|
13604
13877
|
]
|
|
@@ -13769,7 +14042,7 @@
|
|
|
13769
14042
|
"",
|
|
13770
14043
|
"否则,时间乱序的数据在计算中会被直接丢弃。",
|
|
13771
14044
|
"",
|
|
13772
|
-
"该函数通常与 :doc:`../s/subscribeTable` 函数一起使用。更多详情请参考教程 `DolphinDB 流数据引擎 <https://gitee.com/dolphindb/Tutorials_CN/blob/master/stream_aggregator.md>`_。创建时间序列引擎可以跨会话调用。"
|
|
14045
|
+
"该函数通常与 :doc:`../s/subscribeTable` 函数一起使用。更多详情请参考教程 `DolphinDB 流数据引擎 <https://gitee.com/dolphindb/Tutorials_CN/blob/master/%E6%B5%81%E8%AE%A1%E7%AE%97/stream_aggregator.md>`_。创建时间序列引擎可以跨会话调用。"
|
|
13773
14046
|
]
|
|
13774
14047
|
}
|
|
13775
14048
|
]
|
|
@@ -14406,7 +14679,12 @@
|
|
|
14406
14679
|
"",
|
|
14407
14680
|
"`window` 必选参数,表示滑动窗口区间的整型或 DURATION 数据对,其中左右边界都包含在内。",
|
|
14408
14681
|
"",
|
|
14409
|
-
"`metrics`
|
|
14682
|
+
"`metrics` 以元代码的格式表示计算指标,支持输入元组。有关元代码的更多信息可参考 :doc:`/Objects/Metaprogramming`。",
|
|
14683
|
+
"",
|
|
14684
|
+
"* 计算指标可以是一个或多个表达式、系统内置或用户自定义函数,但不能是聚合函数。",
|
|
14685
|
+
"* *metrics* 内支持调用具有多个返回值的函数,且必须指定列名,例如 <func(price) as \\`col1\\`col2>。",
|
|
14686
|
+
"",
|
|
14687
|
+
"请注意,若 *metrics* 中指定了时间列或者连接列,需要在连接列或时间列前加上表名来指定该列所属的表,若不加表名,则默认取左表的列。例如:*matchingColumn* = \\`sym, *timeColumn* = \\`timestamp,则 *metrics* = <[rightTable.sym, rightTable.timestamp, price, val, price*val]> 指定 *metrics* 中输出右表的 sym 列和 timestamp 列。",
|
|
14410
14688
|
"",
|
|
14411
14689
|
"当以下函数只计算 *rightTable* 中的数据列时,window join 引擎对它们进行了优化:sum, sum2, avg, std, var, corr, covar, wavg, wsum, beta, max, min, last, first, med, percentile。",
|
|
14412
14690
|
"",
|
|
@@ -15133,7 +15411,13 @@
|
|
|
15133
15411
|
{
|
|
15134
15412
|
"type": "text",
|
|
15135
15413
|
"value": [
|
|
15136
|
-
"
|
|
15414
|
+
"若 *X* 是向量:",
|
|
15415
|
+
"",
|
|
15416
|
+
"如果没有指定 *k*,对 *X* 内的每个元素,返回其之前所有元素中第一个不为 NULL 的元素。",
|
|
15417
|
+
"",
|
|
15418
|
+
"如果指定 *k*,对 *X* 内的每个元素,返回其之前所有元素中第一个不为 *k* 的元素。",
|
|
15419
|
+
"",
|
|
15420
|
+
"若 *X* 是矩阵,在每列内进行上述计算,返回一个与 *X* 维度相同的矩阵。"
|
|
15137
15421
|
]
|
|
15138
15422
|
}
|
|
15139
15423
|
]
|
|
@@ -15236,7 +15520,13 @@
|
|
|
15236
15520
|
{
|
|
15237
15521
|
"type": "text",
|
|
15238
15522
|
"value": [
|
|
15239
|
-
"
|
|
15523
|
+
"若 *X* 是向量:",
|
|
15524
|
+
"",
|
|
15525
|
+
"如果没有指定 *k*,对 *X* 内的每个元素,返回其之前所有元素中最后一个不为 NULL 的元素。",
|
|
15526
|
+
"",
|
|
15527
|
+
"如果指定 *k*,对 *X* 内的每个元素,返回其之前所有元素中最后一个不为 *k* 的元素。",
|
|
15528
|
+
"",
|
|
15529
|
+
"若 *X* 是矩阵,在每列内进行上述计算,返回一个与 *X* 维度相同的矩阵。"
|
|
15240
15530
|
]
|
|
15241
15531
|
}
|
|
15242
15532
|
]
|
|
@@ -17434,7 +17724,7 @@
|
|
|
17434
17724
|
" $ ID=rand(10, n)",
|
|
17435
17725
|
" $ x=rand(1.0, n)",
|
|
17436
17726
|
" $ t=table(ID, x);",
|
|
17437
|
-
" $ db=database(directory=\"
|
|
17727
|
+
" $ db=database(directory=\"dfs://rangedb\", partitionType=RANGE, partitionScheme=0 5 10)",
|
|
17438
17728
|
" $ pt = db.createPartitionedTable(t, `pt, `ID);",
|
|
17439
17729
|
" $ pt.append!(t);",
|
|
17440
17730
|
"",
|
|
@@ -17472,7 +17762,7 @@
|
|
|
17472
17762
|
" $ t=table(ID, x);",
|
|
17473
17763
|
" $ saveText(t, \"C:/DolphinDB/Data/t.txt\");",
|
|
17474
17764
|
" ",
|
|
17475
|
-
" $ db=database(directory=\"
|
|
17765
|
+
" $ db=database(directory=\"dfs://rangedb\", partitionType=RANGE, partitionScheme=0 5 10)",
|
|
17476
17766
|
" $ pt = loadTextEx(db, `pt, `ID, \"C:/DolphinDB/Data/t.txt\");",
|
|
17477
17767
|
""
|
|
17478
17768
|
]
|
|
@@ -17553,7 +17843,7 @@
|
|
|
17553
17843
|
" $ x=rand(1.0, n);",
|
|
17554
17844
|
" $ t=table(month, x);",
|
|
17555
17845
|
" ",
|
|
17556
|
-
" $ db=database(directory=\"
|
|
17846
|
+
" $ db=database(directory=\"dfs://valuedb\", partitionType=VALUE, partitionScheme=2000.01M..2016.12M)",
|
|
17557
17847
|
" $ pt = db.createPartitionedTable(t, `pt, `month);",
|
|
17558
17848
|
" $ pt.append!(t);",
|
|
17559
17849
|
" ",
|
|
@@ -17589,7 +17879,7 @@
|
|
|
17589
17879
|
" $ x=rand(1.0, n);",
|
|
17590
17880
|
" $ t=table(ticker, x);",
|
|
17591
17881
|
" ",
|
|
17592
|
-
" $ db=database(directory=\"
|
|
17882
|
+
" $ db=database(directory=\"dfs://listdb\", partitionType=LIST, partitionScheme=[`IBM`ORCL`MSFT, `GOOG`FB])",
|
|
17593
17883
|
" $ pt = db.createPartitionedTable(t, `pt, `ticker)",
|
|
17594
17884
|
" $ pt.append!(t);",
|
|
17595
17885
|
" ",
|
|
@@ -17735,7 +18025,7 @@
|
|
|
17735
18025
|
" $ x=rand(1.0, n)",
|
|
17736
18026
|
" $ t=table(ID, x);",
|
|
17737
18027
|
" ",
|
|
17738
|
-
" $ db=database(directory=\"
|
|
18028
|
+
" $ db=database(directory=\"dfs://rangedb5\", partitionType=RANGE, partitionScheme=0 5 10, locations=[`node1`node2, `node3])",
|
|
17739
18029
|
" $ pt = db.createPartitionedTable(t, `pt, `ID);",
|
|
17740
18030
|
" $ pt.append!(t);",
|
|
17741
18031
|
""
|
|
@@ -17771,7 +18061,7 @@
|
|
|
17771
18061
|
"language": "console",
|
|
17772
18062
|
"value": [
|
|
17773
18063
|
" ",
|
|
17774
|
-
" $ db=database(directory=\"
|
|
18064
|
+
" $ db=database(directory=\"dfs://rangedb6\", partitionType=RANGE, partitionScheme=0 5 10, locations=[[\"111.222.3.4:8080\", \"111.222.3.5:8080\"], \"111.222.3.6:8080\"])",
|
|
17775
18065
|
""
|
|
17776
18066
|
]
|
|
17777
18067
|
},
|
|
@@ -20350,6 +20640,52 @@
|
|
|
20350
20640
|
}
|
|
20351
20641
|
]
|
|
20352
20642
|
},
|
|
20643
|
+
"disableQueryMonitor": {
|
|
20644
|
+
"title": "disableQueryMonitor",
|
|
20645
|
+
"type": "command",
|
|
20646
|
+
"children": [
|
|
20647
|
+
{
|
|
20648
|
+
"title": "语法",
|
|
20649
|
+
"type": "grammer",
|
|
20650
|
+
"children": [
|
|
20651
|
+
{
|
|
20652
|
+
"type": "text",
|
|
20653
|
+
"value": [
|
|
20654
|
+
"disableQueryMonitor()"
|
|
20655
|
+
]
|
|
20656
|
+
}
|
|
20657
|
+
]
|
|
20658
|
+
},
|
|
20659
|
+
{
|
|
20660
|
+
"title": "参数",
|
|
20661
|
+
"type": "parameters",
|
|
20662
|
+
"children": [
|
|
20663
|
+
{
|
|
20664
|
+
"type": "text",
|
|
20665
|
+
"value": [
|
|
20666
|
+
"无"
|
|
20667
|
+
]
|
|
20668
|
+
}
|
|
20669
|
+
]
|
|
20670
|
+
},
|
|
20671
|
+
{
|
|
20672
|
+
"title": "详情",
|
|
20673
|
+
"type": "detail",
|
|
20674
|
+
"children": [
|
|
20675
|
+
{
|
|
20676
|
+
"type": "text",
|
|
20677
|
+
"value": [
|
|
20678
|
+
"关闭监控查询任务状态的功能。",
|
|
20679
|
+
"",
|
|
20680
|
+
"由于监控查询任务状态具有一定的内存开销,内存资源紧张时,可以关闭该功能。注意:调用该命令后,用户将无法调用 :doc:`/FunctionsandCommands/FunctionReferences/g/getQueryStatus` 函数获取查询任务的状态。",
|
|
20681
|
+
"",
|
|
20682
|
+
"相关函数: :doc:`../e/enableQueryMonitor`"
|
|
20683
|
+
]
|
|
20684
|
+
}
|
|
20685
|
+
]
|
|
20686
|
+
}
|
|
20687
|
+
]
|
|
20688
|
+
},
|
|
20353
20689
|
"disableTablePersistence": {
|
|
20354
20690
|
"title": "disableTablePersistence",
|
|
20355
20691
|
"type": "command",
|
|
@@ -21570,6 +21906,72 @@
|
|
|
21570
21906
|
}
|
|
21571
21907
|
]
|
|
21572
21908
|
},
|
|
21909
|
+
"dropIPCInMemoryTable": {
|
|
21910
|
+
"title": "dropIPCInMemoryTable",
|
|
21911
|
+
"type": "function",
|
|
21912
|
+
"children": [
|
|
21913
|
+
{
|
|
21914
|
+
"title": "语法",
|
|
21915
|
+
"type": "grammer",
|
|
21916
|
+
"children": [
|
|
21917
|
+
{
|
|
21918
|
+
"type": "text",
|
|
21919
|
+
"value": [
|
|
21920
|
+
"dropIPCInMemoryTable(tableName)"
|
|
21921
|
+
]
|
|
21922
|
+
}
|
|
21923
|
+
]
|
|
21924
|
+
},
|
|
21925
|
+
{
|
|
21926
|
+
"title": "参数",
|
|
21927
|
+
"type": "parameters",
|
|
21928
|
+
"children": [
|
|
21929
|
+
{
|
|
21930
|
+
"type": "text",
|
|
21931
|
+
"value": [
|
|
21932
|
+
"`tableName` 字符串,表示跨进程共享内存表的名称。"
|
|
21933
|
+
]
|
|
21934
|
+
}
|
|
21935
|
+
]
|
|
21936
|
+
},
|
|
21937
|
+
{
|
|
21938
|
+
"title": "详情",
|
|
21939
|
+
"type": "detail",
|
|
21940
|
+
"children": [
|
|
21941
|
+
{
|
|
21942
|
+
"type": "text",
|
|
21943
|
+
"value": [
|
|
21944
|
+
"删除跨进程共享内存表。",
|
|
21945
|
+
"",
|
|
21946
|
+
"注意:server 关机并不能删除跨进程共享内存表,仍然需要通过 ``dropIPCInMemoryTable`` 进行删除。"
|
|
21947
|
+
]
|
|
21948
|
+
}
|
|
21949
|
+
]
|
|
21950
|
+
},
|
|
21951
|
+
{
|
|
21952
|
+
"title": "例子",
|
|
21953
|
+
"type": "example",
|
|
21954
|
+
"children": [
|
|
21955
|
+
{
|
|
21956
|
+
"type": "text",
|
|
21957
|
+
"value": [
|
|
21958
|
+
"删除函数 ``createIPCInMemoryTable`` 例子中创建的表 ipc_table。",
|
|
21959
|
+
""
|
|
21960
|
+
]
|
|
21961
|
+
},
|
|
21962
|
+
{
|
|
21963
|
+
"type": "code",
|
|
21964
|
+
"language": "console",
|
|
21965
|
+
"value": [
|
|
21966
|
+
" ",
|
|
21967
|
+
" $ dropIPCInMemoryTable(`ipc_table)",
|
|
21968
|
+
" ipc_table"
|
|
21969
|
+
]
|
|
21970
|
+
}
|
|
21971
|
+
]
|
|
21972
|
+
}
|
|
21973
|
+
]
|
|
21974
|
+
},
|
|
21573
21975
|
"dropPartition": {
|
|
21574
21976
|
"title": "dropPartition",
|
|
21575
21977
|
"type": "command",
|
|
@@ -21903,7 +22305,7 @@
|
|
|
21903
22305
|
{
|
|
21904
22306
|
"type": "text",
|
|
21905
22307
|
"value": [
|
|
21906
|
-
"`name`
|
|
22308
|
+
"`name` 字符串,表示一个流数据引擎的名称。需指定为已创建的引擎名称,否则会抛出异常。通过 :doc:`../../FunctionReferences/g/getStreamEngineStat` 可查看已创建的引擎名称。",
|
|
21907
22309
|
"",
|
|
21908
22310
|
"详情",
|
|
21909
22311
|
"",
|
|
@@ -23147,6 +23549,50 @@
|
|
|
23147
23549
|
}
|
|
23148
23550
|
]
|
|
23149
23551
|
},
|
|
23552
|
+
"enableQueryMonitor": {
|
|
23553
|
+
"title": "enableQueryMonitor",
|
|
23554
|
+
"type": "command",
|
|
23555
|
+
"children": [
|
|
23556
|
+
{
|
|
23557
|
+
"title": "语法",
|
|
23558
|
+
"type": "grammer",
|
|
23559
|
+
"children": [
|
|
23560
|
+
{
|
|
23561
|
+
"type": "text",
|
|
23562
|
+
"value": [
|
|
23563
|
+
"enableQueryMonitor()"
|
|
23564
|
+
]
|
|
23565
|
+
}
|
|
23566
|
+
]
|
|
23567
|
+
},
|
|
23568
|
+
{
|
|
23569
|
+
"title": "参数",
|
|
23570
|
+
"type": "parameters",
|
|
23571
|
+
"children": [
|
|
23572
|
+
{
|
|
23573
|
+
"type": "text",
|
|
23574
|
+
"value": [
|
|
23575
|
+
"无"
|
|
23576
|
+
]
|
|
23577
|
+
}
|
|
23578
|
+
]
|
|
23579
|
+
},
|
|
23580
|
+
{
|
|
23581
|
+
"title": "详情",
|
|
23582
|
+
"type": "detail",
|
|
23583
|
+
"children": [
|
|
23584
|
+
{
|
|
23585
|
+
"type": "text",
|
|
23586
|
+
"value": [
|
|
23587
|
+
"启用监控查询任务状态的功能。系统默认会开启该功能。",
|
|
23588
|
+
"",
|
|
23589
|
+
"相关函数: :doc:`../d/disableQueryMonitor`"
|
|
23590
|
+
]
|
|
23591
|
+
}
|
|
23592
|
+
]
|
|
23593
|
+
}
|
|
23594
|
+
]
|
|
23595
|
+
},
|
|
23150
23596
|
"enableTablePersistence": {
|
|
23151
23597
|
"title": "enableTablePersistence",
|
|
23152
23598
|
"type": "command",
|
|
@@ -24933,7 +25379,7 @@
|
|
|
24933
25379
|
{
|
|
24934
25380
|
"type": "text",
|
|
24935
25381
|
"value": [
|
|
24936
|
-
"existsPartition(path)"
|
|
25382
|
+
"existsPartition(path, [tableName])"
|
|
24937
25383
|
]
|
|
24938
25384
|
}
|
|
24939
25385
|
]
|
|
@@ -24945,7 +25391,15 @@
|
|
|
24945
25391
|
{
|
|
24946
25392
|
"type": "text",
|
|
24947
25393
|
"value": [
|
|
24948
|
-
"`path`
|
|
25394
|
+
"`path` 字符串,表示分区文件夹的路径。",
|
|
25395
|
+
"",
|
|
25396
|
+
"`tableName` 字符串,表示表名。",
|
|
25397
|
+
"",
|
|
25398
|
+
"* 若分区粒度为数据库级( :doc:`../d/database` : *chunkGranularity* = 'DATABASE'),可以不指定该参数。",
|
|
25399
|
+
"* 若分区粒度为表级( :doc:`../d/database` : *chunkGranularity* = 'TABLE')",
|
|
25400
|
+
"",
|
|
25401
|
+
" * *path* 指定的路径包含了物理索引(通过函数 :doc:`../l/listTables` 获取),可以不指定该参数。",
|
|
25402
|
+
" * 否则,必须指定该参数。"
|
|
24949
25403
|
]
|
|
24950
25404
|
}
|
|
24951
25405
|
]
|
|
@@ -25012,6 +25466,10 @@
|
|
|
25012
25466
|
" $ existsPartition(\"dfs://valueDB/20170807/s\");",
|
|
25013
25467
|
" true",
|
|
25014
25468
|
"",
|
|
25469
|
+
" //表级分区时,path 不包含物理索引,检查分区时需指定表名,否则查找不到分区信息",
|
|
25470
|
+
" $ existsPartition(\"dfs://valueDB/20170807\", `pt) ",
|
|
25471
|
+
" true",
|
|
25472
|
+
"",
|
|
25015
25473
|
" $ existsPartition(\"dfs://valueDB/20170807\");",
|
|
25016
25474
|
" false",
|
|
25017
25475
|
"",
|
|
@@ -28593,6 +29051,8 @@
|
|
|
28593
29051
|
"",
|
|
28594
29052
|
"`partition` 是字符串,表示分区在数据库内的路径,例如 \"/20190101/GOOG\"。",
|
|
28595
29053
|
"",
|
|
29054
|
+
"请注意:若使用 1.30.16/2.00.4 ~ 1.30.18/2.00.6 版本 server,对表级分区数据进行备份和恢复时,该参数必须指定路径到物理索引(可通过函数 :doc:`/FunctionsandCommands/FunctionReferences/l/listTables` 获取),例如分区 \"/compoDB/20170807/0_50\" 下表的物理索引为8,则 partition 需指定为 \"/compoDB/20170807/0_50/8\"。",
|
|
29055
|
+
"",
|
|
28596
29056
|
"`tableName` 是字符串,表示数据库中表的名称。"
|
|
28597
29057
|
]
|
|
28598
29058
|
}
|
|
@@ -28735,6 +29195,84 @@
|
|
|
28735
29195
|
}
|
|
28736
29196
|
]
|
|
28737
29197
|
},
|
|
29198
|
+
"getCacheEngineStat": {
|
|
29199
|
+
"title": "getCacheEngineStat",
|
|
29200
|
+
"type": "function",
|
|
29201
|
+
"children": [
|
|
29202
|
+
{
|
|
29203
|
+
"title": "语法",
|
|
29204
|
+
"type": "grammer",
|
|
29205
|
+
"children": [
|
|
29206
|
+
{
|
|
29207
|
+
"type": "text",
|
|
29208
|
+
"value": [
|
|
29209
|
+
"getCacheEngineStat()"
|
|
29210
|
+
]
|
|
29211
|
+
}
|
|
29212
|
+
]
|
|
29213
|
+
},
|
|
29214
|
+
{
|
|
29215
|
+
"title": "参数",
|
|
29216
|
+
"type": "parameters",
|
|
29217
|
+
"children": [
|
|
29218
|
+
{
|
|
29219
|
+
"type": "text",
|
|
29220
|
+
"value": [
|
|
29221
|
+
"无"
|
|
29222
|
+
]
|
|
29223
|
+
}
|
|
29224
|
+
]
|
|
29225
|
+
},
|
|
29226
|
+
{
|
|
29227
|
+
"title": "详情",
|
|
29228
|
+
"type": "detail",
|
|
29229
|
+
"children": [
|
|
29230
|
+
{
|
|
29231
|
+
"type": "text",
|
|
29232
|
+
"value": [
|
|
29233
|
+
"获取当前节点下 OLAP 引擎 cache engine 的状态信息。该函数只能在数据节点调用。",
|
|
29234
|
+
"",
|
|
29235
|
+
"返回一个表对象,包含以下几列: ",
|
|
29236
|
+
"",
|
|
29237
|
+
"* chunkId: chunk 的唯一标识。",
|
|
29238
|
+
"* physicalName: chunk 所属表的物理表名。",
|
|
29239
|
+
"* timeSinceLastWrite: 距离最后一次写入经过的时间,单位为毫秒。",
|
|
29240
|
+
"* cachedRowsOfCompletedTxn: 当前缓存的已完成事务的记录数。",
|
|
29241
|
+
"* cachedRowsOfUncompletedTxn: 当前缓存的未完成事务的记录数。注意: 每个 chunk 最多只有最后一个事务是未完成的。",
|
|
29242
|
+
"* cachedMemOfCompletedTxn: cachedRowsOfCompletedTxn 占用的内存,单位为字节。",
|
|
29243
|
+
"* cachedMemOfUncompletedTxn: cachedRowsOfUncompletedTxn 占用的内存,单位为字节。",
|
|
29244
|
+
"* cachedTids: 当前缓存的事务 id 列表。"
|
|
29245
|
+
]
|
|
29246
|
+
}
|
|
29247
|
+
]
|
|
29248
|
+
},
|
|
29249
|
+
{
|
|
29250
|
+
"title": "例子",
|
|
29251
|
+
"type": "example",
|
|
29252
|
+
"children": [
|
|
29253
|
+
{
|
|
29254
|
+
"type": "code",
|
|
29255
|
+
"language": "console",
|
|
29256
|
+
"value": [
|
|
29257
|
+
"",
|
|
29258
|
+
" $ getCacheEngineStat()",
|
|
29259
|
+
""
|
|
29260
|
+
]
|
|
29261
|
+
},
|
|
29262
|
+
{
|
|
29263
|
+
"type": "text",
|
|
29264
|
+
"value": [
|
|
29265
|
+
"======================================== ============= =================== ========================== =========================== ======================== =========================== ==============",
|
|
29266
|
+
"chunkId physicalName timeSinceLastWrite cachedRowsOfCompletedTxn cachedRowsOfUncompletedTxn cachedMemOfCompletedTxn cachedMemOfUncompletedTxn cachedTids",
|
|
29267
|
+
"======================================== ============= =================== ========================== =========================== ======================== =========================== ==============",
|
|
29268
|
+
"e4558d3c-fa41-52b5-418b-94e26cb70a75 pt_2 1056 222,386 0 3,558,176 0 2052",
|
|
29269
|
+
"======================================== ============= =================== ========================== =========================== ======================== =========================== =============="
|
|
29270
|
+
]
|
|
29271
|
+
}
|
|
29272
|
+
]
|
|
29273
|
+
}
|
|
29274
|
+
]
|
|
29275
|
+
},
|
|
28738
29276
|
"getChunkPath": {
|
|
28739
29277
|
"title": "getChunkPath",
|
|
28740
29278
|
"type": "function",
|
|
@@ -29157,9 +29695,51 @@
|
|
|
29157
29695
|
{
|
|
29158
29696
|
"type": "text",
|
|
29159
29697
|
"value": [
|
|
29160
|
-
"
|
|
29698
|
+
"获取每个节点的多个配置和性能监控度量值。它只能在控制节点上执行。 注意:代理节点的 `connectionNum` 是一个随机值,可以忽略。",
|
|
29699
|
+
"",
|
|
29700
|
+
"返回一个表对象,包含以下几列:",
|
|
29161
29701
|
"",
|
|
29162
|
-
"
|
|
29702
|
+
"* host:节点的主机名。",
|
|
29703
|
+
"* port:节点的端口号。",
|
|
29704
|
+
"* site:节点的局域网信息。",
|
|
29705
|
+
"* mode:节点的类型。0 表示集群的数据节点,1 表示集群的代理节点,2 表示集群的控制节点,3 表示 single mode 的节点。",
|
|
29706
|
+
"* state:节点是否存活。",
|
|
29707
|
+
"* agentSite:当前节点的代理节点信息。",
|
|
29708
|
+
"* maxConnections:最多可以从多少个外部 GUI ,API 或其它节点连接到本地节点。",
|
|
29709
|
+
"* maxMemSize:当前节点的内存空间上限(单位:GB)。",
|
|
29710
|
+
"* workerNum:常规作业的工作线程的数量。默认值是 CPU 的内核数。",
|
|
29711
|
+
"* executorNum:本地执行线程的数量。默认值是 CPU 内核数减1。",
|
|
29712
|
+
"* connectionNum:连接到本地节点的连接数。",
|
|
29713
|
+
"* name:节点别名。",
|
|
29714
|
+
"* memoryUsed:节点的内存占用量(单位:字节)。",
|
|
29715
|
+
"* memoryAlloc:系统已分配给当前节点的内存(单位:字节)。",
|
|
29716
|
+
"* cpuUsage:CPU 使用率。",
|
|
29717
|
+
"* avgLoad:CPU 平均负载。",
|
|
29718
|
+
"* medLast10QueryTime:前 10 个完成的查询执行所耗费时间的中间值(单位:毫秒)。",
|
|
29719
|
+
"* maxLast10QueryTime:前 10 个完成的查询执行所耗费时间的最大值(单位:毫秒)。",
|
|
29720
|
+
"* medLast100QueryTime:前 100 个完成的查询执行所耗费时间的中间值(单位:毫秒)。",
|
|
29721
|
+
"* maxLast100QueryTime:前100个完成的查询执行所耗费时间的最大值(单位:毫秒)。",
|
|
29722
|
+
"* maxRunningQueryTime:当前正在执行的查询的耗费时间的最大值(单位:毫秒)。",
|
|
29723
|
+
"* runningJobs:正在执行中的 Job 个数。",
|
|
29724
|
+
"* queuedJobs:队列中的 Job 个数。",
|
|
29725
|
+
"* runningTasks:正在执行中的 Task 个数。",
|
|
29726
|
+
"* queuedTasks:队列中的 Task 个数。",
|
|
29727
|
+
"* jobLoad:作业负载。",
|
|
29728
|
+
"* diskCapacity:磁盘容量(单位:字节)。",
|
|
29729
|
+
"* diskFreeSpace:磁盘剩余空间(单位:字节)。",
|
|
29730
|
+
"* diskFreeSpaceRatio:磁盘可用空间占比。",
|
|
29731
|
+
"* diskWriteRate:磁盘写速率 (单位:字节/秒)。",
|
|
29732
|
+
"* diskReadRate:磁盘读速率(单位:字节/秒)。",
|
|
29733
|
+
"* lastMinuteWriteVolume:前一分钟写磁盘容量(单位:字节)。",
|
|
29734
|
+
"* lastMinuteReadVolume:前一分钟读磁盘容量(单位:字节)。",
|
|
29735
|
+
"* networkSendRate:网络发送速率(单位:字节/秒)。",
|
|
29736
|
+
"* networkRecvRate:网络接收速率(单位:字节/秒)。",
|
|
29737
|
+
"* lastMinuteNetworkSend:前一分钟网络发送字节数(单位:字节)。",
|
|
29738
|
+
"* lastMinuteNetworkRecv:前一分钟网络接收字节数 (单位:字节)。",
|
|
29739
|
+
"* publicName:若为控制节点,且配置了 publicName,则显示 publicName;否则显示控制节点所在服务器的 网卡地址。若为数据节点或代理节点,则显示数据节点或代理节点所在服务器的网卡地址。",
|
|
29740
|
+
"* lastMsgLatency:前一批消息的延时(单位:毫秒)。",
|
|
29741
|
+
"* cumMsgLatency:所有消息的平均延时(单位:毫秒)。",
|
|
29742
|
+
"* isLeader:是否是 raft 组的 leader,该字段仅在配置了控制节点高可用时才生效。请注意,若 raft 组存在宕机的节点,则该节点的 isLeader 将返回空值。",
|
|
29163
29743
|
""
|
|
29164
29744
|
]
|
|
29165
29745
|
}
|
|
@@ -29202,8 +29782,41 @@
|
|
|
29202
29782
|
" $ rpc(getControllerAlias(), getClusterPerf).keys()",
|
|
29203
29783
|
" [\"host\",\"port\",\"site\",\"mode\",\"state\",\"agentSite\",\"maxConnections\",\"maxMemSize\",\"workerNum\",\"executorNum\",\"connectionNum\",\"name\",\"memoryUsed\",\"memoryAlloc\",\"cpuUsage\",\"avgLoad\",\"medLast10QueryTime\",\"maxLast10QueryTime\",\"medLast100QueryTime\",\"maxLast100QueryTime\",\"maxRunningQueryTime\",\"runningJobs\",\"queuedJobs\",\"runningTasks\",\"queuedTasks\",\"jobLoad\",\"diskCapacity\",\"diskFreeSpace\",\"diskFreeSpaceRatio\",\"diskWriteRate\",\"diskReadRate\",\"lastMinuteWriteVolume\",\"lastMinuteReadVolume\",\"networkSendRate\",\"networkRecvRate\",\"lastMinuteNetworkSend\",\"lastMinuteNetworkRecv\",\"publicName\",\"lastMsgLatency\",\"cumMsgLatency\"]",
|
|
29204
29784
|
"",
|
|
29785
|
+
""
|
|
29786
|
+
]
|
|
29787
|
+
},
|
|
29788
|
+
{
|
|
29789
|
+
"type": "text",
|
|
29790
|
+
"value": [
|
|
29791
|
+
"集群高可用环境下执行:",
|
|
29792
|
+
""
|
|
29793
|
+
]
|
|
29794
|
+
},
|
|
29795
|
+
{
|
|
29796
|
+
"type": "code",
|
|
29797
|
+
"language": "console",
|
|
29798
|
+
"value": [
|
|
29205
29799
|
"",
|
|
29206
|
-
" "
|
|
29800
|
+
" $ rpc(getControllerAlias(true), getClusterPerf)",
|
|
29801
|
+
""
|
|
29802
|
+
]
|
|
29803
|
+
},
|
|
29804
|
+
{
|
|
29805
|
+
"type": "text",
|
|
29806
|
+
"value": [
|
|
29807
|
+
"=================== =========== ========================================== ====== ======= ===================================== ================ ============ =========== ============= =============== ===================== ============ ============= ========== ========= ==================== ==================== ===================== ===================== ===================== ============= ============ ============== ============= ========= ===================== ======================= ==================== =============== ============== ======================= ====================== ================= ================= ======================= ======================= =============================================== ================ =============== ================",
|
|
29808
|
+
"host port site mode state agentSite maxConnections maxMemSize workerNum executorNum connectionNum name memoryUsed memoryAlloc cpuUsage avgLoad medLast10QueryTime maxLast10QueryTime medLast100QueryTime maxLast100QueryTime maxRunningQueryTime runningJobs queuedJobs runningTasks queuedTasks jobLoad diskCapacity diskFreeSpace diskFreeSpaceRatio diskWriteRate diskReadRate lastMinuteWriteVolume lastMinuteReadVolume networkSendRate networkRecvRate lastMinuteNetworkSend lastMinuteNetworkRecv publicName lastMsgLatency cumMsgLatency isLeader",
|
|
29809
|
+
"=================== =========== ========================================== ====== ======= ===================================== ================ ============ =========== ============= =============== ===================== ============ ============= ========== ========= ==================== ==================== ===================== ===================== ===================== ============= ============ ============== ============= ========= ===================== ======================= ==================== =============== ============== ======================= ====================== ================= ================= ======================= ======================= =============================================== ================ =============== ================",
|
|
29810
|
+
"192.168.100.10 17,000 192.168.100.10:17000:master3 2 1 512 16 64 3 1 master3 23,449,272 24,133,632 0.7788 0.0037 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4,658 2,736 102,468 59,193 78,351 8,012,182 2,378,846 192.198.1.10;172.17.0.1;10.244.5.0;10.244.5.1 0 0 false",
|
|
29811
|
+
"192.168.100.11 17,000 192.168.100.11:17000:master2 2 1 512 16 64 3 2 master2 23,527,872 24,133,632 11.5625 0.3219 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4,670 2,785 116,733 62,402 56,160 1,366,293 1,398,238 192.198.1.11;172.17.0.1;10.244.4.0;10.244.4.1 0 0 false",
|
|
29812
|
+
"192.168.100.12 17,000 192.168.100.12:17000:master1 2 1 512 16 64 3 20 master1 25,002,792 46,538,752 14.0406 0.1136 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4,671 13,546,528 19,964,606 53,206 56,891 22,543,771 8,226,278 192.198.1.12;172.17.0.1;10.244.3.0;10.244.3.1 0 0 true",
|
|
29813
|
+
"192.168.100.12 17,102 192.168.100.12:17102:server19-datanode1 0 1 192.168.100.12:17101:server19-agent1 254 120 5 31 1 server19-datanode1 23,118,960 24,133,632 13.928 0.1136 0 0 0 0 0 0 0 0 0 0 17,790,585,659,392 16,826,060,464,128 0.9458 0 4,687 1,289 23,477 44,197 55,104 352,258 6,163,159 192.198.1.12;172.17.0.1;10.244.3.0;10.244.3.1 0 0 ",
|
|
29814
|
+
"192.168.100.11 17,102 192.168.100.11:17102:server18-datanode1 0 1 192.168.100.11:17101:server18-agent1 254 120 5 31 1 server18-datanode1 23,111,912 24,133,632 14.1066 0.3219 0 0 0 0 0 0 0 0 0 0 17,790,585,659,392 16,714,392,956,928 0.9395 0 4,698 1,989 23,530 40,896 50,706 243,008 250,727 192.198.1.11;172.17.0.1;10.244.4.0;10.244.4.1 0 0 ",
|
|
29815
|
+
"192.168.100.11 17,101 192.168.100.11:17101:server18-agent1 1 1 192.168.100.11:17101:server18-agent1 304 4 4 63 0 server18-agent1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 192.198.1.11;172.17.0.1;10.244.4.0;10.244.4.1 0 0",
|
|
29816
|
+
"192.168.100.10 17,102 192.168.100.10:17102:server17-datanode1 0 1 192.168.100.10:17101:server17-agent1 254 120 5 31 1 server17-datanode1 40,872,496 52,445,184 0.7788 0.0037 0 0 0 0 0 0 0 0 0 0 53,783,736,754,176 50,336,934,432,768 0.9359 0 4,699 13,900,218 18,835 118,935 109,862 6,170,512 408,018 192.198.1.10;172.17.0.1;10.244.5.0;10.244.5.1 0 0",
|
|
29817
|
+
"192.168.100.12 17,101 192.168.100.12:17101:server19-agent1 1 1 192.168.100.12:17101:server19-agent1 304 4 4 63 0 server19-agent1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 192.198.1.12;172.17.0.1;10.244.3.0;10.244.3.1 0 0",
|
|
29818
|
+
"192.168.100.10 17,101 192.168.100.10:17101:server17-agent1 1 1 192.168.100.10:17101:server17-agent1 304 4 4 63 0 server17-agent1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 192.198.1.10;172.17.0.1;10.244.5.0;10.244.5.1 0 0",
|
|
29819
|
+
"=================== =========== ========================================== ====== ======= ===================================== ================ ============ =========== ============= =============== ===================== ============ ============= ========== ========= ==================== ==================== ===================== ===================== ===================== ============= ============ ============== ============= ========= ===================== ======================= ==================== =============== ============== ======================= ====================== ================= ================= ======================= ======================= =============================================== ================ =============== ================"
|
|
29207
29820
|
]
|
|
29208
29821
|
}
|
|
29209
29822
|
]
|
|
@@ -30924,8 +31537,8 @@
|
|
|
30924
31537
|
}
|
|
30925
31538
|
]
|
|
30926
31539
|
},
|
|
30927
|
-
"
|
|
30928
|
-
"title": "
|
|
31540
|
+
"getMemLimitOfQueryResult": {
|
|
31541
|
+
"title": "getMemLimitOfQueryResult",
|
|
30929
31542
|
"type": "function",
|
|
30930
31543
|
"children": [
|
|
30931
31544
|
{
|
|
@@ -30935,7 +31548,7 @@
|
|
|
30935
31548
|
{
|
|
30936
31549
|
"type": "text",
|
|
30937
31550
|
"value": [
|
|
30938
|
-
"
|
|
31551
|
+
"getMemLimitOfQueryResult()"
|
|
30939
31552
|
]
|
|
30940
31553
|
}
|
|
30941
31554
|
]
|
|
@@ -30959,7 +31572,7 @@
|
|
|
30959
31572
|
{
|
|
30960
31573
|
"type": "text",
|
|
30961
31574
|
"value": [
|
|
30962
|
-
"
|
|
31575
|
+
"获取单次查询结果占用的内存上限(单位为字节),返回一个 DOUBLE 类型数据。"
|
|
30963
31576
|
]
|
|
30964
31577
|
}
|
|
30965
31578
|
]
|
|
@@ -30973,76 +31586,24 @@
|
|
|
30973
31586
|
"language": "console",
|
|
30974
31587
|
"value": [
|
|
30975
31588
|
" ",
|
|
30976
|
-
" $
|
|
30977
|
-
"",
|
|
30978
|
-
"
|
|
30979
|
-
"
|
|
30980
|
-
]
|
|
30981
|
-
}
|
|
30982
|
-
]
|
|
30983
|
-
}
|
|
30984
|
-
]
|
|
30985
|
-
},
|
|
30986
|
-
"getNodeAlias": {
|
|
30987
|
-
"title": "getNodeAlias",
|
|
30988
|
-
"type": "function",
|
|
30989
|
-
"children": [
|
|
30990
|
-
{
|
|
30991
|
-
"title": "语法",
|
|
30992
|
-
"type": "grammer",
|
|
30993
|
-
"children": [
|
|
30994
|
-
{
|
|
30995
|
-
"type": "text",
|
|
30996
|
-
"value": [
|
|
30997
|
-
"getNodeAlias()"
|
|
30998
|
-
]
|
|
30999
|
-
}
|
|
31000
|
-
]
|
|
31001
|
-
},
|
|
31002
|
-
{
|
|
31003
|
-
"title": "参数",
|
|
31004
|
-
"type": "parameters",
|
|
31005
|
-
"children": [
|
|
31006
|
-
{
|
|
31007
|
-
"type": "text",
|
|
31008
|
-
"value": [
|
|
31009
|
-
"无"
|
|
31589
|
+
" $ setMemLimitOfQueryResult(0.2)",
|
|
31590
|
+
" $ getMemLimitOfQueryResult() / 1024 / 1024 / 1024",
|
|
31591
|
+
" 0.2",
|
|
31592
|
+
""
|
|
31010
31593
|
]
|
|
31011
|
-
}
|
|
31012
|
-
]
|
|
31013
|
-
},
|
|
31014
|
-
{
|
|
31015
|
-
"title": "详情",
|
|
31016
|
-
"type": "detail",
|
|
31017
|
-
"children": [
|
|
31594
|
+
},
|
|
31018
31595
|
{
|
|
31019
31596
|
"type": "text",
|
|
31020
31597
|
"value": [
|
|
31021
|
-
"
|
|
31022
|
-
]
|
|
31023
|
-
}
|
|
31024
|
-
]
|
|
31025
|
-
},
|
|
31026
|
-
{
|
|
31027
|
-
"title": "例子",
|
|
31028
|
-
"type": "example",
|
|
31029
|
-
"children": [
|
|
31030
|
-
{
|
|
31031
|
-
"type": "code",
|
|
31032
|
-
"language": "console",
|
|
31033
|
-
"value": [
|
|
31034
|
-
" ",
|
|
31035
|
-
" $ getNodeAlias();",
|
|
31036
|
-
"",
|
|
31037
|
-
" controller2"
|
|
31598
|
+
"相关函数::doc:`/FunctionsandCommands/CommandsReferences/s/setMemLimitOfQueryResult`"
|
|
31038
31599
|
]
|
|
31039
31600
|
}
|
|
31040
31601
|
]
|
|
31041
31602
|
}
|
|
31042
31603
|
]
|
|
31043
31604
|
},
|
|
31044
|
-
"
|
|
31045
|
-
"title": "
|
|
31605
|
+
"getMemLimitOfTaskGroupResult": {
|
|
31606
|
+
"title": "getMemLimitOfTaskGroupResult",
|
|
31046
31607
|
"type": "function",
|
|
31047
31608
|
"children": [
|
|
31048
31609
|
{
|
|
@@ -31052,7 +31613,7 @@
|
|
|
31052
31613
|
{
|
|
31053
31614
|
"type": "text",
|
|
31054
31615
|
"value": [
|
|
31055
|
-
"
|
|
31616
|
+
"getMemLimitOfTaskGroupResult()"
|
|
31056
31617
|
]
|
|
31057
31618
|
}
|
|
31058
31619
|
]
|
|
@@ -31076,7 +31637,7 @@
|
|
|
31076
31637
|
{
|
|
31077
31638
|
"type": "text",
|
|
31078
31639
|
"value": [
|
|
31079
|
-
"
|
|
31640
|
+
"获取当前节点发送的批量子查询占用的内存上限(单位为字节),返回一个 DOUBLE 类型数据。"
|
|
31080
31641
|
]
|
|
31081
31642
|
}
|
|
31082
31643
|
]
|
|
@@ -31090,17 +31651,24 @@
|
|
|
31090
31651
|
"language": "console",
|
|
31091
31652
|
"value": [
|
|
31092
31653
|
" ",
|
|
31093
|
-
" $
|
|
31094
|
-
"",
|
|
31095
|
-
" 10
|
|
31654
|
+
" $ setMemLimitOfTaskGroupResult(10)",
|
|
31655
|
+
" $ getMemLimitOfTaskGroupResult() / 1024 / 1024 / 1024",
|
|
31656
|
+
" 10",
|
|
31657
|
+
""
|
|
31658
|
+
]
|
|
31659
|
+
},
|
|
31660
|
+
{
|
|
31661
|
+
"type": "text",
|
|
31662
|
+
"value": [
|
|
31663
|
+
"相关函数::doc:`/FunctionsandCommands/CommandsReferences/s/setMemLimitOfTaskGroupResult`"
|
|
31096
31664
|
]
|
|
31097
31665
|
}
|
|
31098
31666
|
]
|
|
31099
31667
|
}
|
|
31100
31668
|
]
|
|
31101
31669
|
},
|
|
31102
|
-
"
|
|
31103
|
-
"title": "
|
|
31670
|
+
"getMemoryStat": {
|
|
31671
|
+
"title": "getMemoryStat",
|
|
31104
31672
|
"type": "function",
|
|
31105
31673
|
"children": [
|
|
31106
31674
|
{
|
|
@@ -31110,7 +31678,7 @@
|
|
|
31110
31678
|
{
|
|
31111
31679
|
"type": "text",
|
|
31112
31680
|
"value": [
|
|
31113
|
-
"
|
|
31681
|
+
"getMemoryStat()"
|
|
31114
31682
|
]
|
|
31115
31683
|
}
|
|
31116
31684
|
]
|
|
@@ -31134,7 +31702,7 @@
|
|
|
31134
31702
|
{
|
|
31135
31703
|
"type": "text",
|
|
31136
31704
|
"value": [
|
|
31137
|
-
"
|
|
31705
|
+
"返回当前节点已分配的内存和未使用的内存。"
|
|
31138
31706
|
]
|
|
31139
31707
|
}
|
|
31140
31708
|
]
|
|
@@ -31148,17 +31716,18 @@
|
|
|
31148
31716
|
"language": "console",
|
|
31149
31717
|
"value": [
|
|
31150
31718
|
" ",
|
|
31151
|
-
" $
|
|
31719
|
+
" $ getMemoryStat();",
|
|
31152
31720
|
"",
|
|
31153
|
-
"
|
|
31721
|
+
" freeBytes->6430128",
|
|
31722
|
+
" allocatedBytes->35463168"
|
|
31154
31723
|
]
|
|
31155
31724
|
}
|
|
31156
31725
|
]
|
|
31157
31726
|
}
|
|
31158
31727
|
]
|
|
31159
31728
|
},
|
|
31160
|
-
"
|
|
31161
|
-
"title": "
|
|
31729
|
+
"getNodeAlias": {
|
|
31730
|
+
"title": "getNodeAlias",
|
|
31162
31731
|
"type": "function",
|
|
31163
31732
|
"children": [
|
|
31164
31733
|
{
|
|
@@ -31168,7 +31737,7 @@
|
|
|
31168
31737
|
{
|
|
31169
31738
|
"type": "text",
|
|
31170
31739
|
"value": [
|
|
31171
|
-
"
|
|
31740
|
+
"getNodeAlias()"
|
|
31172
31741
|
]
|
|
31173
31742
|
}
|
|
31174
31743
|
]
|
|
@@ -31192,7 +31761,7 @@
|
|
|
31192
31761
|
{
|
|
31193
31762
|
"type": "text",
|
|
31194
31763
|
"value": [
|
|
31195
|
-
"
|
|
31764
|
+
"获取本地节点的别名。该别名定义在配置文件 dolphindb.cfg 中。"
|
|
31196
31765
|
]
|
|
31197
31766
|
}
|
|
31198
31767
|
]
|
|
@@ -31206,17 +31775,17 @@
|
|
|
31206
31775
|
"language": "console",
|
|
31207
31776
|
"value": [
|
|
31208
31777
|
" ",
|
|
31209
|
-
" $
|
|
31778
|
+
" $ getNodeAlias();",
|
|
31210
31779
|
"",
|
|
31211
|
-
"
|
|
31780
|
+
" controller2"
|
|
31212
31781
|
]
|
|
31213
31782
|
}
|
|
31214
31783
|
]
|
|
31215
31784
|
}
|
|
31216
31785
|
]
|
|
31217
31786
|
},
|
|
31218
|
-
"
|
|
31219
|
-
"title": "
|
|
31787
|
+
"getNodeHost": {
|
|
31788
|
+
"title": "getNodeHost",
|
|
31220
31789
|
"type": "function",
|
|
31221
31790
|
"children": [
|
|
31222
31791
|
{
|
|
@@ -31226,7 +31795,7 @@
|
|
|
31226
31795
|
{
|
|
31227
31796
|
"type": "text",
|
|
31228
31797
|
"value": [
|
|
31229
|
-
"
|
|
31798
|
+
"getNodeHost()"
|
|
31230
31799
|
]
|
|
31231
31800
|
}
|
|
31232
31801
|
]
|
|
@@ -31250,7 +31819,7 @@
|
|
|
31250
31819
|
{
|
|
31251
31820
|
"type": "text",
|
|
31252
31821
|
"value": [
|
|
31253
|
-
"
|
|
31822
|
+
"获取本地节点的主机名。该名称定义在配置文件 dolphindb.cfg 中。"
|
|
31254
31823
|
]
|
|
31255
31824
|
}
|
|
31256
31825
|
]
|
|
@@ -31264,17 +31833,17 @@
|
|
|
31264
31833
|
"language": "console",
|
|
31265
31834
|
"value": [
|
|
31266
31835
|
" ",
|
|
31267
|
-
" $
|
|
31836
|
+
" $ getNodeHost();",
|
|
31268
31837
|
"",
|
|
31269
|
-
"
|
|
31838
|
+
" 10.6.0.6"
|
|
31270
31839
|
]
|
|
31271
31840
|
}
|
|
31272
31841
|
]
|
|
31273
31842
|
}
|
|
31274
31843
|
]
|
|
31275
31844
|
},
|
|
31276
|
-
"
|
|
31277
|
-
"title": "
|
|
31845
|
+
"getNodePort": {
|
|
31846
|
+
"title": "getNodePort",
|
|
31278
31847
|
"type": "function",
|
|
31279
31848
|
"children": [
|
|
31280
31849
|
{
|
|
@@ -31284,7 +31853,7 @@
|
|
|
31284
31853
|
{
|
|
31285
31854
|
"type": "text",
|
|
31286
31855
|
"value": [
|
|
31287
|
-
"
|
|
31856
|
+
"getNodePort()"
|
|
31288
31857
|
]
|
|
31289
31858
|
}
|
|
31290
31859
|
]
|
|
@@ -31308,7 +31877,7 @@
|
|
|
31308
31877
|
{
|
|
31309
31878
|
"type": "text",
|
|
31310
31879
|
"value": [
|
|
31311
|
-
"
|
|
31880
|
+
"获取节点使用的端口号。该端口号定义在配置文件dolphindb.cfg 中。"
|
|
31312
31881
|
]
|
|
31313
31882
|
}
|
|
31314
31883
|
]
|
|
@@ -31322,17 +31891,17 @@
|
|
|
31322
31891
|
"language": "console",
|
|
31323
31892
|
"value": [
|
|
31324
31893
|
" ",
|
|
31325
|
-
" $
|
|
31894
|
+
" $ getNodePort();",
|
|
31326
31895
|
"",
|
|
31327
|
-
"
|
|
31896
|
+
" 8888"
|
|
31328
31897
|
]
|
|
31329
31898
|
}
|
|
31330
31899
|
]
|
|
31331
31900
|
}
|
|
31332
31901
|
]
|
|
31333
31902
|
},
|
|
31334
|
-
"
|
|
31335
|
-
"title": "
|
|
31903
|
+
"getNodeType": {
|
|
31904
|
+
"title": "getNodeType",
|
|
31336
31905
|
"type": "function",
|
|
31337
31906
|
"children": [
|
|
31338
31907
|
{
|
|
@@ -31342,7 +31911,181 @@
|
|
|
31342
31911
|
{
|
|
31343
31912
|
"type": "text",
|
|
31344
31913
|
"value": [
|
|
31345
|
-
"
|
|
31914
|
+
"getNodeType()"
|
|
31915
|
+
]
|
|
31916
|
+
}
|
|
31917
|
+
]
|
|
31918
|
+
},
|
|
31919
|
+
{
|
|
31920
|
+
"title": "参数",
|
|
31921
|
+
"type": "parameters",
|
|
31922
|
+
"children": [
|
|
31923
|
+
{
|
|
31924
|
+
"type": "text",
|
|
31925
|
+
"value": [
|
|
31926
|
+
"无"
|
|
31927
|
+
]
|
|
31928
|
+
}
|
|
31929
|
+
]
|
|
31930
|
+
},
|
|
31931
|
+
{
|
|
31932
|
+
"title": "详情",
|
|
31933
|
+
"type": "detail",
|
|
31934
|
+
"children": [
|
|
31935
|
+
{
|
|
31936
|
+
"type": "text",
|
|
31937
|
+
"value": [
|
|
31938
|
+
"返回节点的类型。0表示数据节点;1表示代理节点;2表示控制器节点;3表示单节点模式;4表示计算节点。"
|
|
31939
|
+
]
|
|
31940
|
+
}
|
|
31941
|
+
]
|
|
31942
|
+
},
|
|
31943
|
+
{
|
|
31944
|
+
"title": "例子",
|
|
31945
|
+
"type": "example",
|
|
31946
|
+
"children": [
|
|
31947
|
+
{
|
|
31948
|
+
"type": "code",
|
|
31949
|
+
"language": "console",
|
|
31950
|
+
"value": [
|
|
31951
|
+
" ",
|
|
31952
|
+
" $ getNodeType();",
|
|
31953
|
+
"",
|
|
31954
|
+
" 2"
|
|
31955
|
+
]
|
|
31956
|
+
}
|
|
31957
|
+
]
|
|
31958
|
+
}
|
|
31959
|
+
]
|
|
31960
|
+
},
|
|
31961
|
+
"getOS": {
|
|
31962
|
+
"title": "getOS",
|
|
31963
|
+
"type": "function",
|
|
31964
|
+
"children": [
|
|
31965
|
+
{
|
|
31966
|
+
"title": "语法",
|
|
31967
|
+
"type": "grammer",
|
|
31968
|
+
"children": [
|
|
31969
|
+
{
|
|
31970
|
+
"type": "text",
|
|
31971
|
+
"value": [
|
|
31972
|
+
"getOS()"
|
|
31973
|
+
]
|
|
31974
|
+
}
|
|
31975
|
+
]
|
|
31976
|
+
},
|
|
31977
|
+
{
|
|
31978
|
+
"title": "参数",
|
|
31979
|
+
"type": "parameters",
|
|
31980
|
+
"children": [
|
|
31981
|
+
{
|
|
31982
|
+
"type": "text",
|
|
31983
|
+
"value": [
|
|
31984
|
+
"无"
|
|
31985
|
+
]
|
|
31986
|
+
}
|
|
31987
|
+
]
|
|
31988
|
+
},
|
|
31989
|
+
{
|
|
31990
|
+
"title": "详情",
|
|
31991
|
+
"type": "detail",
|
|
31992
|
+
"children": [
|
|
31993
|
+
{
|
|
31994
|
+
"type": "text",
|
|
31995
|
+
"value": [
|
|
31996
|
+
"返回DolphinDB server所在操作系统的类型。"
|
|
31997
|
+
]
|
|
31998
|
+
}
|
|
31999
|
+
]
|
|
32000
|
+
},
|
|
32001
|
+
{
|
|
32002
|
+
"title": "例子",
|
|
32003
|
+
"type": "example",
|
|
32004
|
+
"children": [
|
|
32005
|
+
{
|
|
32006
|
+
"type": "code",
|
|
32007
|
+
"language": "console",
|
|
32008
|
+
"value": [
|
|
32009
|
+
" ",
|
|
32010
|
+
" $ getOS();",
|
|
32011
|
+
"",
|
|
32012
|
+
" linux"
|
|
32013
|
+
]
|
|
32014
|
+
}
|
|
32015
|
+
]
|
|
32016
|
+
}
|
|
32017
|
+
]
|
|
32018
|
+
},
|
|
32019
|
+
"getOSBit": {
|
|
32020
|
+
"title": "getOSBit",
|
|
32021
|
+
"type": "function",
|
|
32022
|
+
"children": [
|
|
32023
|
+
{
|
|
32024
|
+
"title": "语法",
|
|
32025
|
+
"type": "grammer",
|
|
32026
|
+
"children": [
|
|
32027
|
+
{
|
|
32028
|
+
"type": "text",
|
|
32029
|
+
"value": [
|
|
32030
|
+
"getOSBit()"
|
|
32031
|
+
]
|
|
32032
|
+
}
|
|
32033
|
+
]
|
|
32034
|
+
},
|
|
32035
|
+
{
|
|
32036
|
+
"title": "参数",
|
|
32037
|
+
"type": "parameters",
|
|
32038
|
+
"children": [
|
|
32039
|
+
{
|
|
32040
|
+
"type": "text",
|
|
32041
|
+
"value": [
|
|
32042
|
+
"无"
|
|
32043
|
+
]
|
|
32044
|
+
}
|
|
32045
|
+
]
|
|
32046
|
+
},
|
|
32047
|
+
{
|
|
32048
|
+
"title": "详情",
|
|
32049
|
+
"type": "detail",
|
|
32050
|
+
"children": [
|
|
32051
|
+
{
|
|
32052
|
+
"type": "text",
|
|
32053
|
+
"value": [
|
|
32054
|
+
"返回DolphinDB server所在操作系统的位数。"
|
|
32055
|
+
]
|
|
32056
|
+
}
|
|
32057
|
+
]
|
|
32058
|
+
},
|
|
32059
|
+
{
|
|
32060
|
+
"title": "例子",
|
|
32061
|
+
"type": "example",
|
|
32062
|
+
"children": [
|
|
32063
|
+
{
|
|
32064
|
+
"type": "code",
|
|
32065
|
+
"language": "console",
|
|
32066
|
+
"value": [
|
|
32067
|
+
" ",
|
|
32068
|
+
" $ getOSBit();",
|
|
32069
|
+
"",
|
|
32070
|
+
" 64"
|
|
32071
|
+
]
|
|
32072
|
+
}
|
|
32073
|
+
]
|
|
32074
|
+
}
|
|
32075
|
+
]
|
|
32076
|
+
},
|
|
32077
|
+
"getPerf": {
|
|
32078
|
+
"title": "getPerf",
|
|
32079
|
+
"type": "function",
|
|
32080
|
+
"children": [
|
|
32081
|
+
{
|
|
32082
|
+
"title": "语法",
|
|
32083
|
+
"type": "grammer",
|
|
32084
|
+
"children": [
|
|
32085
|
+
{
|
|
32086
|
+
"type": "text",
|
|
32087
|
+
"value": [
|
|
32088
|
+
"getPerf()"
|
|
31346
32089
|
]
|
|
31347
32090
|
}
|
|
31348
32091
|
]
|
|
@@ -31510,6 +32253,86 @@
|
|
|
31510
32253
|
}
|
|
31511
32254
|
]
|
|
31512
32255
|
},
|
|
32256
|
+
"getQueryStatus": {
|
|
32257
|
+
"title": "getQueryStatus",
|
|
32258
|
+
"type": "function",
|
|
32259
|
+
"children": [
|
|
32260
|
+
{
|
|
32261
|
+
"title": "语法",
|
|
32262
|
+
"type": "grammer",
|
|
32263
|
+
"children": [
|
|
32264
|
+
{
|
|
32265
|
+
"type": "text",
|
|
32266
|
+
"value": [
|
|
32267
|
+
"getQueryStatus()"
|
|
32268
|
+
]
|
|
32269
|
+
}
|
|
32270
|
+
]
|
|
32271
|
+
},
|
|
32272
|
+
{
|
|
32273
|
+
"title": "参数",
|
|
32274
|
+
"type": "parameters",
|
|
32275
|
+
"children": [
|
|
32276
|
+
{
|
|
32277
|
+
"type": "text",
|
|
32278
|
+
"value": [
|
|
32279
|
+
"无"
|
|
32280
|
+
]
|
|
32281
|
+
}
|
|
32282
|
+
]
|
|
32283
|
+
},
|
|
32284
|
+
{
|
|
32285
|
+
"title": "详情",
|
|
32286
|
+
"type": "detail",
|
|
32287
|
+
"children": [
|
|
32288
|
+
{
|
|
32289
|
+
"type": "text",
|
|
32290
|
+
"value": [
|
|
32291
|
+
"获取由当前节点发起且正在执行的查询任务状态,返回一个表对象,包含以下几列:",
|
|
32292
|
+
"",
|
|
32293
|
+
"* id:表示到该查询任务为止,系统已执行的查询任务总数。",
|
|
32294
|
+
"* sessionId:任务发起会话的 id。请注意,无法获取通过 submitJob 提交的查询任务的 sessionId。",
|
|
32295
|
+
"* userId:任务发起会话的用户名。",
|
|
32296
|
+
"* query:原始查询语句中主要的查询信息。",
|
|
32297
|
+
"* startTime:查询任务开始的时间戳。",
|
|
32298
|
+
"* elapsedTimeInMs:查询任务已经经过的时间,单位为毫秒。",
|
|
32299
|
+
"* memoryUsage:查询过程中变量和结果所占用的内存空间,单位为字节。",
|
|
32300
|
+
"* totalTaskCount:查询子任务总数。",
|
|
32301
|
+
"* completedTaskCount:已完成的查询子任务数。",
|
|
32302
|
+
"* percentComplete:已完成的查询子任务占比。",
|
|
32303
|
+
"",
|
|
32304
|
+
"该函数只能在任务发起节点上调用。"
|
|
32305
|
+
]
|
|
32306
|
+
}
|
|
32307
|
+
]
|
|
32308
|
+
},
|
|
32309
|
+
{
|
|
32310
|
+
"title": "例子",
|
|
32311
|
+
"type": "example",
|
|
32312
|
+
"children": [
|
|
32313
|
+
{
|
|
32314
|
+
"type": "code",
|
|
32315
|
+
"language": "console",
|
|
32316
|
+
"value": [
|
|
32317
|
+
"",
|
|
32318
|
+
" getQueryStatus();",
|
|
32319
|
+
""
|
|
32320
|
+
]
|
|
32321
|
+
},
|
|
32322
|
+
{
|
|
32323
|
+
"type": "text",
|
|
32324
|
+
"value": [
|
|
32325
|
+
"=== ========== ======== =============================== ========================= ================ ============ =============== =================== ================",
|
|
32326
|
+
"id sessionId userId query startTime elapsedTimeInMs memoryUsage totalTaskCount completedTaskCount percentComplete",
|
|
32327
|
+
"=== ========== ======== =============================== ========================= ================ ============ =============== =================== ================",
|
|
32328
|
+
"2 1166953221 admin select ticker, id, x from pt 2022.06.14 08:15:00.606 1052 184550000 4 1 0.25",
|
|
32329
|
+
"=== ========== ======== =============================== ========================= ================ ============ =============== =================== ================"
|
|
32330
|
+
]
|
|
32331
|
+
}
|
|
32332
|
+
]
|
|
32333
|
+
}
|
|
32334
|
+
]
|
|
32335
|
+
},
|
|
31513
32336
|
"getRaftElectionTick": {
|
|
31514
32337
|
"title": "getRaftElectionTick",
|
|
31515
32338
|
"type": "function",
|
|
@@ -31694,11 +32517,13 @@
|
|
|
31694
32517
|
"* DeleteSource: 是否删除源节点的数据。当 TaskType 是 ChunkRecovery 时,只能返回 false;当 TaskType 是 LoadRebalance 时,可以返回 true 或 false。",
|
|
31695
32518
|
"* StartTime: 创建恢复任务的时间。",
|
|
31696
32519
|
"* LastDequeueTime: 任务最后一次从任务队列出队的时间。",
|
|
31697
|
-
"* LastStartTime
|
|
32520
|
+
"* LastStartTime: 最后一次开始执行任务的时间。",
|
|
31698
32521
|
"* FinishTime: 任务结束的时间。",
|
|
31699
32522
|
"* IsIncrementalRecovery: 是否启用增量复制。",
|
|
31700
|
-
"* IsAsyncRecovery
|
|
31701
|
-
"* ChangeFromIncrementalToFull:
|
|
32523
|
+
"* IsAsyncRecovery: 是否启用异步复制。",
|
|
32524
|
+
"* ChangeFromIncrementalToFull: 是否从增量恢复转为全量恢复。系统多次尝试增量恢复失败会自动转换成全量恢复。",
|
|
32525
|
+
"* ChangeToSyncTime: 节点在线恢复时,从异步恢复阶段转为同步恢复阶段的时刻。",
|
|
32526
|
+
"* FailureReason:recovery 任务失败的原因。"
|
|
31702
32527
|
]
|
|
31703
32528
|
}
|
|
31704
32529
|
]
|
|
@@ -31721,7 +32546,7 @@
|
|
|
31721
32546
|
},
|
|
31722
32547
|
"getRecoveryWorkerNum": {
|
|
31723
32548
|
"title": "getRecoveryWorkerNum",
|
|
31724
|
-
"type": "
|
|
32549
|
+
"type": "function",
|
|
31725
32550
|
"children": [
|
|
31726
32551
|
{
|
|
31727
32552
|
"title": "语法",
|
|
@@ -31777,7 +32602,82 @@
|
|
|
31777
32602
|
{
|
|
31778
32603
|
"type": "text",
|
|
31779
32604
|
"value": [
|
|
31780
|
-
"相关函数::doc
|
|
32605
|
+
"相关函数::doc:`/FunctionsandCommands/CommandsReferences/r/resetRecoveryWorkerNum`"
|
|
32606
|
+
]
|
|
32607
|
+
}
|
|
32608
|
+
]
|
|
32609
|
+
}
|
|
32610
|
+
]
|
|
32611
|
+
},
|
|
32612
|
+
"getRedoLogGCStat": {
|
|
32613
|
+
"title": "getRedoLogGCStat",
|
|
32614
|
+
"type": "function",
|
|
32615
|
+
"children": [
|
|
32616
|
+
{
|
|
32617
|
+
"title": "语法",
|
|
32618
|
+
"type": "grammer",
|
|
32619
|
+
"children": [
|
|
32620
|
+
{
|
|
32621
|
+
"type": "text",
|
|
32622
|
+
"value": [
|
|
32623
|
+
"getRedoLogGCStat()"
|
|
32624
|
+
]
|
|
32625
|
+
}
|
|
32626
|
+
]
|
|
32627
|
+
},
|
|
32628
|
+
{
|
|
32629
|
+
"title": "参数",
|
|
32630
|
+
"type": "parameters",
|
|
32631
|
+
"children": [
|
|
32632
|
+
{
|
|
32633
|
+
"type": "text",
|
|
32634
|
+
"value": [
|
|
32635
|
+
"无"
|
|
32636
|
+
]
|
|
32637
|
+
}
|
|
32638
|
+
]
|
|
32639
|
+
},
|
|
32640
|
+
{
|
|
32641
|
+
"title": "详情",
|
|
32642
|
+
"type": "detail",
|
|
32643
|
+
"children": [
|
|
32644
|
+
{
|
|
32645
|
+
"type": "text",
|
|
32646
|
+
"value": [
|
|
32647
|
+
"获取 redo log 垃圾回收的状态。返回一个表对象,包含以下几列:",
|
|
32648
|
+
"",
|
|
32649
|
+
"* physicalName:物理表名,格式为 \"/数据库名/物理表名\"",
|
|
32650
|
+
"* txnCount:redo log 尚未回收的事务数。",
|
|
32651
|
+
"* numOfTxnPendingGC:等待回收的事务数。",
|
|
32652
|
+
"* minTidPendingGC:等待回收的事务的最小 tid。",
|
|
32653
|
+
"* numOfTxnPendingFlush:等待刷盘的事务数。",
|
|
32654
|
+
"* minTidPendingFlush:等待刷盘的事务的最小 tid。"
|
|
32655
|
+
]
|
|
32656
|
+
}
|
|
32657
|
+
]
|
|
32658
|
+
},
|
|
32659
|
+
{
|
|
32660
|
+
"title": "例子",
|
|
32661
|
+
"type": "example",
|
|
32662
|
+
"children": [
|
|
32663
|
+
{
|
|
32664
|
+
"type": "code",
|
|
32665
|
+
"language": "console",
|
|
32666
|
+
"value": [
|
|
32667
|
+
" ",
|
|
32668
|
+
" $ getRedoLogGCStat();",
|
|
32669
|
+
""
|
|
32670
|
+
]
|
|
32671
|
+
},
|
|
32672
|
+
{
|
|
32673
|
+
"type": "text",
|
|
32674
|
+
"value": [
|
|
32675
|
+
"============== ============ ==================== ================== ===================== ====================",
|
|
32676
|
+
"physicalName txnCount numOfTxnPendingGC minTidPendingGC numOfTxnPendingFlush minTidPendingFlush",
|
|
32677
|
+
"============== ============ ==================== ================== ===================== ====================",
|
|
32678
|
+
"/test/pt_2 2 0 2 1031",
|
|
32679
|
+
"/listdb/pt_2 1 1 1033 0",
|
|
32680
|
+
"============== ============ ==================== ================== ===================== ===================="
|
|
31781
32681
|
]
|
|
31782
32682
|
}
|
|
31783
32683
|
]
|
|
@@ -32683,7 +33583,7 @@
|
|
|
32683
33583
|
{
|
|
32684
33584
|
"type": "text",
|
|
32685
33585
|
"value": [
|
|
32686
|
-
"监控流计算的状态。返回的结果是一个字典,包含以下
|
|
33586
|
+
"监控流计算的状态。返回的结果是一个字典,包含以下5个表:",
|
|
32687
33587
|
"",
|
|
32688
33588
|
"* 表pubConns监控本地发布节点和它的所有订阅节点之间的连接状态。每一行表示一个订阅节点。它包含以下列:",
|
|
32689
33589
|
"",
|
|
@@ -32796,6 +33696,7 @@
|
|
|
32796
33696
|
"value": [
|
|
32797
33697
|
" $ getStreamingStat().pubConns;",
|
|
32798
33698
|
" $ getStreamingStat().subConns;",
|
|
33699
|
+
" $ getStreamingStat().pubTables;",
|
|
32799
33700
|
" $ getStreamingStat().persistWorkers;",
|
|
32800
33701
|
" $ getStreamingStat().subWorkers;"
|
|
32801
33702
|
]
|
|
@@ -32878,6 +33779,102 @@
|
|
|
32878
33779
|
}
|
|
32879
33780
|
]
|
|
32880
33781
|
},
|
|
33782
|
+
"getSupportBundle": {
|
|
33783
|
+
"title": "getSupportBundle",
|
|
33784
|
+
"type": "function",
|
|
33785
|
+
"children": [
|
|
33786
|
+
{
|
|
33787
|
+
"title": "语法",
|
|
33788
|
+
"type": "grammer",
|
|
33789
|
+
"children": [
|
|
33790
|
+
{
|
|
33791
|
+
"type": "text",
|
|
33792
|
+
"value": [
|
|
33793
|
+
"getSupportBundle([dir])"
|
|
33794
|
+
]
|
|
33795
|
+
}
|
|
33796
|
+
]
|
|
33797
|
+
},
|
|
33798
|
+
{
|
|
33799
|
+
"title": "参数",
|
|
33800
|
+
"type": "parameters",
|
|
33801
|
+
"children": [
|
|
33802
|
+
{
|
|
33803
|
+
"type": "text",
|
|
33804
|
+
"value": [
|
|
33805
|
+
"`dir` 可选参数,用于指定存储路径。若不指定该参数,单节点环境下默认存储至 <HomeDir>(可通过 :doc:`getHomeDir` 查看 <HomeDir>);集群环境下默认存储至 <HomeDir> 同级目录。"
|
|
33806
|
+
]
|
|
33807
|
+
}
|
|
33808
|
+
]
|
|
33809
|
+
},
|
|
33810
|
+
{
|
|
33811
|
+
"title": "详情",
|
|
33812
|
+
"type": "detail",
|
|
33813
|
+
"children": [
|
|
33814
|
+
{
|
|
33815
|
+
"type": "text",
|
|
33816
|
+
"value": [
|
|
33817
|
+
"生成一个包含所有配置信息的文件,并返回文件路径。该函数只能在数据节点/计算节点调用。",
|
|
33818
|
+
"",
|
|
33819
|
+
"配置文件包含以下信息:",
|
|
33820
|
+
"",
|
|
33821
|
+
"",
|
|
33822
|
+
"+----------------------+--------------------------------------------------------------------------------+-----------------------------------------+",
|
|
33823
|
+
"| 模块名 | 含义 | 信息来源 |",
|
|
33824
|
+
"+======================+================================================================================+=========================================+",
|
|
33825
|
+
"| VERSION | server 的版本信息。 | ``version()`` |",
|
|
33826
|
+
"+----------------------+--------------------------------------------------------------------------------+-----------------------------------------+",
|
|
33827
|
+
"| CONFIGS | 配置信息。单机环境下,返回单节点的配置信息;集群环境下,包含集群、控制节点、 | 单机: dolphindb.cfg |",
|
|
33828
|
+
"| | 和数据节点/计算节点的配置。 | 集群: cluster.cfg, |",
|
|
33829
|
+
"| | | cluster.nodes, controller.cfg |",
|
|
33830
|
+
"+----------------------+--------------------------------------------------------------------------------+-----------------------------------------+",
|
|
33831
|
+
"| DB AND TABLE SCHEMA | 所有数据库和表的结构。 | ``schema`` |",
|
|
33832
|
+
"+----------------------+--------------------------------------------------------------------------------+-----------------------------------------+",
|
|
33833
|
+
"| LICENSE AND MACHINE | license、机器核数和内存信息。 | 许可证: dolphindb.lic |",
|
|
33834
|
+
"| INFO | | |",
|
|
33835
|
+
"+----------------------+--------------------------------------------------------------------------------+-----------------------------------------+",
|
|
33836
|
+
"| OLAP CACHE ENGINE | OLAP 引擎 cache Engine 的状态信息,包含各节点的内存信息以及当前节点的状态表。 | ``pnodeRun(getCacheEngineMemSize)`` |",
|
|
33837
|
+
"| STATUS | | ``pnodeRun(getCacheEngineStat)`` |",
|
|
33838
|
+
"+----------------------+--------------------------------------------------------------------------------+-----------------------------------------+",
|
|
33839
|
+
"| TSDB META | 获取 TSDB 引擎下所有 chunk 的元数据。 | ``pnodeRun(getTSDBMetaData)`` |",
|
|
33840
|
+
"+----------------------+--------------------------------------------------------------------------------+-----------------------------------------+",
|
|
33841
|
+
"| REDO LOG GC STATUS | 获取事务 redo log 回收的状态。 | ``pnodeRun(getRedoLogGCStat)`` |",
|
|
33842
|
+
"+----------------------+--------------------------------------------------------------------------------+-----------------------------------------+",
|
|
33843
|
+
"| TRANSACTION STATUS | 获取事务的状态。 | ``pnodeRun(getTransactionStatus)`` |",
|
|
33844
|
+
"+----------------------+--------------------------------------------------------------------------------+-----------------------------------------+",
|
|
33845
|
+
"| TABLETS META | 返回集群中行数最多的前100个 chunk 的元数据信息。 | select top 100 \\* from pnodeRun(getTable|",
|
|
33846
|
+
"| | | tsMeta{\"%\",\"%\",false,-1}) order by |",
|
|
33847
|
+
"| | | rowNum desc |",
|
|
33848
|
+
"+----------------------+--------------------------------------------------------------------------------+-----------------------------------------+",
|
|
33849
|
+
"|ANOMALOUS CHUNK STATUS| 获取处于异常状态的 chunk 信息。异常状态包含处于 recovery 状态,版本号不一致, | ``getClusterChunksStatus()`` |",
|
|
33850
|
+
"|(only in cluster mode)| 副本数不一致等。 | |",
|
|
33851
|
+
"+----------------------+--------------------------------------------------------------------------------+-----------------------------------------+",
|
|
33852
|
+
""
|
|
33853
|
+
]
|
|
33854
|
+
}
|
|
33855
|
+
]
|
|
33856
|
+
},
|
|
33857
|
+
{
|
|
33858
|
+
"title": "例子",
|
|
33859
|
+
"type": "example",
|
|
33860
|
+
"children": [
|
|
33861
|
+
{
|
|
33862
|
+
"type": "code",
|
|
33863
|
+
"language": "console",
|
|
33864
|
+
"value": [
|
|
33865
|
+
"",
|
|
33866
|
+
" $ getSupportBundle()",
|
|
33867
|
+
" /home/dolphindb/server/getSupportBundle.1655869793424",
|
|
33868
|
+
"",
|
|
33869
|
+
" $ getSupportBundle(\"/home/dolphindb/sup\")",
|
|
33870
|
+
" /home/dolphindb/sup/getSupportBundle.1655869853178",
|
|
33871
|
+
" "
|
|
33872
|
+
]
|
|
33873
|
+
}
|
|
33874
|
+
]
|
|
33875
|
+
}
|
|
33876
|
+
]
|
|
33877
|
+
},
|
|
32881
33878
|
"getSystemCpuUsage": {
|
|
32882
33879
|
"title": "getSystemCpuUsage",
|
|
32883
33880
|
"type": "function",
|
|
@@ -33376,6 +34373,82 @@
|
|
|
33376
34373
|
}
|
|
33377
34374
|
]
|
|
33378
34375
|
},
|
|
34376
|
+
"getTransactionStatus": {
|
|
34377
|
+
"title": "getTransactionStatus",
|
|
34378
|
+
"type": "function",
|
|
34379
|
+
"children": [
|
|
34380
|
+
{
|
|
34381
|
+
"title": "语法",
|
|
34382
|
+
"type": "grammer",
|
|
34383
|
+
"children": [
|
|
34384
|
+
{
|
|
34385
|
+
"type": "text",
|
|
34386
|
+
"value": [
|
|
34387
|
+
"getTransactionStatus()"
|
|
34388
|
+
]
|
|
34389
|
+
}
|
|
34390
|
+
]
|
|
34391
|
+
},
|
|
34392
|
+
{
|
|
34393
|
+
"title": "参数",
|
|
34394
|
+
"type": "parameters",
|
|
34395
|
+
"children": [
|
|
34396
|
+
{
|
|
34397
|
+
"type": "text",
|
|
34398
|
+
"value": [
|
|
34399
|
+
"无"
|
|
34400
|
+
]
|
|
34401
|
+
}
|
|
34402
|
+
]
|
|
34403
|
+
},
|
|
34404
|
+
{
|
|
34405
|
+
"title": "详情",
|
|
34406
|
+
"type": "detail",
|
|
34407
|
+
"children": [
|
|
34408
|
+
{
|
|
34409
|
+
"type": "text",
|
|
34410
|
+
"value": [
|
|
34411
|
+
"获取事务的状态,该函数只能在数据节点/计算节点执行。返回一个表,包含以下列:",
|
|
34412
|
+
"",
|
|
34413
|
+
"* tid :事务的 id。",
|
|
34414
|
+
"* startTime:事务开始的时间。",
|
|
34415
|
+
"* type:事务涉及到的操作类型,包括 APPEND, DROP, SQLUPDATE, SQLUPSERT, SQLDELETE, FILEOPERATE 和 UNKNOWN。",
|
|
34416
|
+
"* status:事务当前的状态,包括 BEGIN, COMMIT, COMPLETE, ROLLBACK。",
|
|
34417
|
+
"* partitionCount:事务涉及到的分区数量。",
|
|
34418
|
+
"* endTime:事务结束的时间。",
|
|
34419
|
+
"* elapsedTime:事务持续的时间。"
|
|
34420
|
+
]
|
|
34421
|
+
}
|
|
34422
|
+
]
|
|
34423
|
+
},
|
|
34424
|
+
{
|
|
34425
|
+
"title": "例子",
|
|
34426
|
+
"type": "example",
|
|
34427
|
+
"children": [
|
|
34428
|
+
{
|
|
34429
|
+
"type": "code",
|
|
34430
|
+
"language": "console",
|
|
34431
|
+
"value": [
|
|
34432
|
+
"",
|
|
34433
|
+
" getTransactionStatus() ",
|
|
34434
|
+
""
|
|
34435
|
+
]
|
|
34436
|
+
},
|
|
34437
|
+
{
|
|
34438
|
+
"type": "text",
|
|
34439
|
+
"value": [
|
|
34440
|
+
"============= ========================== ======= ====== ============== ============================ ============",
|
|
34441
|
+
"tid startTime type status partitionCount endTime elapsedTime",
|
|
34442
|
+
"============= ========================== ======= ====== ============== ============================ ============",
|
|
34443
|
+
"3135 2022.06.07 16:19:48.477 APPEND BEGIN 4 584",
|
|
34444
|
+
"3143 2022.06.07 16:11:27.489 APPEND COMMIT 4 \t2022.06.07 16:11:33.100 484",
|
|
34445
|
+
"============= ========================== ======= ====== ============== ============================ ============"
|
|
34446
|
+
]
|
|
34447
|
+
}
|
|
34448
|
+
]
|
|
34449
|
+
}
|
|
34450
|
+
]
|
|
34451
|
+
},
|
|
33379
34452
|
"getUserAccess": {
|
|
33380
34453
|
"title": "getUserAccess",
|
|
33381
34454
|
"type": "function",
|
|
@@ -33746,6 +34819,107 @@
|
|
|
33746
34819
|
}
|
|
33747
34820
|
]
|
|
33748
34821
|
},
|
|
34822
|
+
"gmm": {
|
|
34823
|
+
"title": "gmm",
|
|
34824
|
+
"type": "function",
|
|
34825
|
+
"children": [
|
|
34826
|
+
{
|
|
34827
|
+
"title": "语法",
|
|
34828
|
+
"type": "grammer",
|
|
34829
|
+
"children": [
|
|
34830
|
+
{
|
|
34831
|
+
"type": "text",
|
|
34832
|
+
"value": [
|
|
34833
|
+
"gmm(X, k, [maxIter=300], [tolerance=1e-4], [randomSeed], [mean], [sigma])"
|
|
34834
|
+
]
|
|
34835
|
+
}
|
|
34836
|
+
]
|
|
34837
|
+
},
|
|
34838
|
+
{
|
|
34839
|
+
"title": "参数",
|
|
34840
|
+
"type": "parameters",
|
|
34841
|
+
"children": [
|
|
34842
|
+
{
|
|
34843
|
+
"type": "text",
|
|
34844
|
+
"value": [
|
|
34845
|
+
"`X` 训练数据集。若为一元数据,则 *X* 是一个向量;若为多元数据,则 *X* 是一个矩阵或表,矩阵的每列代表一个样本数据。",
|
|
34846
|
+
"",
|
|
34847
|
+
"`k` 正整数。表示混合模型中子模型的数量。",
|
|
34848
|
+
"",
|
|
34849
|
+
"`maxlter` 正整数,表示最大的迭代次数。默认为 300。",
|
|
34850
|
+
"",
|
|
34851
|
+
"`tolerance` 浮点数,表示 EM 迭代中止的边界差值。如果相邻两次迭代的对数似然函数值的差值小于 *tolerance*,则停止迭代。默认为 1e-4。",
|
|
34852
|
+
"",
|
|
34853
|
+
"`randomSeed` 随机数种子。",
|
|
34854
|
+
"",
|
|
34855
|
+
"`mean` 可选参数,向量/矩阵。表示模型初始化的均值。若 *X* 为一元数据,则 *mean* 是元素个数为 *k* 的向量;若 *X* 为多元数据,则 *mean* 是列数为 *k*,行数与 *X* 的元数相同的矩阵。若不指定,系统随机从 *X* 中选择 *k* 个值作为模型的初始化均值。",
|
|
34856
|
+
"",
|
|
34857
|
+
"`sigma` 可选参数,向量/元组,元素个数为 *k*。若 *X* 为一元数据,表示每个子模型初始化的方差;若 *X* 为多元数据,表示每个子模型初始化的协方差矩阵。若不指定,系统使用元素值为 1 的向量或单位矩阵。",
|
|
34858
|
+
""
|
|
34859
|
+
]
|
|
34860
|
+
}
|
|
34861
|
+
]
|
|
34862
|
+
},
|
|
34863
|
+
{
|
|
34864
|
+
"title": "详情",
|
|
34865
|
+
"type": "detail",
|
|
34866
|
+
"children": [
|
|
34867
|
+
{
|
|
34868
|
+
"type": "text",
|
|
34869
|
+
"value": [
|
|
34870
|
+
"通过数据集训练 GMM(高斯混合模型)。返回一个字典,包含以下键值:",
|
|
34871
|
+
"",
|
|
34872
|
+
"* modelName:字符串 \"Gaussian Mixture Model\"",
|
|
34873
|
+
"* prior:观测数据属于各子模型的先验概率。",
|
|
34874
|
+
"* mean:训练获得的每个子模型的期望。",
|
|
34875
|
+
"* sigma:若 *X* 为 一元数据,表示训练获得的每个子模型的方差;若 *X* 为多元数据,表示训练获得的每个子模型的协方差矩阵。"
|
|
34876
|
+
]
|
|
34877
|
+
}
|
|
34878
|
+
]
|
|
34879
|
+
},
|
|
34880
|
+
{
|
|
34881
|
+
"title": "例子",
|
|
34882
|
+
"type": "example",
|
|
34883
|
+
"children": [
|
|
34884
|
+
{
|
|
34885
|
+
"type": "code",
|
|
34886
|
+
"language": "console",
|
|
34887
|
+
"value": [
|
|
34888
|
+
"",
|
|
34889
|
+
" $ dataT = 6.8 7.2 5.3 9.4 6.5 11.2 25.6 0.6 8.9 4.3 2.2 1.9 8.7 0.2 1.5",
|
|
34890
|
+
" $ mean = [2, 2]",
|
|
34891
|
+
" $ re = gmm(dataT, 2, 300, 1e-4, 42, mean)",
|
|
34892
|
+
" $ re",
|
|
34893
|
+
"",
|
|
34894
|
+
" sigma->[36.759822,36.759822]",
|
|
34895
|
+
" modelName->Gaussian Mixture Model",
|
|
34896
|
+
" prior->[0.5,0.5]",
|
|
34897
|
+
" mean->[6.686667,6.686667]",
|
|
34898
|
+
"",
|
|
34899
|
+
" $ dataT = transpose(matrix(3.2 1.5 2.6 7.8 6.3 4.2 5.1 8.9 11.2 25.8, 25.6 4.6 8.9 4.3 2.2 1.9 8.7 0.2 1.5 9.3))",
|
|
34900
|
+
" $ mean = transpose(matrix([1, 0], [0, 1]))",
|
|
34901
|
+
" $ re = gmm(dataT, 2, 300, 1e-4, 42, mean)",
|
|
34902
|
+
" $ re",
|
|
34903
|
+
"",
|
|
34904
|
+
" sigma->(#0 #1 ",
|
|
34905
|
+
" 51.001369 18.273032",
|
|
34906
|
+
" 18.273032 9.34789 ",
|
|
34907
|
+
" ,#0 #1 ",
|
|
34908
|
+
" 1.718475 0.629584 ",
|
|
34909
|
+
" 0.629584 67.713701",
|
|
34910
|
+
" )",
|
|
34911
|
+
" modelName->Gaussian Mixture Model",
|
|
34912
|
+
" prior->[0.558683,0.441317]",
|
|
34913
|
+
" mean->",
|
|
34914
|
+
" #0 #1 ",
|
|
34915
|
+
" 11.152841 3.238262 ",
|
|
34916
|
+
" 3.341493 10.996997"
|
|
34917
|
+
]
|
|
34918
|
+
}
|
|
34919
|
+
]
|
|
34920
|
+
}
|
|
34921
|
+
]
|
|
34922
|
+
},
|
|
33749
34923
|
"gmtime": {
|
|
33750
34924
|
"title": "gmtime",
|
|
33751
34925
|
"type": "function",
|
|
@@ -39468,6 +40642,128 @@
|
|
|
39468
40642
|
}
|
|
39469
40643
|
]
|
|
39470
40644
|
},
|
|
40645
|
+
"isPeak": {
|
|
40646
|
+
"title": "isPeak",
|
|
40647
|
+
"type": "function",
|
|
40648
|
+
"children": [
|
|
40649
|
+
{
|
|
40650
|
+
"title": "语法",
|
|
40651
|
+
"type": "grammer",
|
|
40652
|
+
"children": [
|
|
40653
|
+
{
|
|
40654
|
+
"type": "text",
|
|
40655
|
+
"value": [
|
|
40656
|
+
"isPeak(X, [strict=true])"
|
|
40657
|
+
]
|
|
40658
|
+
}
|
|
40659
|
+
]
|
|
40660
|
+
},
|
|
40661
|
+
{
|
|
40662
|
+
"title": "参数",
|
|
40663
|
+
"type": "parameters",
|
|
40664
|
+
"children": [
|
|
40665
|
+
{
|
|
40666
|
+
"type": "text",
|
|
40667
|
+
"value": [
|
|
40668
|
+
"`X` 数值型向量/矩阵/表。",
|
|
40669
|
+
"",
|
|
40670
|
+
"`strict` 布尔值,表示是否取严格的峰值点。默认值为 true。"
|
|
40671
|
+
]
|
|
40672
|
+
}
|
|
40673
|
+
]
|
|
40674
|
+
},
|
|
40675
|
+
{
|
|
40676
|
+
"title": "详情",
|
|
40677
|
+
"type": "detail",
|
|
40678
|
+
"children": [
|
|
40679
|
+
{
|
|
40680
|
+
"type": "text",
|
|
40681
|
+
"value": [
|
|
40682
|
+
"若 *X* 为向量,计算 *X* 中的每个元素是否为峰值点,若是则返回 true,否则返回 false。",
|
|
40683
|
+
"",
|
|
40684
|
+
"判断规则为:",
|
|
40685
|
+
"",
|
|
40686
|
+
"* 若 *strict* = true,相邻元素不为空且严格小于该元素;",
|
|
40687
|
+
"* 若 *strict* = false,相邻元素不为空且小于等于该元素;",
|
|
40688
|
+
"",
|
|
40689
|
+
"若 *X* 为矩阵,在每列进行上述计算,返回值一个同 X 维度相同的矩阵。若 *X* 为表,则只对数值型的列进行上述计算。"
|
|
40690
|
+
]
|
|
40691
|
+
}
|
|
40692
|
+
]
|
|
40693
|
+
},
|
|
40694
|
+
{
|
|
40695
|
+
"title": "例子",
|
|
40696
|
+
"type": "example",
|
|
40697
|
+
"children": [
|
|
40698
|
+
{
|
|
40699
|
+
"type": "code",
|
|
40700
|
+
"language": "console",
|
|
40701
|
+
"value": [
|
|
40702
|
+
"",
|
|
40703
|
+
" $ v = [1, 2.2, 2.2, 2.2, 2.3, 1, 1.2]",
|
|
40704
|
+
" $ isPeak(v)",
|
|
40705
|
+
" [0,0,0,0,1,0,0]",
|
|
40706
|
+
"",
|
|
40707
|
+
" $ v = [1, 2.2, 2.2, 2.2, 1.6, 1, 1.2]",
|
|
40708
|
+
" $ isPeak(v)",
|
|
40709
|
+
" [0,0,0,0,0,0,0]",
|
|
40710
|
+
" $ isPeak(v, false)",
|
|
40711
|
+
" [0,1,1,1,0,0,0]",
|
|
40712
|
+
"",
|
|
40713
|
+
" // 矩阵在每列单独计算",
|
|
40714
|
+
" $ m = matrix(3.3 2.8 5.6 NULL 2.5 1.2, 4.5 3.5 4.6 2.8 3.9 NULL)",
|
|
40715
|
+
" $ isPeak(m)",
|
|
40716
|
+
""
|
|
40717
|
+
]
|
|
40718
|
+
},
|
|
40719
|
+
{
|
|
40720
|
+
"type": "text",
|
|
40721
|
+
"value": [
|
|
40722
|
+
"== ==",
|
|
40723
|
+
"#0 #1",
|
|
40724
|
+
"== ==",
|
|
40725
|
+
"0 0 ",
|
|
40726
|
+
"0 0 ",
|
|
40727
|
+
"0 1 ",
|
|
40728
|
+
"0 0 ",
|
|
40729
|
+
"0 0 ",
|
|
40730
|
+
"0 0 ",
|
|
40731
|
+
"== ==",
|
|
40732
|
+
""
|
|
40733
|
+
]
|
|
40734
|
+
},
|
|
40735
|
+
{
|
|
40736
|
+
"type": "code",
|
|
40737
|
+
"language": "console",
|
|
40738
|
+
"value": [
|
|
40739
|
+
"",
|
|
40740
|
+
" // 表只在数值列进行计算",
|
|
40741
|
+
" $ t = table(`01`01`00`01`02`00 as id, 2022.01.01 + 1..6 as date, 388.3 390.6 390.8 390.6 390.3 391.5 as price)",
|
|
40742
|
+
" $ isPeak(t)",
|
|
40743
|
+
""
|
|
40744
|
+
]
|
|
40745
|
+
},
|
|
40746
|
+
{
|
|
40747
|
+
"type": "text",
|
|
40748
|
+
"value": [
|
|
40749
|
+
"== ========== =====",
|
|
40750
|
+
"id date price",
|
|
40751
|
+
"== ========== =====",
|
|
40752
|
+
"01 2022.01.02 0 ",
|
|
40753
|
+
"01 2022.01.03 0 ",
|
|
40754
|
+
"00 2022.01.04 1 ",
|
|
40755
|
+
"01 2022.01.05 0 ",
|
|
40756
|
+
"02 2022.01.06 0 ",
|
|
40757
|
+
"00 2022.01.07 0",
|
|
40758
|
+
"== ========== =====",
|
|
40759
|
+
"",
|
|
40760
|
+
"相关函数::doc:`isValley`"
|
|
40761
|
+
]
|
|
40762
|
+
}
|
|
40763
|
+
]
|
|
40764
|
+
}
|
|
40765
|
+
]
|
|
40766
|
+
},
|
|
39471
40767
|
"isQuarterEnd": {
|
|
39472
40768
|
"title": "isQuarterEnd",
|
|
39473
40769
|
"type": "function",
|
|
@@ -39944,6 +41240,128 @@
|
|
|
39944
41240
|
}
|
|
39945
41241
|
]
|
|
39946
41242
|
},
|
|
41243
|
+
"isValley": {
|
|
41244
|
+
"title": "isValley",
|
|
41245
|
+
"type": "function",
|
|
41246
|
+
"children": [
|
|
41247
|
+
{
|
|
41248
|
+
"title": "语法",
|
|
41249
|
+
"type": "grammer",
|
|
41250
|
+
"children": [
|
|
41251
|
+
{
|
|
41252
|
+
"type": "text",
|
|
41253
|
+
"value": [
|
|
41254
|
+
"isValley(X, [strict=true])"
|
|
41255
|
+
]
|
|
41256
|
+
}
|
|
41257
|
+
]
|
|
41258
|
+
},
|
|
41259
|
+
{
|
|
41260
|
+
"title": "参数",
|
|
41261
|
+
"type": "parameters",
|
|
41262
|
+
"children": [
|
|
41263
|
+
{
|
|
41264
|
+
"type": "text",
|
|
41265
|
+
"value": [
|
|
41266
|
+
"`X` 数值型向量/矩阵/表。",
|
|
41267
|
+
"",
|
|
41268
|
+
"`strict` 布尔值,表示是否取严格的谷值点。默认值为 true。"
|
|
41269
|
+
]
|
|
41270
|
+
}
|
|
41271
|
+
]
|
|
41272
|
+
},
|
|
41273
|
+
{
|
|
41274
|
+
"title": "详情",
|
|
41275
|
+
"type": "detail",
|
|
41276
|
+
"children": [
|
|
41277
|
+
{
|
|
41278
|
+
"type": "text",
|
|
41279
|
+
"value": [
|
|
41280
|
+
"若 *X* 为向量,计算 *X* 中的每个元素是否为谷值点,若是则返回 true,否则返回 false。",
|
|
41281
|
+
"",
|
|
41282
|
+
"判断规则为:",
|
|
41283
|
+
"",
|
|
41284
|
+
"* 若 *strict* = true,相邻元素不为空且严格大于该元素;",
|
|
41285
|
+
"* 若 *strict* = false,相邻元素不为空且大于等于该元素;",
|
|
41286
|
+
"",
|
|
41287
|
+
"若 *X* 为矩阵,在每列进行上述计算,返回值一个同 X 维度相同的矩阵。若 *X* 为表,则只对数值型的列进行上述计算。"
|
|
41288
|
+
]
|
|
41289
|
+
}
|
|
41290
|
+
]
|
|
41291
|
+
},
|
|
41292
|
+
{
|
|
41293
|
+
"title": "例子",
|
|
41294
|
+
"type": "example",
|
|
41295
|
+
"children": [
|
|
41296
|
+
{
|
|
41297
|
+
"type": "code",
|
|
41298
|
+
"language": "console",
|
|
41299
|
+
"value": [
|
|
41300
|
+
"",
|
|
41301
|
+
" $ v = [3.1, 2.2, 2.2, 2.2, 1.3, 2.1, 1.2]",
|
|
41302
|
+
" $ isValley(v)",
|
|
41303
|
+
" [0,0,0,0,1,0,0]",
|
|
41304
|
+
"",
|
|
41305
|
+
" $ v = [3.1, 2.2, 2.2, 2.2, 2.6, 1, 1.2]",
|
|
41306
|
+
" $ isValley(v)",
|
|
41307
|
+
" [0,0,0,0,0,1,0]",
|
|
41308
|
+
" $ isValley(v, false)",
|
|
41309
|
+
" [0,1,1,1,0,1,0]",
|
|
41310
|
+
"",
|
|
41311
|
+
" // 矩阵在每列单独计算",
|
|
41312
|
+
" $ m = matrix(5.3 5.8 5.6 NULL 5.7 1.2, 4.5 3.5 4.6 2.8 3.9 NULL)",
|
|
41313
|
+
" $ isValley(m)",
|
|
41314
|
+
""
|
|
41315
|
+
]
|
|
41316
|
+
},
|
|
41317
|
+
{
|
|
41318
|
+
"type": "text",
|
|
41319
|
+
"value": [
|
|
41320
|
+
"== ==",
|
|
41321
|
+
"#0 #1",
|
|
41322
|
+
"== ==",
|
|
41323
|
+
"0 0 ",
|
|
41324
|
+
"0 1 ",
|
|
41325
|
+
"0 0 ",
|
|
41326
|
+
"0 1 ",
|
|
41327
|
+
"0 0 ",
|
|
41328
|
+
"0 0 ",
|
|
41329
|
+
"== ==",
|
|
41330
|
+
""
|
|
41331
|
+
]
|
|
41332
|
+
},
|
|
41333
|
+
{
|
|
41334
|
+
"type": "code",
|
|
41335
|
+
"language": "console",
|
|
41336
|
+
"value": [
|
|
41337
|
+
"",
|
|
41338
|
+
" // 表只在数值列进行计算",
|
|
41339
|
+
" $ t = table(`01`01`00`01`02`00 as id, 2022.01.01 + 1..6 as date, 388.3 390.6 390.8 390.6 390.3 391.5 as price)",
|
|
41340
|
+
" $ isValley(t)",
|
|
41341
|
+
""
|
|
41342
|
+
]
|
|
41343
|
+
},
|
|
41344
|
+
{
|
|
41345
|
+
"type": "text",
|
|
41346
|
+
"value": [
|
|
41347
|
+
"== ========== =====",
|
|
41348
|
+
"id date price",
|
|
41349
|
+
"== ========== =====",
|
|
41350
|
+
"01 2022.01.02 0 ",
|
|
41351
|
+
"01 2022.01.03 0 ",
|
|
41352
|
+
"00 2022.01.04 0 ",
|
|
41353
|
+
"01 2022.01.05 0 ",
|
|
41354
|
+
"02 2022.01.06 1 ",
|
|
41355
|
+
"00 2022.01.07 0",
|
|
41356
|
+
"== ========== =====",
|
|
41357
|
+
"",
|
|
41358
|
+
"相关函数::doc:`isPeak`"
|
|
41359
|
+
]
|
|
41360
|
+
}
|
|
41361
|
+
]
|
|
41362
|
+
}
|
|
41363
|
+
]
|
|
41364
|
+
},
|
|
39947
41365
|
"isVoid": {
|
|
39948
41366
|
"title": "isVoid",
|
|
39949
41367
|
"type": "function",
|
|
@@ -43429,7 +44847,7 @@
|
|
|
43429
44847
|
{
|
|
43430
44848
|
"type": "text",
|
|
43431
44849
|
"value": [
|
|
43432
|
-
"`dbUrl`
|
|
44850
|
+
"`dbUrl` 是一个字符串,表示分布式数据库的路径。"
|
|
43433
44851
|
]
|
|
43434
44852
|
}
|
|
43435
44853
|
]
|
|
@@ -43515,6 +44933,8 @@
|
|
|
43515
44933
|
"",
|
|
43516
44934
|
"`partition` 是字符串,表示分区在数据库内的路径,例如 \"/20190101/GOOG\"。",
|
|
43517
44935
|
"",
|
|
44936
|
+
"请注意:若使用 1.30.16/2.00.4 ~ 1.30.18/2.00.6 版本 server,对表级分区数据进行备份和恢复时,该参数必须指定路径到物理索引(可通过函数 :doc:`/FunctionsandCommands/FunctionReferences/l/listTables` 获取),例如分区 \"/compoDB/20170807/0_50\" 下表的物理索引为8,则 partition 需指定为 \"/compoDB/20170807/0_50/8\"。",
|
|
44937
|
+
"",
|
|
43518
44938
|
"`tableName` 是字符串,表示分布式表的名称。"
|
|
43519
44939
|
]
|
|
43520
44940
|
}
|
|
@@ -43634,6 +45054,71 @@
|
|
|
43634
45054
|
}
|
|
43635
45055
|
]
|
|
43636
45056
|
},
|
|
45057
|
+
"loadIPCInMemoryTable": {
|
|
45058
|
+
"title": "loadIPCInMemoryTable",
|
|
45059
|
+
"type": "function",
|
|
45060
|
+
"children": [
|
|
45061
|
+
{
|
|
45062
|
+
"title": "语法",
|
|
45063
|
+
"type": "grammer",
|
|
45064
|
+
"children": [
|
|
45065
|
+
{
|
|
45066
|
+
"type": "text",
|
|
45067
|
+
"value": [
|
|
45068
|
+
"loadIPCInMemoryTable(tableName)"
|
|
45069
|
+
]
|
|
45070
|
+
}
|
|
45071
|
+
]
|
|
45072
|
+
},
|
|
45073
|
+
{
|
|
45074
|
+
"title": "参数",
|
|
45075
|
+
"type": "parameters",
|
|
45076
|
+
"children": [
|
|
45077
|
+
{
|
|
45078
|
+
"type": "text",
|
|
45079
|
+
"value": [
|
|
45080
|
+
"`tableName` 字符串,表示跨进程共享内存表的名称。"
|
|
45081
|
+
]
|
|
45082
|
+
}
|
|
45083
|
+
]
|
|
45084
|
+
},
|
|
45085
|
+
{
|
|
45086
|
+
"title": "详情",
|
|
45087
|
+
"type": "detail",
|
|
45088
|
+
"children": [
|
|
45089
|
+
{
|
|
45090
|
+
"type": "text",
|
|
45091
|
+
"value": [
|
|
45092
|
+
"加载跨进程共享内存表,并返回该表的句柄。"
|
|
45093
|
+
]
|
|
45094
|
+
}
|
|
45095
|
+
]
|
|
45096
|
+
},
|
|
45097
|
+
{
|
|
45098
|
+
"title": "例子",
|
|
45099
|
+
"type": "example",
|
|
45100
|
+
"children": [
|
|
45101
|
+
{
|
|
45102
|
+
"type": "text",
|
|
45103
|
+
"value": [
|
|
45104
|
+
"加载函数 ``createIPCInMemoryTable`` 例子中创建的表 ipc_table。",
|
|
45105
|
+
""
|
|
45106
|
+
]
|
|
45107
|
+
},
|
|
45108
|
+
{
|
|
45109
|
+
"type": "code",
|
|
45110
|
+
"language": "console",
|
|
45111
|
+
"value": [
|
|
45112
|
+
" ",
|
|
45113
|
+
" $ ipc_t = loadIPCInMemoryTable(\"ipc_table\")",
|
|
45114
|
+
" $ ipc_t",
|
|
45115
|
+
" timestamp temperature"
|
|
45116
|
+
]
|
|
45117
|
+
}
|
|
45118
|
+
]
|
|
45119
|
+
}
|
|
45120
|
+
]
|
|
45121
|
+
},
|
|
43637
45122
|
"loadModel": {
|
|
43638
45123
|
"title": "loadModel",
|
|
43639
45124
|
"type": "function",
|
|
@@ -46025,6 +47510,117 @@
|
|
|
46025
47510
|
}
|
|
46026
47511
|
]
|
|
46027
47512
|
},
|
|
47513
|
+
"lowRange": {
|
|
47514
|
+
"title": "lowRange",
|
|
47515
|
+
"type": "function",
|
|
47516
|
+
"children": [
|
|
47517
|
+
{
|
|
47518
|
+
"title": "语法",
|
|
47519
|
+
"type": "grammer",
|
|
47520
|
+
"children": [
|
|
47521
|
+
{
|
|
47522
|
+
"type": "text",
|
|
47523
|
+
"value": [
|
|
47524
|
+
"lowRange(X)"
|
|
47525
|
+
]
|
|
47526
|
+
}
|
|
47527
|
+
]
|
|
47528
|
+
},
|
|
47529
|
+
{
|
|
47530
|
+
"title": "参数",
|
|
47531
|
+
"type": "parameters",
|
|
47532
|
+
"children": [
|
|
47533
|
+
{
|
|
47534
|
+
"type": "text",
|
|
47535
|
+
"value": [
|
|
47536
|
+
"`X` 向量/元组/矩阵/表。"
|
|
47537
|
+
]
|
|
47538
|
+
}
|
|
47539
|
+
]
|
|
47540
|
+
},
|
|
47541
|
+
{
|
|
47542
|
+
"title": "详情",
|
|
47543
|
+
"type": "detail",
|
|
47544
|
+
"children": [
|
|
47545
|
+
{
|
|
47546
|
+
"type": "text",
|
|
47547
|
+
"value": [
|
|
47548
|
+
"对于 *X* 中的每个元素 *Xi*,统计 *Xi* 左侧相邻且连续小于它的元素个数。",
|
|
47549
|
+
"",
|
|
47550
|
+
"该函数常用于统计一个序列的当前值是前多少周期(日或分钟等)内的最小值。例如某只股票创几日新低等。"
|
|
47551
|
+
]
|
|
47552
|
+
}
|
|
47553
|
+
]
|
|
47554
|
+
},
|
|
47555
|
+
{
|
|
47556
|
+
"title": "例子",
|
|
47557
|
+
"type": "example",
|
|
47558
|
+
"children": [
|
|
47559
|
+
{
|
|
47560
|
+
"type": "code",
|
|
47561
|
+
"language": "console",
|
|
47562
|
+
"value": [
|
|
47563
|
+
"",
|
|
47564
|
+
" $ lowRange([13.5, 13.6, 13.4, 13.3, 13.5, 13.9, 13.1, 20.1, 20.2, 20.3])",
|
|
47565
|
+
" [0,0,2,3,0,0,6,0,0,0]",
|
|
47566
|
+
"",
|
|
47567
|
+
" $ m = matrix(1.5 2.6 3.2 1.4 2.5 2.2 3.7 2.0, 1.6 2.3 4.2 5.6 4.1 3.2 4.4 6.9)",
|
|
47568
|
+
" $ lowRange(m)",
|
|
47569
|
+
""
|
|
47570
|
+
]
|
|
47571
|
+
},
|
|
47572
|
+
{
|
|
47573
|
+
"type": "text",
|
|
47574
|
+
"value": [
|
|
47575
|
+
"== ==",
|
|
47576
|
+
"#0 #1",
|
|
47577
|
+
"== ==",
|
|
47578
|
+
"0 0 ",
|
|
47579
|
+
"0 0 ",
|
|
47580
|
+
"0 0 ",
|
|
47581
|
+
"3 0 ",
|
|
47582
|
+
"0 2 ",
|
|
47583
|
+
"1 3 ",
|
|
47584
|
+
"0 0 ",
|
|
47585
|
+
"3 0 ",
|
|
47586
|
+
"== ==",
|
|
47587
|
+
""
|
|
47588
|
+
]
|
|
47589
|
+
},
|
|
47590
|
+
{
|
|
47591
|
+
"type": "code",
|
|
47592
|
+
"language": "console",
|
|
47593
|
+
"value": [
|
|
47594
|
+
"",
|
|
47595
|
+
" //模拟股票 A 8天的股价,使用 topRange 计算股票 A 每日股价创几日新高",
|
|
47596
|
+
" $ trades = table(take(`A, 8) as sym, 2022.01.01 + 1..8 as date, 39.70 39.72 39.80 39.78 39.83 39.92 40.00 40.03 as price)",
|
|
47597
|
+
" $ select *, lowRange(price) from trades",
|
|
47598
|
+
""
|
|
47599
|
+
]
|
|
47600
|
+
},
|
|
47601
|
+
{
|
|
47602
|
+
"type": "text",
|
|
47603
|
+
"value": [
|
|
47604
|
+
"=== ========== ======== ===============",
|
|
47605
|
+
"id date price lowRange_price",
|
|
47606
|
+
"=== ========== ======== ===============",
|
|
47607
|
+
"A 2022.01.02 39.7 0",
|
|
47608
|
+
"A 2022.01.03 39.72 0",
|
|
47609
|
+
"A 2022.01.04 39.8 0",
|
|
47610
|
+
"A 2022.01.05 39.78 1",
|
|
47611
|
+
"A 2022.01.06 39.83 0",
|
|
47612
|
+
"A 2022.01.07 39.92 0",
|
|
47613
|
+
"A 2022.01.08 40 0",
|
|
47614
|
+
"A 2022.01.09 40.03 0",
|
|
47615
|
+
"=== ========== ======== ===============",
|
|
47616
|
+
"",
|
|
47617
|
+
"相关函数::doc:`../t/topRange`"
|
|
47618
|
+
]
|
|
47619
|
+
}
|
|
47620
|
+
]
|
|
47621
|
+
}
|
|
47622
|
+
]
|
|
47623
|
+
},
|
|
46028
47624
|
"lower": {
|
|
46029
47625
|
"title": "lower",
|
|
46030
47626
|
"type": "function",
|
|
@@ -52730,9 +54326,7 @@
|
|
|
52730
54326
|
"* 'nearest': :math:`X_i` 和 :math:`X_{i+1}` 之中最接近分位点的数据",
|
|
52731
54327
|
"* 'midpoint': :math:`(X_i+X_{i+1})/2`",
|
|
52732
54328
|
"",
|
|
52733
|
-
"如果没有指定 *interpolation*,默认采用 'linear'。"
|
|
52734
|
-
"",
|
|
52735
|
-
"如果没有指定 *interpolation*,默认采用 linear。"
|
|
54329
|
+
"如果没有指定 *interpolation*,默认采用 'linear'。"
|
|
52736
54330
|
]
|
|
52737
54331
|
}
|
|
52738
54332
|
]
|
|
@@ -54252,6 +55846,89 @@
|
|
|
54252
55846
|
}
|
|
54253
55847
|
]
|
|
54254
55848
|
},
|
|
55849
|
+
"msum2": {
|
|
55850
|
+
"title": "msum2",
|
|
55851
|
+
"type": "function",
|
|
55852
|
+
"children": [
|
|
55853
|
+
{
|
|
55854
|
+
"title": "语法",
|
|
55855
|
+
"type": "grammer",
|
|
55856
|
+
"children": [
|
|
55857
|
+
{
|
|
55858
|
+
"type": "text",
|
|
55859
|
+
"value": [
|
|
55860
|
+
"msum2(X, window, [minPeriods])",
|
|
55861
|
+
"",
|
|
55862
|
+
"参数说明和窗口计算规则请参考: :doc:`/FunctionsandCommands/SeriesOfFunctions/mFunctions`"
|
|
55863
|
+
]
|
|
55864
|
+
}
|
|
55865
|
+
]
|
|
55866
|
+
},
|
|
55867
|
+
{
|
|
55868
|
+
"title": "详情",
|
|
55869
|
+
"type": "detail",
|
|
55870
|
+
"children": [
|
|
55871
|
+
{
|
|
55872
|
+
"type": "text",
|
|
55873
|
+
"value": [
|
|
55874
|
+
"在给定长度(以元素个数或时间长度衡量)的滑动窗口内计算 *X* 元素的平方和。请注意,该函数的返回值是 DOUBLE 类型。"
|
|
55875
|
+
]
|
|
55876
|
+
}
|
|
55877
|
+
]
|
|
55878
|
+
},
|
|
55879
|
+
{
|
|
55880
|
+
"title": "例子",
|
|
55881
|
+
"type": "example",
|
|
55882
|
+
"children": [
|
|
55883
|
+
{
|
|
55884
|
+
"type": "code",
|
|
55885
|
+
"language": "console",
|
|
55886
|
+
"value": [
|
|
55887
|
+
"",
|
|
55888
|
+
" $ X = 2 1 3 7 6 5 4",
|
|
55889
|
+
" $ Y = 2 1 3 NULL 6 5 4",
|
|
55890
|
+
"",
|
|
55891
|
+
" $ msum2(X, 3)",
|
|
55892
|
+
" [,,14,59,94,110,77]",
|
|
55893
|
+
"",
|
|
55894
|
+
" $ msum2(Y, 3)",
|
|
55895
|
+
" [,,14,10,45,61,77]",
|
|
55896
|
+
"",
|
|
55897
|
+
" $ msum2(Y, 3, minPeriods=1)",
|
|
55898
|
+
" [4,5,14,10,45,61,77]",
|
|
55899
|
+
"",
|
|
55900
|
+
" $ m = matrix(1 NULL 4 NULL 8 6 , 9 NULL NULL 10 NULL 2)",
|
|
55901
|
+
" $ m.rename!(date(2021.08.16)+1..6, `col1`col2)",
|
|
55902
|
+
" $ m.setIndexedMatrix!()",
|
|
55903
|
+
" $ msum2(m, 3d) // 等价于 msum2(m, 3)",
|
|
55904
|
+
""
|
|
55905
|
+
]
|
|
55906
|
+
},
|
|
55907
|
+
{
|
|
55908
|
+
"type": "text",
|
|
55909
|
+
"value": [
|
|
55910
|
+
"========== ===== =====",
|
|
55911
|
+
"label col1 col2",
|
|
55912
|
+
"========== ===== =====",
|
|
55913
|
+
"2021.08.17 1 81",
|
|
55914
|
+
"2021.08.18 1 81",
|
|
55915
|
+
"2021.08.19 17 81",
|
|
55916
|
+
"2021.08.20 16 100",
|
|
55917
|
+
"2021.08.21 80 100",
|
|
55918
|
+
"2021.08.22 100 104",
|
|
55919
|
+
"========== ===== =====",
|
|
55920
|
+
"",
|
|
55921
|
+
"",
|
|
55922
|
+
"相关函数::doc:`../s/sum2`",
|
|
55923
|
+
"",
|
|
55924
|
+
".. meta:: ",
|
|
55925
|
+
" :keywords: sum"
|
|
55926
|
+
]
|
|
55927
|
+
}
|
|
55928
|
+
]
|
|
55929
|
+
}
|
|
55930
|
+
]
|
|
55931
|
+
},
|
|
54255
55932
|
"msumTopN": {
|
|
54256
55933
|
"title": "msumTopN",
|
|
54257
55934
|
"type": "function",
|
|
@@ -56563,6 +58240,101 @@
|
|
|
56563
58240
|
}
|
|
56564
58241
|
]
|
|
56565
58242
|
},
|
|
58243
|
+
"nextState": {
|
|
58244
|
+
"title": "nextState",
|
|
58245
|
+
"type": "function",
|
|
58246
|
+
"children": [
|
|
58247
|
+
{
|
|
58248
|
+
"title": "语法",
|
|
58249
|
+
"type": "grammer",
|
|
58250
|
+
"children": [
|
|
58251
|
+
{
|
|
58252
|
+
"type": "text",
|
|
58253
|
+
"value": [
|
|
58254
|
+
"nextState(X)"
|
|
58255
|
+
]
|
|
58256
|
+
}
|
|
58257
|
+
]
|
|
58258
|
+
},
|
|
58259
|
+
{
|
|
58260
|
+
"title": "参数",
|
|
58261
|
+
"type": "parameters",
|
|
58262
|
+
"children": [
|
|
58263
|
+
{
|
|
58264
|
+
"type": "text",
|
|
58265
|
+
"value": [
|
|
58266
|
+
"`X` 时间类型,布尔类型或者数值型的向量/矩阵。"
|
|
58267
|
+
]
|
|
58268
|
+
}
|
|
58269
|
+
]
|
|
58270
|
+
},
|
|
58271
|
+
{
|
|
58272
|
+
"title": "详情",
|
|
58273
|
+
"type": "detail",
|
|
58274
|
+
"children": [
|
|
58275
|
+
{
|
|
58276
|
+
"type": "text",
|
|
58277
|
+
"value": [
|
|
58278
|
+
"*X* 中连续且值相同的元素具有相同的状态,该函数返回与当前元素状态不同的后一个临近元素值。",
|
|
58279
|
+
"",
|
|
58280
|
+
"*X* 是向量时:",
|
|
58281
|
+
"",
|
|
58282
|
+
"* 若当前元素为空值,返回后项最邻近的一个非空值。",
|
|
58283
|
+
"* 若当前元素为非空值,寻找后项最邻近且状态不同的元素 N:",
|
|
58284
|
+
" ",
|
|
58285
|
+
" * 若 N 为非空值,则返回 N。",
|
|
58286
|
+
" * 若 N 为空值,则返回 N 之后最邻近的一个非空值。",
|
|
58287
|
+
" ",
|
|
58288
|
+
"* 若找不到符合上述条件的值,则返回空值。",
|
|
58289
|
+
"",
|
|
58290
|
+
"*X* 是矩阵时,则在矩阵每一列进行上述计算。"
|
|
58291
|
+
]
|
|
58292
|
+
}
|
|
58293
|
+
]
|
|
58294
|
+
},
|
|
58295
|
+
{
|
|
58296
|
+
"title": "例子",
|
|
58297
|
+
"type": "example",
|
|
58298
|
+
"children": [
|
|
58299
|
+
{
|
|
58300
|
+
"type": "code",
|
|
58301
|
+
"language": "console",
|
|
58302
|
+
"value": [
|
|
58303
|
+
"",
|
|
58304
|
+
" $ X = [1, 2.2, NULL, 2.2, 2.3, 1, 1.2]",
|
|
58305
|
+
" $ next(X)",
|
|
58306
|
+
" [2.2,,2.2,2.3,1,1.2,]",
|
|
58307
|
+
" ",
|
|
58308
|
+
" $ nextState(X)",
|
|
58309
|
+
" [2.2,2.2,2.2,2.3,1,1.2,]",
|
|
58310
|
+
"",
|
|
58311
|
+
" $ X = matrix([1.0, 1.1, 1.0, 0.9], [NULL, 1.3, 2.5, 5.5], [5.5, 4.2, 1.6, 1.8])",
|
|
58312
|
+
" $ nextState(X)",
|
|
58313
|
+
""
|
|
58314
|
+
]
|
|
58315
|
+
},
|
|
58316
|
+
{
|
|
58317
|
+
"type": "text",
|
|
58318
|
+
"value": [
|
|
58319
|
+
"+---+---+---+",
|
|
58320
|
+
"|#0 |#1 |#2 |",
|
|
58321
|
+
"+===+===+===+",
|
|
58322
|
+
"|1.1|1.3|4.2|",
|
|
58323
|
+
"+---+---+---+",
|
|
58324
|
+
"|1 |2.5|1.6| ",
|
|
58325
|
+
"+---+---+---+ ",
|
|
58326
|
+
"|0.9|5.5|1.8|",
|
|
58327
|
+
"+---+---+---+",
|
|
58328
|
+
"| | | |",
|
|
58329
|
+
"+---+---+---+",
|
|
58330
|
+
"",
|
|
58331
|
+
"相关函数: :doc:`../p/prevState`"
|
|
58332
|
+
]
|
|
58333
|
+
}
|
|
58334
|
+
]
|
|
58335
|
+
}
|
|
58336
|
+
]
|
|
58337
|
+
},
|
|
56566
58338
|
"norm": {
|
|
56567
58339
|
"title": "norm",
|
|
56568
58340
|
"type": "function",
|
|
@@ -57418,7 +59190,10 @@
|
|
|
57418
59190
|
{
|
|
57419
59191
|
"type": "text",
|
|
57420
59192
|
"value": [
|
|
57421
|
-
"`shared`
|
|
59193
|
+
"`shared` 布尔值,默认为 false。",
|
|
59194
|
+
"",
|
|
59195
|
+
"* false:返回当前会话中所有变量的信息;",
|
|
59196
|
+
"* true:返回当前会话中所有变量的信息以及所有会话共享的变量信息;"
|
|
57422
59197
|
]
|
|
57423
59198
|
}
|
|
57424
59199
|
]
|
|
@@ -57430,7 +59205,26 @@
|
|
|
57430
59205
|
{
|
|
57431
59206
|
"type": "text",
|
|
57432
59207
|
"value": [
|
|
57433
|
-
"
|
|
59208
|
+
"用于获取内存中缓存的各变量的内存占用情况等信息。返回一个表,它具有以下几列:",
|
|
59209
|
+
"",
|
|
59210
|
+
"* name: 变量名。",
|
|
59211
|
+
"* type: 变量的数据类型。",
|
|
59212
|
+
"* form: 变量的数据形式。",
|
|
59213
|
+
"* rows:",
|
|
59214
|
+
"",
|
|
59215
|
+
" * 若 form 为向量/字典/集合,则返回所有元素(包含NULL)的个数",
|
|
59216
|
+
" * 若 form 为矩阵/表,则返回它们的行数",
|
|
59217
|
+
"",
|
|
59218
|
+
"* columns:",
|
|
59219
|
+
"",
|
|
59220
|
+
" * 若 form 为向量/字典/集合,则返回 1",
|
|
59221
|
+
" * 若 form 为矩阵/表,则返回它们的列数",
|
|
59222
|
+
"",
|
|
59223
|
+
"* bytes: 变量占用的内存大小,单位为字节",
|
|
59224
|
+
"* shared: 是否为共享变量",
|
|
59225
|
+
"* extra: 分布式表的逻辑路径,格式为 \"dfs://dbName/tableName\"",
|
|
59226
|
+
"",
|
|
59227
|
+
"注意,该函数不返回函数定义。我们应该用 defs 检查函数定义,或通过 :doc:`../m/memSize` 查看函数定义的内存占用。"
|
|
57434
59228
|
]
|
|
57435
59229
|
}
|
|
57436
59230
|
]
|
|
@@ -57444,19 +59238,39 @@
|
|
|
57444
59238
|
"language": "console",
|
|
57445
59239
|
"value": [
|
|
57446
59240
|
"",
|
|
57447
|
-
"
|
|
57448
|
-
""
|
|
57449
|
-
|
|
57450
|
-
|
|
57451
|
-
|
|
57452
|
-
|
|
57453
|
-
|
|
57454
|
-
"
|
|
57455
|
-
"
|
|
57456
|
-
"
|
|
57457
|
-
"t
|
|
57458
|
-
"
|
|
59241
|
+
" //创建分布式数据库",
|
|
59242
|
+
" $ if(existsDatabase(\"dfs://listdb\")){",
|
|
59243
|
+
" $ dropDatabase(\"dfs://listdb\")",
|
|
59244
|
+
" $ }",
|
|
59245
|
+
" $ n=1000000",
|
|
59246
|
+
" $ ticker = rand(`MSFT`GOOG`FB`ORCL`IBM,n);",
|
|
59247
|
+
" $ ticker[0..5]",
|
|
59248
|
+
" $ x=rand(1.0, n)",
|
|
59249
|
+
" $ t=table(ticker, x)",
|
|
59250
|
+
" $ db=database(directory=\"dfs://listdb\", partitionType=HASH, partitionScheme=[STRING, 5])",
|
|
59251
|
+
" $ pt=db.createPartitionedTable(t, `pt, `ticker)",
|
|
59252
|
+
" $ pt.append!(t)",
|
|
59253
|
+
"",
|
|
59254
|
+
" // 共享内存表",
|
|
59255
|
+
" $ time = take(2021.08.20 00:00:00..2021.08.30 00:00:00, 40);",
|
|
59256
|
+
" $ id = 0..39;",
|
|
59257
|
+
" $ value = rand(100, 40);",
|
|
59258
|
+
" $ tmp = table(time, id, value);",
|
|
59259
|
+
" $ share tmp as st",
|
|
59260
|
+
"",
|
|
59261
|
+
" // 创建 set",
|
|
59262
|
+
" $ s = set([1,2,3,4,5])",
|
|
59263
|
+
"",
|
|
59264
|
+
" // 创建 dict",
|
|
59265
|
+
" $ x=1 2 3",
|
|
59266
|
+
" $ y=4.5 7.8 4.3",
|
|
59267
|
+
" $ z=dict(x,y);",
|
|
59268
|
+
"",
|
|
59269
|
+
" // 创建 matrix",
|
|
59270
|
+
" $ m = matrix(1 2 3, 4 5 6)",
|
|
57459
59271
|
"",
|
|
59272
|
+
" // 创建 pair",
|
|
59273
|
+
" $ p = 1:2",
|
|
57460
59274
|
""
|
|
57461
59275
|
]
|
|
57462
59276
|
},
|
|
@@ -57465,21 +59279,33 @@
|
|
|
57465
59279
|
"language": "console",
|
|
57466
59280
|
"value": [
|
|
57467
59281
|
"",
|
|
57468
|
-
" $
|
|
57469
|
-
" $ objs(true);",
|
|
59282
|
+
" $ objs(true)",
|
|
57470
59283
|
""
|
|
57471
59284
|
]
|
|
57472
59285
|
},
|
|
57473
59286
|
{
|
|
57474
59287
|
"type": "text",
|
|
57475
59288
|
"value": [
|
|
57476
|
-
"
|
|
57477
|
-
"
|
|
57478
|
-
"
|
|
57479
|
-
"
|
|
57480
|
-
"
|
|
57481
|
-
"
|
|
57482
|
-
"
|
|
59289
|
+
"======= ======== ============ ========== ======= ========== ======= =================",
|
|
59290
|
+
"name type form rows columns bytes shared extra",
|
|
59291
|
+
"======= ======== ============ ========== ======= ========== ======= =================",
|
|
59292
|
+
"n INT SCALAR 1 1 16 false ",
|
|
59293
|
+
"ticker SYMBOL VECTOR 1,000,000 1 4,000,000 false ",
|
|
59294
|
+
"x INT VECTOR 3 1 12 false ",
|
|
59295
|
+
"t BASIC TABLE 1,000,000 2 12,000,312 false ",
|
|
59296
|
+
"db HANDLE SCALAR 1 1 24 false ",
|
|
59297
|
+
"pt ALIAS TABLE 0 2 12,000,000 false dfs://listdb/pt",
|
|
59298
|
+
"time DATETIME VECTOR 40 1 160 false ",
|
|
59299
|
+
"id INT VECTOR 40 1 160 false ",
|
|
59300
|
+
"value INT VECTOR 40 1 160 false ",
|
|
59301
|
+
"tmp BASIC TABLE 40 3 832 false ",
|
|
59302
|
+
"s INT SET 5 1 28 false ",
|
|
59303
|
+
"y DOUBLE VECTOR 3 1 24 false ",
|
|
59304
|
+
"z DOUBLE DICTIONARY 3 1 199 false ",
|
|
59305
|
+
"m INT MATRIX 3 2 24 false ",
|
|
59306
|
+
"p INT PAIR 2 1 8 false ",
|
|
59307
|
+
"st BASIC TABLE 40 3 832 true",
|
|
59308
|
+
"======= ======== ============ ========== ======= ========== ======= ================="
|
|
57483
59309
|
]
|
|
57484
59310
|
}
|
|
57485
59311
|
]
|
|
@@ -58137,7 +59963,7 @@
|
|
|
58137
59963
|
"",
|
|
58138
59964
|
"panel 函数同 :doc:`/SQLStatements/pivotBy` 语句类似,将数据表中的数据按照两个维度重新排列。两者的不同之处在于,SQL 中,exec... pivot by... 只能指定一个指标列,",
|
|
58139
59965
|
"生成一个矩阵,而 panel 函数可以指定一个或多个指标列,生成一个或多个矩阵。",
|
|
58140
|
-
"更多面板数据的处理,请参考 `DolphinDB教程:面板数据的处理 <https://gitee.com/dolphindb/Tutorials_CN/blob/master/panel_data.md>`_。"
|
|
59966
|
+
"更多面板数据的处理,请参考 `DolphinDB教程:面板数据的处理 <https://gitee.com/dolphindb/Tutorials_CN/blob/master/%E5%BA%94%E7%94%A8%E5%9C%BA%E6%99%AF%E7%A4%BA%E4%BE%8B/panel_data.md>`_。"
|
|
58141
59967
|
]
|
|
58142
59968
|
}
|
|
58143
59969
|
]
|
|
@@ -60177,6 +62003,102 @@
|
|
|
60177
62003
|
}
|
|
60178
62004
|
]
|
|
60179
62005
|
},
|
|
62006
|
+
"prevState": {
|
|
62007
|
+
"title": "prevState",
|
|
62008
|
+
"type": "function",
|
|
62009
|
+
"children": [
|
|
62010
|
+
{
|
|
62011
|
+
"title": "语法",
|
|
62012
|
+
"type": "grammer",
|
|
62013
|
+
"children": [
|
|
62014
|
+
{
|
|
62015
|
+
"type": "text",
|
|
62016
|
+
"value": [
|
|
62017
|
+
"prevState(X)"
|
|
62018
|
+
]
|
|
62019
|
+
}
|
|
62020
|
+
]
|
|
62021
|
+
},
|
|
62022
|
+
{
|
|
62023
|
+
"title": "参数",
|
|
62024
|
+
"type": "parameters",
|
|
62025
|
+
"children": [
|
|
62026
|
+
{
|
|
62027
|
+
"type": "text",
|
|
62028
|
+
"value": [
|
|
62029
|
+
"`X` 时间类型,布尔类型或者数值型的向量/矩阵。"
|
|
62030
|
+
]
|
|
62031
|
+
}
|
|
62032
|
+
]
|
|
62033
|
+
},
|
|
62034
|
+
{
|
|
62035
|
+
"title": "详情",
|
|
62036
|
+
"type": "detail",
|
|
62037
|
+
"children": [
|
|
62038
|
+
{
|
|
62039
|
+
"type": "text",
|
|
62040
|
+
"value": [
|
|
62041
|
+
"*X* 中连续且值相同的元素具有相同的状态,该函数返回与当前元素状态不同的前一个临近元素值。",
|
|
62042
|
+
"",
|
|
62043
|
+
"*X* 是向量时:",
|
|
62044
|
+
"",
|
|
62045
|
+
"* 若当前元素为空值,返回前项最邻近的一个非空值。",
|
|
62046
|
+
"* 若当前元素为非空值,寻找前项最邻近且状态不同的元素 P:",
|
|
62047
|
+
" ",
|
|
62048
|
+
" * 若 P 为非空值,则返回 P。",
|
|
62049
|
+
" * 若 P 为空值,则返回 P 之前最邻近的一个非空值。",
|
|
62050
|
+
" ",
|
|
62051
|
+
"* 若找不到符合上述条件的值,则返回空值。",
|
|
62052
|
+
"",
|
|
62053
|
+
"*X* 是矩阵时,则在矩阵每一列进行上述计算。"
|
|
62054
|
+
]
|
|
62055
|
+
}
|
|
62056
|
+
]
|
|
62057
|
+
},
|
|
62058
|
+
{
|
|
62059
|
+
"title": "例子",
|
|
62060
|
+
"type": "example",
|
|
62061
|
+
"children": [
|
|
62062
|
+
{
|
|
62063
|
+
"type": "code",
|
|
62064
|
+
"language": "console",
|
|
62065
|
+
"value": [
|
|
62066
|
+
"",
|
|
62067
|
+
" $ X = [1, 2.2, NULL, 2.2, 2.3, 1, 1.2]",
|
|
62068
|
+
" $ prev(X)",
|
|
62069
|
+
" [,1,2.2,,2.2,2.3,1]",
|
|
62070
|
+
" ",
|
|
62071
|
+
" $ prevState(X)",
|
|
62072
|
+
" [,1,2.2,2.2,2.2,2.3,1]",
|
|
62073
|
+
"",
|
|
62074
|
+
" $ X = matrix([1.0, 1.1, 1.0, 0.9], [NULL, 1.3, 2.5, 5.5], [5.5, 4.2, 1.6, 1.8])",
|
|
62075
|
+
" $ prevState(X)",
|
|
62076
|
+
""
|
|
62077
|
+
]
|
|
62078
|
+
},
|
|
62079
|
+
{
|
|
62080
|
+
"type": "text",
|
|
62081
|
+
"value": [
|
|
62082
|
+
"+---+---+---+",
|
|
62083
|
+
"|#0 |#1 |#2 |",
|
|
62084
|
+
"+===+===+===+",
|
|
62085
|
+
"| | | |",
|
|
62086
|
+
"+---+---+---+",
|
|
62087
|
+
"|1 | |5.5|",
|
|
62088
|
+
"+---+---+---+",
|
|
62089
|
+
"|1.1|1.3|4.2|",
|
|
62090
|
+
"+---+---+---+",
|
|
62091
|
+
"|1 |2.5|1.6|",
|
|
62092
|
+
"+---+---+---+ ",
|
|
62093
|
+
"",
|
|
62094
|
+
"",
|
|
62095
|
+
"相关函数: :doc:`../n/nextState`"
|
|
62096
|
+
]
|
|
62097
|
+
}
|
|
62098
|
+
]
|
|
62099
|
+
}
|
|
62100
|
+
]
|
|
62101
|
+
},
|
|
60180
62102
|
"print": {
|
|
60181
62103
|
"title": "print",
|
|
60182
62104
|
"type": "command",
|
|
@@ -62867,7 +64789,8 @@
|
|
|
62867
64789
|
]
|
|
62868
64790
|
},
|
|
62869
64791
|
{
|
|
62870
|
-
"title": "
|
|
64792
|
+
"title": "参数",
|
|
64793
|
+
"type": "parameters",
|
|
62871
64794
|
"children": [
|
|
62872
64795
|
{
|
|
62873
64796
|
"type": "text",
|
|
@@ -62900,6 +64823,7 @@
|
|
|
62900
64823
|
"* 如果指定了 *groupNum*,则将排序后的 *X* 分成 *groupNum* 个组。返回 *X* 中每个元素对应的组编号(从0开始编号)。",
|
|
62901
64824
|
"",
|
|
62902
64825
|
" 请注意:",
|
|
64826
|
+
" ",
|
|
62903
64827
|
" * 若 *X* 不能被均分,多余元素优先存入编号较小的组内。",
|
|
62904
64828
|
" * 若 *X* 中相同元素分别属于不同的组,则所有相同元素返回最小的组号。",
|
|
62905
64829
|
"* 如果 *ignoreNA* = true,则 NULL 值不参与排序,结果中 NULL 值的排名为空。",
|
|
@@ -66180,50 +68104,59 @@
|
|
|
66180
68104
|
"",
|
|
66181
68105
|
"",
|
|
66182
68106
|
"例3. 异构回放",
|
|
68107
|
+
""
|
|
68108
|
+
]
|
|
68109
|
+
},
|
|
68110
|
+
{
|
|
68111
|
+
"type": "code",
|
|
68112
|
+
"language": "console",
|
|
68113
|
+
"value": [
|
|
68114
|
+
""
|
|
68115
|
+
]
|
|
68116
|
+
},
|
|
68117
|
+
{
|
|
68118
|
+
"type": "text",
|
|
68119
|
+
"value": [
|
|
68120
|
+
" $ n=1000",
|
|
68121
|
+
" $ sym = take(take(`IBM,n).join(take(`GS,n)), n)",
|
|
68122
|
+
" $ myDate=take(2021.01.02..2021.01.06, n).sort!()",
|
|
68123
|
+
" $ myTime=take(09:30:00..15:59:59,n)",
|
|
68124
|
+
" $ vol = rand(100, n)",
|
|
68125
|
+
" $ t=table(sym,myDate,myTime,vol)",
|
|
66183
68126
|
"",
|
|
66184
|
-
".. code-block:: console",
|
|
66185
|
-
" :emphasize-lines: 40",
|
|
66186
|
-
"",
|
|
66187
|
-
" $ n=1000",
|
|
66188
|
-
" $ sym = take(take(`IBM,n).join(take(`GS,n)), n)",
|
|
66189
|
-
" $ myDate=take(2021.01.02..2021.01.06, n).sort!()",
|
|
66190
|
-
" $ myTime=take(09:30:00..15:59:59,n)",
|
|
66191
|
-
" $ vol = rand(100, n)",
|
|
66192
|
-
" $ t=table(sym,myDate,myTime,vol)",
|
|
66193
|
-
"",
|
|
66194
|
-
"",
|
|
66195
|
-
" $ n=1000",
|
|
66196
|
-
" $ sym = take(take(`IBM,n).join(take(`GS,n)), n)",
|
|
66197
|
-
" $ date=take(2021.01.02..2021.01.06, n).sort!()",
|
|
66198
|
-
" $ time=take(09:30:00..15:59:59,n)",
|
|
66199
|
-
" $ vol = rand(100, n)",
|
|
66200
|
-
" $ t1=table(sym, date,time,vol)",
|
|
66201
68127
|
"",
|
|
66202
|
-
"
|
|
66203
|
-
"
|
|
66204
|
-
"
|
|
66205
|
-
"
|
|
66206
|
-
"
|
|
66207
|
-
"
|
|
66208
|
-
"
|
|
66209
|
-
"
|
|
66210
|
-
"
|
|
66211
|
-
"
|
|
68128
|
+
" $ n=1000",
|
|
68129
|
+
" $ sym = take(take(`IBM,n).join(take(`GS,n)), n)",
|
|
68130
|
+
" $ date=take(2021.01.02..2021.01.06, n).sort!()",
|
|
68131
|
+
" $ time=take(09:30:00..15:59:59,n)",
|
|
68132
|
+
" $ vol = rand(100, n)",
|
|
68133
|
+
" $ t1=table(sym, date,time,vol)",
|
|
68134
|
+
"",
|
|
68135
|
+
" $ if(existsDatabase(\"dfs://test_stock\")){",
|
|
68136
|
+
" $ dropDatabase(\"dfs://test_stock\")",
|
|
68137
|
+
" $ }",
|
|
68138
|
+
" $ db1=database(\"\",RANGE, 2021.01.01..2021.01.12)",
|
|
68139
|
+
" $ db2=database(\"\",VALUE,`IBM`GS)",
|
|
68140
|
+
" $ db=database(\"dfs://test_stock\",COMPO,[db1, db2])",
|
|
68141
|
+
" $ trades=db.createPartitionedTable(t,`trades,`myDate`sym)",
|
|
68142
|
+
" $ trades.append!(t);",
|
|
68143
|
+
" $ trades1=db.createPartitionedTable(t1,`trades1,`date`sym)",
|
|
68144
|
+
" $ trades1.append!(t1);",
|
|
66212
68145
|
"",
|
|
66213
|
-
"
|
|
68146
|
+
" //获取数据源",
|
|
66214
68147
|
"",
|
|
66215
|
-
"
|
|
66216
|
-
"
|
|
68148
|
+
" $ ds = replayDS(sqlObj=<select * from loadTable(db, `trades)>, dateColumn=`myDate, timeColumn=`myTime)",
|
|
68149
|
+
" $ ds.size();",
|
|
66217
68150
|
"",
|
|
66218
|
-
"
|
|
66219
|
-
"
|
|
68151
|
+
" $ ds1 = replayDS(sqlObj=<select * from loadTable(db, `trades1)>, dateColumn=`date, timeColumn=`time)",
|
|
68152
|
+
" $ ds1.size();",
|
|
66220
68153
|
"",
|
|
66221
|
-
"
|
|
66222
|
-
"
|
|
66223
|
-
"
|
|
66224
|
-
"
|
|
66225
|
-
"
|
|
66226
|
-
"
|
|
68154
|
+
" $ input_dict = dict([\"msg1\", \"msg2\"], [ds, ds1])",
|
|
68155
|
+
" $ date_dict = dict([\"msg1\", \"msg2\"], [`myDate, `date])",
|
|
68156
|
+
" $ time_dict = dict([\"msg1\", \"msg2\"], [`myTime, `time])",
|
|
68157
|
+
" $ opt = streamTable(100:0,`timestamp`sym`blob`vol, [DATETIME,SYMBOL, BLOB, INT])",
|
|
68158
|
+
" $ replay(inputTables=input_dict, outputTables=opt, dateColumn = date_dict, timeColumn=time_dict, replayRate=1000, absoluteRate=false);",
|
|
68159
|
+
" $ select top 10 * from opt;"
|
|
66227
68160
|
]
|
|
66228
68161
|
}
|
|
66229
68162
|
]
|
|
@@ -66466,11 +68399,13 @@
|
|
|
66466
68399
|
"\"Q\" quarterEnd",
|
|
66467
68400
|
"\"QS\" quarterBegin",
|
|
66468
68401
|
"\"BQ\" businessQuarterEnd",
|
|
66469
|
-
"\"BQS\" businessQuarterBegin",
|
|
68402
|
+
"\"BQS\" businessQuarterBegin ",
|
|
68403
|
+
"\"REQ\" FY5253Quarter",
|
|
66470
68404
|
"\"A\" yearEnd",
|
|
66471
68405
|
"\"AS\" yearBegin",
|
|
66472
68406
|
"\"BA\" businessYearEnd",
|
|
66473
68407
|
"\"BAS\" businessYearBegin",
|
|
68408
|
+
"\"RE\" FY5253 ",
|
|
66474
68409
|
"\"D\" date",
|
|
66475
68410
|
"\"H\" hourOfDay",
|
|
66476
68411
|
"\"U\" microsecond",
|
|
@@ -66790,7 +68725,14 @@
|
|
|
66790
68725
|
"language": "console",
|
|
66791
68726
|
"value": [
|
|
66792
68727
|
"",
|
|
66793
|
-
" $ resetRecoveryWorkerNum(2)"
|
|
68728
|
+
" $ resetRecoveryWorkerNum(2)",
|
|
68729
|
+
""
|
|
68730
|
+
]
|
|
68731
|
+
},
|
|
68732
|
+
{
|
|
68733
|
+
"type": "text",
|
|
68734
|
+
"value": [
|
|
68735
|
+
"相关函数::doc:`/FunctionsandCommands/FunctionReferences/g/getRecoveryWorkerNum`"
|
|
66794
68736
|
]
|
|
66795
68737
|
}
|
|
66796
68738
|
]
|
|
@@ -67045,6 +68987,9 @@
|
|
|
67045
68987
|
"`partition` 是字符串,表示要恢复的分区的相对路径。分区路径可以包含通配符(\"%\"和\"?\"), \"?\"表示单个字符,\"%\"表示0,1或多个字符。",
|
|
67046
68988
|
"",
|
|
67047
68989
|
"* 若仅备份某个分区,输入分区的相对路径或者\"%/\"+”分区名称”。举例:要恢复\"dfs://compoDB\"下的分区”20170810/50_100”,输入\"/compoDB/20170807/0_50\"或者\"%/20170807/0_50\"。",
|
|
68990
|
+
" ",
|
|
68991
|
+
" 请注意:若使用 1.30.16/2.00.4 ~ 1.30.18/2.00.6 版本 server,对表级分区数据进行备份和恢复时,该参数必须指定路径到物理索引(可通过函数 :doc:`/FunctionsandCommands/FunctionReferences/l/listTables` 获取),例如分区 \"/compoDB/20170807/0_50\" 下表的物理索引为8,则 partition 需指定为 \"/compoDB/20170807/0_50/8\"。",
|
|
68992
|
+
" ",
|
|
67048
68993
|
"* 若需要备份所有分区,直接输入\"%\"。",
|
|
67049
68994
|
"",
|
|
67050
68995
|
"`force` 是布尔值,表示是否强制恢复。默认值为false,表示只有元数据与备份数据元数据不一致的分区,才会恢复。",
|
|
@@ -67186,6 +69131,86 @@
|
|
|
67186
69131
|
}
|
|
67187
69132
|
]
|
|
67188
69133
|
},
|
|
69134
|
+
"restoreDislocatedTablet": {
|
|
69135
|
+
"title": "restoreDislocatedTablet",
|
|
69136
|
+
"type": "function",
|
|
69137
|
+
"children": [
|
|
69138
|
+
{
|
|
69139
|
+
"title": "语法",
|
|
69140
|
+
"type": "grammer",
|
|
69141
|
+
"children": [
|
|
69142
|
+
{
|
|
69143
|
+
"type": "text",
|
|
69144
|
+
"value": [
|
|
69145
|
+
"restoreDislocatedTablet()"
|
|
69146
|
+
]
|
|
69147
|
+
}
|
|
69148
|
+
]
|
|
69149
|
+
},
|
|
69150
|
+
{
|
|
69151
|
+
"title": "参数",
|
|
69152
|
+
"type": "parameters",
|
|
69153
|
+
"children": [
|
|
69154
|
+
{
|
|
69155
|
+
"type": "text",
|
|
69156
|
+
"value": [
|
|
69157
|
+
"无"
|
|
69158
|
+
]
|
|
69159
|
+
}
|
|
69160
|
+
]
|
|
69161
|
+
},
|
|
69162
|
+
{
|
|
69163
|
+
"title": "详情",
|
|
69164
|
+
"type": "detail",
|
|
69165
|
+
"children": [
|
|
69166
|
+
{
|
|
69167
|
+
"type": "text",
|
|
69168
|
+
"value": [
|
|
69169
|
+
"当配置分区粒度为表级分区时(详见 :doc:`/DatabaseandDistributedComputing/Configuration/StandaloneMode` *enableChunkGranularityConfig* 参数),同一个分区的所有表将分布在相同的节点下。当调用函数 :doc:`/FunctionsandCommands/FunctionReferences/r/rebalanceChunksAmongDataNodes` 进行数据平衡时,若出现节点宕机或离线,可能出现同一个分区里部分表的数据转移成功,部分表的数据转移失败的情况,即同一个分区下的不同表会分布在不同的节点。该函数可以修复此问题,将同一个分区里的表转移到同一个节点下。",
|
|
69170
|
+
"",
|
|
69171
|
+
"返回一个表,包含以下列:",
|
|
69172
|
+
"",
|
|
69173
|
+
"================== =================================================",
|
|
69174
|
+
"列名 含义",
|
|
69175
|
+
"================== =================================================",
|
|
69176
|
+
"chunkId chunk 的唯一标识",
|
|
69177
|
+
"srcNode 源节点的别名",
|
|
69178
|
+
"destNode 目标节点的别名",
|
|
69179
|
+
"================== =================================================",
|
|
69180
|
+
"",
|
|
69181
|
+
"调用该函数后,可以在进行数据平衡的数据节点上执行 :doc:`/FunctionsandCommands/FunctionReferences/g/getRecoveryTaskStatus` 查看任务执行的状态。"
|
|
69182
|
+
]
|
|
69183
|
+
}
|
|
69184
|
+
]
|
|
69185
|
+
},
|
|
69186
|
+
{
|
|
69187
|
+
"title": "例子",
|
|
69188
|
+
"type": "example",
|
|
69189
|
+
"children": [
|
|
69190
|
+
{
|
|
69191
|
+
"type": "code",
|
|
69192
|
+
"language": "console",
|
|
69193
|
+
"value": [
|
|
69194
|
+
"",
|
|
69195
|
+
" $ restoreDislocatedTablet()",
|
|
69196
|
+
""
|
|
69197
|
+
]
|
|
69198
|
+
},
|
|
69199
|
+
{
|
|
69200
|
+
"type": "text",
|
|
69201
|
+
"value": [
|
|
69202
|
+
"==================================== ======= ========",
|
|
69203
|
+
"ChunkId srcNode destNode",
|
|
69204
|
+
"==================================== ======= ========",
|
|
69205
|
+
"99279094-ca12-3b87-48b6-520cbb986f39 node1 node2",
|
|
69206
|
+
"45f612b8-42f5-aebd-4cef-e522b6ae1fc8 node1 node2\t",
|
|
69207
|
+
"==================================== ======= ========"
|
|
69208
|
+
]
|
|
69209
|
+
}
|
|
69210
|
+
]
|
|
69211
|
+
}
|
|
69212
|
+
]
|
|
69213
|
+
},
|
|
67189
69214
|
"resumeRecovery": {
|
|
67190
69215
|
"title": "resumeRecovery",
|
|
67191
69216
|
"type": "command",
|
|
@@ -68293,6 +70318,80 @@
|
|
|
68293
70318
|
}
|
|
68294
70319
|
]
|
|
68295
70320
|
},
|
|
70321
|
+
"rowAt": {
|
|
70322
|
+
"title": "rowAt",
|
|
70323
|
+
"type": "function",
|
|
70324
|
+
"children": [
|
|
70325
|
+
{
|
|
70326
|
+
"title": "语法",
|
|
70327
|
+
"type": "grammer",
|
|
70328
|
+
"children": [
|
|
70329
|
+
{
|
|
70330
|
+
"type": "text",
|
|
70331
|
+
"value": [
|
|
70332
|
+
"rowAt(X, Y)",
|
|
70333
|
+
"",
|
|
70334
|
+
"row 系列函数通用参数说明和计算规则请参考: :doc:`/FunctionsandCommands/SeriesOfFunctions/rowFunctions`"
|
|
70335
|
+
]
|
|
70336
|
+
}
|
|
70337
|
+
]
|
|
70338
|
+
},
|
|
70339
|
+
{
|
|
70340
|
+
"title": "详情",
|
|
70341
|
+
"type": "detail",
|
|
70342
|
+
"children": [
|
|
70343
|
+
{
|
|
70344
|
+
"type": "text",
|
|
70345
|
+
"value": [
|
|
70346
|
+
"以 *Y* 的元素为 *X* 每行的列索引,逐行取出 *X* 中对应索引的元素,返回一个长度与输入参数行数相同的向量。"
|
|
70347
|
+
]
|
|
70348
|
+
}
|
|
70349
|
+
]
|
|
70350
|
+
},
|
|
70351
|
+
{
|
|
70352
|
+
"title": "例子",
|
|
70353
|
+
"type": "example",
|
|
70354
|
+
"children": [
|
|
70355
|
+
{
|
|
70356
|
+
"type": "code",
|
|
70357
|
+
"language": "console",
|
|
70358
|
+
"value": [
|
|
70359
|
+
"",
|
|
70360
|
+
" $ m = matrix(3.1 4.5 2.2, 4.2 4.3 5.1, 6.2 7.1 2.2, 1.8 6.1 5.3, 7.1 8.4 3.5)",
|
|
70361
|
+
" $ index = 4 0 2",
|
|
70362
|
+
" $ rowAt(m, index)",
|
|
70363
|
+
" [7.1,4.5,2.2]",
|
|
70364
|
+
"",
|
|
70365
|
+
" $ trades = table(10:0,`time`sym`p1`p2`p3`p4`p5`vol1`vol2`vol3`vol4`vol5,[TIMESTAMP,SYMBOL,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE,INT,INT,INT,INT,INT])",
|
|
70366
|
+
" $ insert into trades values(2022.01.01T09:00:00, `A, 33.2, 33.8, 33.6, 33.3, 33.1, 200, 180, 180, 220, 200)",
|
|
70367
|
+
" $ insert into trades values(2022.01.01T09:00:00, `A, 33.1, 32.8, 33.2, 34.3, 32.3, 150, 280, 190, 100, 220)",
|
|
70368
|
+
" $ insert into trades values(2022.01.01T09:00:00, `A, 31.2, 32.6, 33.6, 35.3, 34.5, 220, 160, 130, 100, 110)",
|
|
70369
|
+
" $ insert into trades values(2022.01.01T09:00:00, `A, 30.2, 32.5, 33.6, 35.3, 34.1, 200, 180, 150, 140, 120)",
|
|
70370
|
+
" $ insert into trades values(2022.01.01T09:00:00, `A, 33.2, 33.8, 33.6, 33.3, 33.1, 180, 160, 160, 180, 200)",
|
|
70371
|
+
" $ select rowAt(matrix(p1, p2, p3, p4, p5), rowImin(vol1, vol2, vol3, vol4, vol5)) as price1, rowAt(matrix(p1, p2, p3, p4, p5), rowImax(vol1, vol2, vol3, vol4, vol5)) as price2 from trades",
|
|
70372
|
+
""
|
|
70373
|
+
]
|
|
70374
|
+
},
|
|
70375
|
+
{
|
|
70376
|
+
"type": "text",
|
|
70377
|
+
"value": [
|
|
70378
|
+
"====== =======",
|
|
70379
|
+
"price1\tprice2",
|
|
70380
|
+
"====== =======",
|
|
70381
|
+
"33.8\t33.3",
|
|
70382
|
+
"34.3\t32.8",
|
|
70383
|
+
"35.3\t31.2",
|
|
70384
|
+
"34.1\t30.2",
|
|
70385
|
+
"33.8\t33.1",
|
|
70386
|
+
"====== =======",
|
|
70387
|
+
"",
|
|
70388
|
+
"相关函数: :doc:`../a/at`"
|
|
70389
|
+
]
|
|
70390
|
+
}
|
|
70391
|
+
]
|
|
70392
|
+
}
|
|
70393
|
+
]
|
|
70394
|
+
},
|
|
68296
70395
|
"rowAvg": {
|
|
68297
70396
|
"title": "rowAvg",
|
|
68298
70397
|
"type": "function",
|
|
@@ -68797,6 +70896,171 @@
|
|
|
68797
70896
|
}
|
|
68798
70897
|
]
|
|
68799
70898
|
},
|
|
70899
|
+
"rowImax": {
|
|
70900
|
+
"title": "rowImax",
|
|
70901
|
+
"type": "function",
|
|
70902
|
+
"children": [
|
|
70903
|
+
{
|
|
70904
|
+
"title": "语法",
|
|
70905
|
+
"type": "grammer",
|
|
70906
|
+
"children": [
|
|
70907
|
+
{
|
|
70908
|
+
"type": "text",
|
|
70909
|
+
"value": [
|
|
70910
|
+
"rowImax(args...)",
|
|
70911
|
+
"",
|
|
70912
|
+
"row 系列函数通用参数说明和计算规则请参考: :doc:`/FunctionsandCommands/SeriesOfFunctions/rowFunctions`",
|
|
70913
|
+
""
|
|
70914
|
+
]
|
|
70915
|
+
}
|
|
70916
|
+
]
|
|
70917
|
+
},
|
|
70918
|
+
{
|
|
70919
|
+
"title": "详情",
|
|
70920
|
+
"type": "detail",
|
|
70921
|
+
"children": [
|
|
70922
|
+
{
|
|
70923
|
+
"type": "text",
|
|
70924
|
+
"value": [
|
|
70925
|
+
"返回每行元素中最大元素的索引。如果有多个相同的最大值,返回左起第一个最大值的索引。结果为一个长度与输入参数行数相同的向量。",
|
|
70926
|
+
""
|
|
70927
|
+
]
|
|
70928
|
+
}
|
|
70929
|
+
]
|
|
70930
|
+
},
|
|
70931
|
+
{
|
|
70932
|
+
"title": "例子",
|
|
70933
|
+
"type": "example",
|
|
70934
|
+
"children": [
|
|
70935
|
+
{
|
|
70936
|
+
"type": "code",
|
|
70937
|
+
"language": "console",
|
|
70938
|
+
"value": [
|
|
70939
|
+
"",
|
|
70940
|
+
" $ m=matrix([4.5 2.6 1.5 3.2, 1.5 4.8 5.9 1.7, 4.9 2.0 NULL 5.5])",
|
|
70941
|
+
" $ print rowImax(m)",
|
|
70942
|
+
" [2,1,1,2]",
|
|
70943
|
+
"",
|
|
70944
|
+
" $ trades = table(10:0,`time`sym`p1`p2`p3`p4`p5`vol1`vol2`vol3`vol4`vol5,[TIMESTAMP,SYMBOL,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE,INT,INT,INT,INT,INT])",
|
|
70945
|
+
" $ insert into trades values(2022.01.01T09:00:00, `A, 33.2, 33.8, 33.6, 33.3, 33.1, 200, 180, 180, 220, 200)",
|
|
70946
|
+
" $ insert into trades values(2022.01.01T09:00:00, `A, 33.1, 32.8, 33.2, 34.3, 32.3, 150, 280, 190, 100, 220)",
|
|
70947
|
+
" $ insert into trades values(2022.01.01T09:00:00, `A, 31.2, 32.6, 33.6, 35.3, 34.5, 220, 160, 130, 100, 110)",
|
|
70948
|
+
" $ insert into trades values(2022.01.01T09:00:00, `A, 30.2, 32.5, 33.6, 35.3, 34.1, 200, 180, 150, 140, 120)",
|
|
70949
|
+
" $ insert into trades values(2022.01.01T09:00:00, `A, 33.2, 33.8, 33.6, 33.3, 33.1, 180, 160, 160, 180, 200)",
|
|
70950
|
+
" $ select rowAt(matrix(p1, p2, p3, p4, p5), rowImin(vol1, vol2, vol3, vol4, vol5)) as price from trades",
|
|
70951
|
+
""
|
|
70952
|
+
]
|
|
70953
|
+
},
|
|
70954
|
+
{
|
|
70955
|
+
"type": "text",
|
|
70956
|
+
"value": [
|
|
70957
|
+
"+-----+",
|
|
70958
|
+
"|price|",
|
|
70959
|
+
"+=====+",
|
|
70960
|
+
"|33.3 |",
|
|
70961
|
+
"+-----+",
|
|
70962
|
+
"|32.8 |",
|
|
70963
|
+
"+-----+",
|
|
70964
|
+
"|31.2 |",
|
|
70965
|
+
"+-----+",
|
|
70966
|
+
"|30.2 |",
|
|
70967
|
+
"+-----+",
|
|
70968
|
+
"|33.1 |",
|
|
70969
|
+
"+-----+",
|
|
70970
|
+
"",
|
|
70971
|
+
"相关函数::doc:`../i/imax`",
|
|
70972
|
+
"",
|
|
70973
|
+
".. meta:: ",
|
|
70974
|
+
" :keywords: row"
|
|
70975
|
+
]
|
|
70976
|
+
}
|
|
70977
|
+
]
|
|
70978
|
+
}
|
|
70979
|
+
]
|
|
70980
|
+
},
|
|
70981
|
+
"rowImin": {
|
|
70982
|
+
"title": "rowImin",
|
|
70983
|
+
"type": "function",
|
|
70984
|
+
"children": [
|
|
70985
|
+
{
|
|
70986
|
+
"title": "语法",
|
|
70987
|
+
"type": "grammer",
|
|
70988
|
+
"children": [
|
|
70989
|
+
{
|
|
70990
|
+
"type": "text",
|
|
70991
|
+
"value": [
|
|
70992
|
+
"rowImin(args...)",
|
|
70993
|
+
"",
|
|
70994
|
+
"row 系列函数通用参数说明和计算规则请参考: :doc:`/FunctionsandCommands/SeriesOfFunctions/rowFunctions`",
|
|
70995
|
+
""
|
|
70996
|
+
]
|
|
70997
|
+
}
|
|
70998
|
+
]
|
|
70999
|
+
},
|
|
71000
|
+
{
|
|
71001
|
+
"title": "详情",
|
|
71002
|
+
"type": "detail",
|
|
71003
|
+
"children": [
|
|
71004
|
+
{
|
|
71005
|
+
"type": "text",
|
|
71006
|
+
"value": [
|
|
71007
|
+
"返回每行元素中最小元素的索引。如果有多个相同的最小值,返回左起第一个最小值的索引。结果为一个长度与输入参数行数相同的向量。"
|
|
71008
|
+
]
|
|
71009
|
+
}
|
|
71010
|
+
]
|
|
71011
|
+
},
|
|
71012
|
+
{
|
|
71013
|
+
"title": "例子",
|
|
71014
|
+
"type": "example",
|
|
71015
|
+
"children": [
|
|
71016
|
+
{
|
|
71017
|
+
"type": "code",
|
|
71018
|
+
"language": "console",
|
|
71019
|
+
"value": [
|
|
71020
|
+
"",
|
|
71021
|
+
" $ m=matrix([4.5 2.6 1.5 3.2, 1.5 4.8 5.9 1.7, 4.9 2.0 NULL 5.5])",
|
|
71022
|
+
" $ rowImin(m)",
|
|
71023
|
+
" [1,2,0,1]",
|
|
71024
|
+
" ",
|
|
71025
|
+
" ",
|
|
71026
|
+
" $ trades = table(10:0,`time`sym`p1`p2`p3`p4`p5`vol1`vol2`vol3`vol4`vol5,[TIMESTAMP,SYMBOL,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE,INT,INT,INT,INT,INT])",
|
|
71027
|
+
" $ insert into trades values(2022.01.01T09:00:00, `A, 33.2, 33.8, 33.6, 33.3, 33.1, 200, 180, 180, 220, 200)",
|
|
71028
|
+
" $ insert into trades values(2022.01.01T09:00:00, `A, 33.1, 32.8, 33.2, 34.3, 32.3, 150, 280, 190, 100, 220)",
|
|
71029
|
+
" $ insert into trades values(2022.01.01T09:00:00, `A, 31.2, 32.6, 33.6, 35.3, 34.5, 220, 160, 130, 100, 110)",
|
|
71030
|
+
" $ insert into trades values(2022.01.01T09:00:00, `A, 30.2, 32.5, 33.6, 35.3, 34.1, 200, 180, 150, 140, 120)",
|
|
71031
|
+
" $ insert into trades values(2022.01.01T09:00:00, `A, 33.2, 33.8, 33.6, 33.3, 33.1, 180, 160, 160, 180, 200)",
|
|
71032
|
+
"",
|
|
71033
|
+
" $ select rowAt(matrix(p1, p2, p3, p4, p5), rowImin(vol1, vol2, vol3, vol4, vol5)) as price from trades",
|
|
71034
|
+
""
|
|
71035
|
+
]
|
|
71036
|
+
},
|
|
71037
|
+
{
|
|
71038
|
+
"type": "text",
|
|
71039
|
+
"value": [
|
|
71040
|
+
"+-----+",
|
|
71041
|
+
"|price|",
|
|
71042
|
+
"+=====+",
|
|
71043
|
+
"|33.8 |",
|
|
71044
|
+
"+-----+",
|
|
71045
|
+
"|34.3 |",
|
|
71046
|
+
"+-----+",
|
|
71047
|
+
"|35.3 |",
|
|
71048
|
+
"+-----+",
|
|
71049
|
+
"|34.1 |",
|
|
71050
|
+
"+-----+",
|
|
71051
|
+
"|33.8 |",
|
|
71052
|
+
"+-----+",
|
|
71053
|
+
"",
|
|
71054
|
+
"相关函数::doc:`../i/imin`",
|
|
71055
|
+
"",
|
|
71056
|
+
".. meta:: ",
|
|
71057
|
+
" :keywords: row"
|
|
71058
|
+
]
|
|
71059
|
+
}
|
|
71060
|
+
]
|
|
71061
|
+
}
|
|
71062
|
+
]
|
|
71063
|
+
},
|
|
68800
71064
|
"rowKurtosis": {
|
|
68801
71065
|
"title": "rowKurtosis",
|
|
68802
71066
|
"type": "function",
|
|
@@ -73782,6 +76046,48 @@
|
|
|
73782
76046
|
}
|
|
73783
76047
|
]
|
|
73784
76048
|
},
|
|
76049
|
+
"setLogLevel": {
|
|
76050
|
+
"title": "setLogLevel",
|
|
76051
|
+
"type": "command",
|
|
76052
|
+
"children": [
|
|
76053
|
+
{
|
|
76054
|
+
"title": "语法",
|
|
76055
|
+
"type": "grammer",
|
|
76056
|
+
"children": [
|
|
76057
|
+
{
|
|
76058
|
+
"type": "text",
|
|
76059
|
+
"value": [
|
|
76060
|
+
"setLogLevel(logLevel)"
|
|
76061
|
+
]
|
|
76062
|
+
}
|
|
76063
|
+
]
|
|
76064
|
+
},
|
|
76065
|
+
{
|
|
76066
|
+
"title": "参数",
|
|
76067
|
+
"type": "parameters",
|
|
76068
|
+
"children": [
|
|
76069
|
+
{
|
|
76070
|
+
"type": "text",
|
|
76071
|
+
"value": [
|
|
76072
|
+
"`logLevel` 日志等级,从低到高可选值为:DEBUG, INFO, WARNING, ERROR。"
|
|
76073
|
+
]
|
|
76074
|
+
}
|
|
76075
|
+
]
|
|
76076
|
+
},
|
|
76077
|
+
{
|
|
76078
|
+
"title": "详情",
|
|
76079
|
+
"type": "detail",
|
|
76080
|
+
"children": [
|
|
76081
|
+
{
|
|
76082
|
+
"type": "text",
|
|
76083
|
+
"value": [
|
|
76084
|
+
"在线设置当前节点的日志文件的等级。设置后,系统只打印当前 logLevel 及以上级别的日志。该命令只能由管理员调用。"
|
|
76085
|
+
]
|
|
76086
|
+
}
|
|
76087
|
+
]
|
|
76088
|
+
}
|
|
76089
|
+
]
|
|
76090
|
+
},
|
|
73785
76091
|
"setMaxBlockSizeForReservedMemory": {
|
|
73786
76092
|
"title": "setMaxBlockSizeForReservedMemory",
|
|
73787
76093
|
"type": "command",
|
|
@@ -74030,6 +76336,94 @@
|
|
|
74030
76336
|
}
|
|
74031
76337
|
]
|
|
74032
76338
|
},
|
|
76339
|
+
"setMemLimitOfQueryResult": {
|
|
76340
|
+
"title": "setMemLimitOfQueryResult",
|
|
76341
|
+
"type": "command",
|
|
76342
|
+
"children": [
|
|
76343
|
+
{
|
|
76344
|
+
"title": "语法",
|
|
76345
|
+
"type": "grammer",
|
|
76346
|
+
"children": [
|
|
76347
|
+
{
|
|
76348
|
+
"type": "text",
|
|
76349
|
+
"value": [
|
|
76350
|
+
"setMemLimitOfQueryResult(memLimit)"
|
|
76351
|
+
]
|
|
76352
|
+
}
|
|
76353
|
+
]
|
|
76354
|
+
},
|
|
76355
|
+
{
|
|
76356
|
+
"title": "参数",
|
|
76357
|
+
"type": "parameters",
|
|
76358
|
+
"children": [
|
|
76359
|
+
{
|
|
76360
|
+
"type": "text",
|
|
76361
|
+
"value": [
|
|
76362
|
+
"`memLimit` 数值类型标量,表示内存上限,单位为 GB。该值必须小于 80% * maxMemSize。"
|
|
76363
|
+
]
|
|
76364
|
+
}
|
|
76365
|
+
]
|
|
76366
|
+
},
|
|
76367
|
+
{
|
|
76368
|
+
"title": "详情",
|
|
76369
|
+
"type": "detail",
|
|
76370
|
+
"children": [
|
|
76371
|
+
{
|
|
76372
|
+
"type": "text",
|
|
76373
|
+
"value": [
|
|
76374
|
+
"在线修改单次查询结果占用的最大内存上限。该命令只能由管理员在数据节点/计算节点执行。",
|
|
76375
|
+
"",
|
|
76376
|
+
"相关函数: :doc:`/FunctionsandCommands/FunctionReferences/g/getMemLimitOfTaskGroupResult`"
|
|
76377
|
+
]
|
|
76378
|
+
}
|
|
76379
|
+
]
|
|
76380
|
+
}
|
|
76381
|
+
]
|
|
76382
|
+
},
|
|
76383
|
+
"setMemLimitOfTaskGroupResult": {
|
|
76384
|
+
"title": "setMemLimitOfTaskGroupResult",
|
|
76385
|
+
"type": "command",
|
|
76386
|
+
"children": [
|
|
76387
|
+
{
|
|
76388
|
+
"title": "语法",
|
|
76389
|
+
"type": "grammer",
|
|
76390
|
+
"children": [
|
|
76391
|
+
{
|
|
76392
|
+
"type": "text",
|
|
76393
|
+
"value": [
|
|
76394
|
+
"setMemLimitOfTaskGroupResult(memLimit)"
|
|
76395
|
+
]
|
|
76396
|
+
}
|
|
76397
|
+
]
|
|
76398
|
+
},
|
|
76399
|
+
{
|
|
76400
|
+
"title": "参数",
|
|
76401
|
+
"type": "parameters",
|
|
76402
|
+
"children": [
|
|
76403
|
+
{
|
|
76404
|
+
"type": "text",
|
|
76405
|
+
"value": [
|
|
76406
|
+
"`memLimit` 数值类型标量,表示内存上限。单位为 GB。"
|
|
76407
|
+
]
|
|
76408
|
+
}
|
|
76409
|
+
]
|
|
76410
|
+
},
|
|
76411
|
+
{
|
|
76412
|
+
"title": "详情",
|
|
76413
|
+
"type": "detail",
|
|
76414
|
+
"children": [
|
|
76415
|
+
{
|
|
76416
|
+
"type": "text",
|
|
76417
|
+
"value": [
|
|
76418
|
+
"在线修改当前节点发送的批量子查询占用的内存上限。该命令只能由管理员在数据节点/计算节点执行。",
|
|
76419
|
+
"",
|
|
76420
|
+
"相关函数: :doc:`/FunctionsandCommands/FunctionReferences/g/getMemLimitOfQueryResult`"
|
|
76421
|
+
]
|
|
76422
|
+
}
|
|
76423
|
+
]
|
|
76424
|
+
}
|
|
76425
|
+
]
|
|
76426
|
+
},
|
|
74033
76427
|
"setRaftElectionTick": {
|
|
74034
76428
|
"title": "setRaftElectionTick",
|
|
74035
76429
|
"type": "command",
|
|
@@ -78869,7 +81263,7 @@
|
|
|
78869
81263
|
"* 'condition':表示过滤条件。",
|
|
78870
81264
|
"",
|
|
78871
81265
|
" * 若分发异构流表,则 'condition' 是一个字符串,且必须是 replay 参数 *inputTables* 的键值(表的标识)。用于过滤出异构表中具有 *condition* 标识的数据。",
|
|
78872
|
-
" * 若分发普通流表,则 'condition'
|
|
81266
|
+
" * 若分发普通流表,则 'condition' 可以是一个表示列名的字符串标量或/向量,或者是包含一个或多个布尔表达式的元代码,且表达式中不能调用函数。请注意,若 'condition' 指定为字符串标量/向量,必须为 *conditionColumn* 指定列的元素。",
|
|
78873
81267
|
"",
|
|
78874
81268
|
"* 'handler':一元函数或表对象(包括流数据引擎返回的表对象)。",
|
|
78875
81269
|
"",
|
|
@@ -79019,11 +81413,11 @@
|
|
|
79019
81413
|
"type": "text",
|
|
79020
81414
|
"value": [
|
|
79021
81415
|
" $ n=20",
|
|
79022
|
-
" $ sym = symbol(
|
|
81416
|
+
" $ sym = symbol(take(`A`B`C,n))",
|
|
79023
81417
|
" $ name = string(rand(1..10,n))",
|
|
79024
81418
|
" $ date = temporalAdd(2012.12.06,0..(n-1),'d')",
|
|
79025
81419
|
" $ time = temporalAdd(09:30:00.000,0..(n-1),'ms')",
|
|
79026
|
-
" $ vol =
|
|
81420
|
+
" $ vol = 100+take(1..8,20)",
|
|
79027
81421
|
" $ t = table(date,time,sym,name,vol)",
|
|
79028
81422
|
"",
|
|
79029
81423
|
" //定义两个流数据引擎,作为分发引擎 handler",
|
|
@@ -79036,11 +81430,11 @@
|
|
|
79036
81430
|
" $ share streamTable(100:0,`time`avg_vol,[TIME,INT]) as output2",
|
|
79037
81431
|
" $ engine1=createTimeSeriesEngine(name=\"timeEngine\", windowSize=3, step=3, metrics=<[sum(vol)]>, dummyTable=st3, outputTable=output1, timeColumn=`time, useSystemTime=false, keyColumn=`sym, garbageSize=50)",
|
|
79038
81432
|
" $ engine2=createReactiveStateEngine(name=\"reactiveEngine\", metrics=<[mavg(vol, 3)]>, dummyTable=st1, outputTable=output2, keyColumn=`sym)",
|
|
79039
|
-
"
|
|
81433
|
+
"",
|
|
79040
81434
|
" //需要注入分发引擎的流表",
|
|
79041
81435
|
" $ share streamTable(100:0,`date`time`sym`name`vol,[DATE,TIME,SYMBOL,STRING,INT]) as trades",
|
|
79042
81436
|
"",
|
|
79043
|
-
" //设置第一个过滤条件,将 trades
|
|
81437
|
+
" //设置第一个过滤条件,将 trades 表中 sym 列对应元素为 A 且时间在09:30:00.001:09:30:00.010和09:29:00.000:09:30:00.000的数据输入状态引擎进行处理",
|
|
79044
81438
|
" $ filter1 = dict(STRING,ANY)",
|
|
79045
81439
|
" $ filter1['condition']=`A",
|
|
79046
81440
|
" $ filter1['handler']=engine2",
|
|
@@ -79078,14 +81472,17 @@
|
|
|
79078
81472
|
"============ ===== ========",
|
|
79079
81473
|
"time sym sum_vol",
|
|
79080
81474
|
"============ ===== ========",
|
|
79081
|
-
"09:30:00.003
|
|
79082
|
-
"09:30:00.003
|
|
79083
|
-
"09:30:00.006
|
|
79084
|
-
"09:30:00.006
|
|
79085
|
-
"09:30:00.009
|
|
79086
|
-
"09:30:00.
|
|
79087
|
-
"09:30:00.012
|
|
79088
|
-
"09:30:00.
|
|
81475
|
+
"09:30:00.003 A 101",
|
|
81476
|
+
"09:30:00.003 C 103",
|
|
81477
|
+
"09:30:00.006 A 104",
|
|
81478
|
+
"09:30:00.006 C 106",
|
|
81479
|
+
"09:30:00.009 A 107",
|
|
81480
|
+
"09:30:00.009 C 101",
|
|
81481
|
+
"09:30:00.012 A 102",
|
|
81482
|
+
"09:30:00.012 C 104",
|
|
81483
|
+
"09:30:00.015 A 105",
|
|
81484
|
+
"09:30:00.015 C 107",
|
|
81485
|
+
"09:30:00.018 A 108",
|
|
79089
81486
|
"============ ===== ========",
|
|
79090
81487
|
""
|
|
79091
81488
|
]
|
|
@@ -79109,10 +81506,65 @@
|
|
|
79109
81506
|
"+-------------+--------+",
|
|
79110
81507
|
"|00:00:00.001 | |",
|
|
79111
81508
|
"+-------------+--------+",
|
|
79112
|
-
"|00:00:00.001 |
|
|
81509
|
+
"|00:00:00.001 | 104 |",
|
|
81510
|
+
"+-------------+--------+",
|
|
81511
|
+
"|00:00:00.001 | 104 |",
|
|
79113
81512
|
"+-------------+--------+",
|
|
79114
|
-
"
|
|
79115
|
-
|
|
81513
|
+
""
|
|
81514
|
+
]
|
|
81515
|
+
},
|
|
81516
|
+
{
|
|
81517
|
+
"type": "code",
|
|
81518
|
+
"language": "console",
|
|
81519
|
+
"value": [
|
|
81520
|
+
""
|
|
81521
|
+
]
|
|
81522
|
+
},
|
|
81523
|
+
{
|
|
81524
|
+
"type": "text",
|
|
81525
|
+
"value": [
|
|
81526
|
+
" $ select * from st2",
|
|
81527
|
+
"",
|
|
81528
|
+
"============ ============= === ==== ====",
|
|
81529
|
+
"date time sym name vol",
|
|
81530
|
+
"============ ============= === ==== ====",
|
|
81531
|
+
"2012.12.08 09:30:00.002 C 6 103",
|
|
81532
|
+
"2012.12.09 09:30:00.003 A 8 104",
|
|
81533
|
+
"2012.12.10 09:30:00.004 B 10 105",
|
|
81534
|
+
"2012.12.11 09:30:00.005 C 10 106",
|
|
81535
|
+
"2012.12.12 09:30:00.006 A 10 107",
|
|
81536
|
+
"2012.12.13 09:30:00.007 B 1 108",
|
|
81537
|
+
"2012.12.14 09:30:00.008 C 3 101",
|
|
81538
|
+
"2012.12.15 09:30:00.009 A 4 102",
|
|
81539
|
+
"2012.12.16 09:30:00.010 B 9 103",
|
|
81540
|
+
"============ ============= === ==== ====",
|
|
81541
|
+
"",
|
|
81542
|
+
"可以为 condition 指定表达式,以支持更复杂的过滤逻辑,将上例中 filter2 的 *condition* 指定为条件表达式,同时对 vol 和 date 列进行过滤。",
|
|
81543
|
+
""
|
|
81544
|
+
]
|
|
81545
|
+
},
|
|
81546
|
+
{
|
|
81547
|
+
"type": "code",
|
|
81548
|
+
"language": "console",
|
|
81549
|
+
"value": [
|
|
81550
|
+
""
|
|
81551
|
+
]
|
|
81552
|
+
},
|
|
81553
|
+
{
|
|
81554
|
+
"type": "text",
|
|
81555
|
+
"value": [
|
|
81556
|
+
" $ filter2 = dict(STRING,ANY)",
|
|
81557
|
+
" $ filter2['condition'] = <sym==`A and 101<vol<105 and date<2012.12.15>",
|
|
81558
|
+
" $ filter2['handler'] = st2",
|
|
81559
|
+
" $ filter2['timeRange'] = 09:30:00.002:09:30:00.010",
|
|
81560
|
+
" ",
|
|
81561
|
+
" $ select * from st2",
|
|
81562
|
+
"",
|
|
81563
|
+
"=========== ============ === ==== ====",
|
|
81564
|
+
"date time sym name\tvol",
|
|
81565
|
+
"=========== ============ === ==== ====",
|
|
81566
|
+
"2012.12.09 09:30:00.003 A 7 104",
|
|
81567
|
+
"=========== ============ === ==== ===="
|
|
79116
81568
|
]
|
|
79117
81569
|
}
|
|
79118
81570
|
]
|
|
@@ -79198,6 +81650,88 @@
|
|
|
79198
81650
|
}
|
|
79199
81651
|
]
|
|
79200
81652
|
},
|
|
81653
|
+
"stretch": {
|
|
81654
|
+
"title": "stretch",
|
|
81655
|
+
"type": "function",
|
|
81656
|
+
"children": [
|
|
81657
|
+
{
|
|
81658
|
+
"title": "语法",
|
|
81659
|
+
"type": "grammer",
|
|
81660
|
+
"children": [
|
|
81661
|
+
{
|
|
81662
|
+
"type": "text",
|
|
81663
|
+
"value": [
|
|
81664
|
+
"stretch(X, n)"
|
|
81665
|
+
]
|
|
81666
|
+
}
|
|
81667
|
+
]
|
|
81668
|
+
},
|
|
81669
|
+
{
|
|
81670
|
+
"title": "参数",
|
|
81671
|
+
"type": "parameters",
|
|
81672
|
+
"children": [
|
|
81673
|
+
{
|
|
81674
|
+
"type": "text",
|
|
81675
|
+
"value": [
|
|
81676
|
+
"`X` 向量/元组。",
|
|
81677
|
+
"",
|
|
81678
|
+
"`n` 非负整数。"
|
|
81679
|
+
]
|
|
81680
|
+
}
|
|
81681
|
+
]
|
|
81682
|
+
},
|
|
81683
|
+
{
|
|
81684
|
+
"title": "详情",
|
|
81685
|
+
"type": "detail",
|
|
81686
|
+
"children": [
|
|
81687
|
+
{
|
|
81688
|
+
"type": "text",
|
|
81689
|
+
"value": [
|
|
81690
|
+
"将 *X* 均匀拉伸为长度为 n 的向量。",
|
|
81691
|
+
"",
|
|
81692
|
+
"该函数与 :doc:`../t/take` 的区别为:",
|
|
81693
|
+
"",
|
|
81694
|
+
"* take 是对向量整体进行循环拼接,而 stretch 则是对向量的每一个元素进行复制达到拉伸的效果。"
|
|
81695
|
+
]
|
|
81696
|
+
}
|
|
81697
|
+
]
|
|
81698
|
+
},
|
|
81699
|
+
{
|
|
81700
|
+
"title": "例子",
|
|
81701
|
+
"type": "example",
|
|
81702
|
+
"children": [
|
|
81703
|
+
{
|
|
81704
|
+
"type": "code",
|
|
81705
|
+
"language": "console",
|
|
81706
|
+
"value": [
|
|
81707
|
+
"",
|
|
81708
|
+
" $ X = 1 NULL 2 3",
|
|
81709
|
+
" $ print stretch(X, 11)",
|
|
81710
|
+
" [1,1,1,,,,2,2,3,3]",
|
|
81711
|
+
"",
|
|
81712
|
+
" $ print stretch(X, 11)",
|
|
81713
|
+
" [1,1,1,,,,2,2,2,3,3]",
|
|
81714
|
+
"",
|
|
81715
|
+
" $ print stretch(X, 12)",
|
|
81716
|
+
" [1,1,1,,,,2,2,2,3,3,3]",
|
|
81717
|
+
"",
|
|
81718
|
+
" $ print take(X, 10)",
|
|
81719
|
+
" [1,,2,3,1,,2,3,1,]",
|
|
81720
|
+
"",
|
|
81721
|
+
"",
|
|
81722
|
+
"",
|
|
81723
|
+
"",
|
|
81724
|
+
"",
|
|
81725
|
+
"",
|
|
81726
|
+
"",
|
|
81727
|
+
"",
|
|
81728
|
+
""
|
|
81729
|
+
]
|
|
81730
|
+
}
|
|
81731
|
+
]
|
|
81732
|
+
}
|
|
81733
|
+
]
|
|
81734
|
+
},
|
|
79201
81735
|
"string": {
|
|
79202
81736
|
"title": "string",
|
|
79203
81737
|
"type": "function",
|
|
@@ -85972,6 +88506,68 @@
|
|
|
85972
88506
|
}
|
|
85973
88507
|
]
|
|
85974
88508
|
},
|
|
88509
|
+
"tmsum2": {
|
|
88510
|
+
"title": "tmsum2",
|
|
88511
|
+
"type": "function",
|
|
88512
|
+
"children": [
|
|
88513
|
+
{
|
|
88514
|
+
"title": "语法",
|
|
88515
|
+
"type": "grammer",
|
|
88516
|
+
"children": [
|
|
88517
|
+
{
|
|
88518
|
+
"type": "text",
|
|
88519
|
+
"value": [
|
|
88520
|
+
"tmsum2(T, X, window)",
|
|
88521
|
+
"",
|
|
88522
|
+
"参数说明和窗口计算规则请参考: :doc:`/FunctionsandCommands/SeriesOfFunctions/tmFunctions`"
|
|
88523
|
+
]
|
|
88524
|
+
}
|
|
88525
|
+
]
|
|
88526
|
+
},
|
|
88527
|
+
{
|
|
88528
|
+
"title": "详情",
|
|
88529
|
+
"type": "detail",
|
|
88530
|
+
"children": [
|
|
88531
|
+
{
|
|
88532
|
+
"type": "text",
|
|
88533
|
+
"value": [
|
|
88534
|
+
"在给定长度(以时间 *T* 衡量)的滑动窗口内计算 *X* 元素的平方和。请注意,该函数的返回值是 DOUBLE 类型。"
|
|
88535
|
+
]
|
|
88536
|
+
}
|
|
88537
|
+
]
|
|
88538
|
+
},
|
|
88539
|
+
{
|
|
88540
|
+
"title": "例子",
|
|
88541
|
+
"type": "example",
|
|
88542
|
+
"children": [
|
|
88543
|
+
{
|
|
88544
|
+
"type": "code",
|
|
88545
|
+
"language": "console",
|
|
88546
|
+
"value": [
|
|
88547
|
+
"",
|
|
88548
|
+
" $ tmsum2(1 1 3 5 8 15 15 20, 5 2 4 1 2 8 9 10, 3)",
|
|
88549
|
+
" [25,29,45,17,4,64,145,100]",
|
|
88550
|
+
"",
|
|
88551
|
+
" $ index = take(datehour(2019.06.13 13:30:10),4) join (datehour(2019.06.13 13:30:10)+1..6)",
|
|
88552
|
+
" $ data = 1 NULL 3 4 5 NULL 3 NULL 5 3",
|
|
88553
|
+
" $ tmsum2(index, data, 4h)",
|
|
88554
|
+
" [1,1,10,26,51,51,60,34,34,43]",
|
|
88555
|
+
"",
|
|
88556
|
+
" $ tmsum2(index, data, 1d)",
|
|
88557
|
+
" [1,1,10,26,51,51,60,60,85,94]",
|
|
88558
|
+
""
|
|
88559
|
+
]
|
|
88560
|
+
},
|
|
88561
|
+
{
|
|
88562
|
+
"type": "text",
|
|
88563
|
+
"value": [
|
|
88564
|
+
"相关函数::doc:`../m/msum2`, :doc:`../s/sum2`"
|
|
88565
|
+
]
|
|
88566
|
+
}
|
|
88567
|
+
]
|
|
88568
|
+
}
|
|
88569
|
+
]
|
|
88570
|
+
},
|
|
85975
88571
|
"tmvar": {
|
|
85976
88572
|
"title": "tmvar",
|
|
85977
88573
|
"type": "function",
|
|
@@ -86871,6 +89467,117 @@
|
|
|
86871
89467
|
}
|
|
86872
89468
|
]
|
|
86873
89469
|
},
|
|
89470
|
+
"topRange": {
|
|
89471
|
+
"title": "topRange",
|
|
89472
|
+
"type": "function",
|
|
89473
|
+
"children": [
|
|
89474
|
+
{
|
|
89475
|
+
"title": "语法",
|
|
89476
|
+
"type": "grammer",
|
|
89477
|
+
"children": [
|
|
89478
|
+
{
|
|
89479
|
+
"type": "text",
|
|
89480
|
+
"value": [
|
|
89481
|
+
"topRange(X)"
|
|
89482
|
+
]
|
|
89483
|
+
}
|
|
89484
|
+
]
|
|
89485
|
+
},
|
|
89486
|
+
{
|
|
89487
|
+
"title": "参数",
|
|
89488
|
+
"type": "parameters",
|
|
89489
|
+
"children": [
|
|
89490
|
+
{
|
|
89491
|
+
"type": "text",
|
|
89492
|
+
"value": [
|
|
89493
|
+
"`X` 向量/元组/矩阵/表。"
|
|
89494
|
+
]
|
|
89495
|
+
}
|
|
89496
|
+
]
|
|
89497
|
+
},
|
|
89498
|
+
{
|
|
89499
|
+
"title": "详情",
|
|
89500
|
+
"type": "detail",
|
|
89501
|
+
"children": [
|
|
89502
|
+
{
|
|
89503
|
+
"type": "text",
|
|
89504
|
+
"value": [
|
|
89505
|
+
"对于 *X* 中的每个元素 *Xi*,统计 *Xi* 左侧相邻且连续大于它的元素个数。",
|
|
89506
|
+
"",
|
|
89507
|
+
"该函数常用于统计一个序列的当前值是前多少周期(日或分钟等)内的最大值。例如某只股票创几日新高等。"
|
|
89508
|
+
]
|
|
89509
|
+
}
|
|
89510
|
+
]
|
|
89511
|
+
},
|
|
89512
|
+
{
|
|
89513
|
+
"title": "例子",
|
|
89514
|
+
"type": "example",
|
|
89515
|
+
"children": [
|
|
89516
|
+
{
|
|
89517
|
+
"type": "code",
|
|
89518
|
+
"language": "console",
|
|
89519
|
+
"value": [
|
|
89520
|
+
"",
|
|
89521
|
+
" $ topRange([13.5, 13.6, 13.4, 13.3, 13.5, 13.9, 13.1, 20.1, 20.2, 20.3])",
|
|
89522
|
+
" [0,1,0,0,2,5,0,7,8,9]",
|
|
89523
|
+
"",
|
|
89524
|
+
" $ m = matrix(1.5 2.6 3.2 1.4 2.5 2.2 3.7 2.0, 1.6 2.3 4.2 5.6 4.1 3.2 4.4 6.9)",
|
|
89525
|
+
" $ topRange(m)",
|
|
89526
|
+
""
|
|
89527
|
+
]
|
|
89528
|
+
},
|
|
89529
|
+
{
|
|
89530
|
+
"type": "text",
|
|
89531
|
+
"value": [
|
|
89532
|
+
"== ==",
|
|
89533
|
+
"#0 #1",
|
|
89534
|
+
"== ==",
|
|
89535
|
+
"0 0 ",
|
|
89536
|
+
"1 1 ",
|
|
89537
|
+
"2 2 ",
|
|
89538
|
+
"0 3 ",
|
|
89539
|
+
"1 0 ",
|
|
89540
|
+
"0 0 ",
|
|
89541
|
+
"6 2 ",
|
|
89542
|
+
"0 7 ",
|
|
89543
|
+
"== ==",
|
|
89544
|
+
""
|
|
89545
|
+
]
|
|
89546
|
+
},
|
|
89547
|
+
{
|
|
89548
|
+
"type": "code",
|
|
89549
|
+
"language": "console",
|
|
89550
|
+
"value": [
|
|
89551
|
+
"",
|
|
89552
|
+
" //模拟股票 A 8天的股价,使用 topRange 计算股票 A 每日股价创几日新高",
|
|
89553
|
+
" $ trades = table(take(`A, 8) as sym, 2022.01.01 + 1..8 as date, 39.70 39.72 39.80 39.78 39.83 39.92 40.00 40.03 as price)",
|
|
89554
|
+
" $ select *, topRange(price) from trades",
|
|
89555
|
+
""
|
|
89556
|
+
]
|
|
89557
|
+
},
|
|
89558
|
+
{
|
|
89559
|
+
"type": "text",
|
|
89560
|
+
"value": [
|
|
89561
|
+
"=== ========== ======== ===============",
|
|
89562
|
+
"id date price topRange_price",
|
|
89563
|
+
"=== ========== ======== ===============",
|
|
89564
|
+
"A 2022.01.02 39.7 0",
|
|
89565
|
+
"A 2022.01.03 39.72 1",
|
|
89566
|
+
"A 2022.01.04 39.8 2",
|
|
89567
|
+
"A 2022.01.05 39.78 0",
|
|
89568
|
+
"A 2022.01.06 39.83 4",
|
|
89569
|
+
"A 2022.01.07 39.92 5",
|
|
89570
|
+
"A 2022.01.08 40 6",
|
|
89571
|
+
"A 2022.01.09 40.03 7",
|
|
89572
|
+
"=== ========== ======== ===============",
|
|
89573
|
+
"",
|
|
89574
|
+
"相关函数::doc:`../l/lowRange`"
|
|
89575
|
+
]
|
|
89576
|
+
}
|
|
89577
|
+
]
|
|
89578
|
+
}
|
|
89579
|
+
]
|
|
89580
|
+
},
|
|
86874
89581
|
"transDS!": {
|
|
86875
89582
|
"title": "transDS!",
|
|
86876
89583
|
"type": "function",
|
|
@@ -88061,7 +90768,7 @@
|
|
|
88061
90768
|
{
|
|
88062
90769
|
"type": "text",
|
|
88063
90770
|
"value": [
|
|
88064
|
-
"
|
|
90771
|
+
"从内存中释放变量和函数定义。VAR(本地变量)亦可通过 \"= NULL\" 释放变量。"
|
|
88065
90772
|
]
|
|
88066
90773
|
}
|
|
88067
90774
|
]
|
|
@@ -89668,6 +92375,136 @@
|
|
|
89668
92375
|
}
|
|
89669
92376
|
]
|
|
89670
92377
|
},
|
|
92378
|
+
"valueChanged": {
|
|
92379
|
+
"title": "valueChanged",
|
|
92380
|
+
"type": "function",
|
|
92381
|
+
"children": [
|
|
92382
|
+
{
|
|
92383
|
+
"title": "语法",
|
|
92384
|
+
"type": "grammer",
|
|
92385
|
+
"children": [
|
|
92386
|
+
{
|
|
92387
|
+
"type": "text",
|
|
92388
|
+
"value": [
|
|
92389
|
+
"valueChanged(X, [mode=”prev“])"
|
|
92390
|
+
]
|
|
92391
|
+
}
|
|
92392
|
+
]
|
|
92393
|
+
},
|
|
92394
|
+
{
|
|
92395
|
+
"title": "参数",
|
|
92396
|
+
"type": "parameters",
|
|
92397
|
+
"children": [
|
|
92398
|
+
{
|
|
92399
|
+
"type": "text",
|
|
92400
|
+
"value": [
|
|
92401
|
+
"`X` 字符串、布尔、时间或数值类型的向量/矩阵/表/元组。",
|
|
92402
|
+
"",
|
|
92403
|
+
"`mode` 字符串,可选值为:\"prev\", \"next\", \"any\" 和 \"all\",默认值为 \"prev\"。",
|
|
92404
|
+
"",
|
|
92405
|
+
"* \"prev\": 前一个元素。",
|
|
92406
|
+
"* \"next\": 后一个元素。",
|
|
92407
|
+
"* \"any\": 前一个元素或后一个元素。",
|
|
92408
|
+
"* \"all\": 前一个元素和后一个元素值。"
|
|
92409
|
+
]
|
|
92410
|
+
}
|
|
92411
|
+
]
|
|
92412
|
+
},
|
|
92413
|
+
{
|
|
92414
|
+
"title": "详情",
|
|
92415
|
+
"type": "detail",
|
|
92416
|
+
"children": [
|
|
92417
|
+
{
|
|
92418
|
+
"type": "text",
|
|
92419
|
+
"value": [
|
|
92420
|
+
"*X* 中每个元素较 *mode* 是否发生变化,若当前元素值发生变化,则返回 true,否则返回 false。若比较对象不存在,则返回 false。例如:valueChanged(X, [mode=”prev“]) 的第一个元素返回 false;valueChanged(X, [mode=”next“]) 的最后一个元素返回 false。",
|
|
92421
|
+
"",
|
|
92422
|
+
"若 *X* 为矩阵/表,在每列内进行上述操作,返回一个矩阵/表。"
|
|
92423
|
+
]
|
|
92424
|
+
}
|
|
92425
|
+
]
|
|
92426
|
+
},
|
|
92427
|
+
{
|
|
92428
|
+
"title": "例子",
|
|
92429
|
+
"type": "example",
|
|
92430
|
+
"children": [
|
|
92431
|
+
{
|
|
92432
|
+
"type": "code",
|
|
92433
|
+
"language": "console",
|
|
92434
|
+
"value": [
|
|
92435
|
+
"",
|
|
92436
|
+
" $ x= 1 2 2 2 2 3 NULL 3 4 8",
|
|
92437
|
+
" $ valueChanged(x)",
|
|
92438
|
+
" [false,true,false,false,false,true,true,true,true,true]",
|
|
92439
|
+
" ",
|
|
92440
|
+
" $ valueChanged(x,\"next\")",
|
|
92441
|
+
" [true,false,false,false,true,true,true,true,true,false]",
|
|
92442
|
+
" ",
|
|
92443
|
+
" $ valueChanged(x,\"any\")",
|
|
92444
|
+
" [true,true,false,false,true,true,true,true,true,true]",
|
|
92445
|
+
" ",
|
|
92446
|
+
" $ valueChanged(x,\"all\")",
|
|
92447
|
+
" [false,false,false,false,false,true,true,true,true,false]",
|
|
92448
|
+
"",
|
|
92449
|
+
" $ tup=(1 2 3, `A`A`B`C, 2021.10.12+1 2 2)",
|
|
92450
|
+
" $ valueChanged(tup)",
|
|
92451
|
+
" ([false,true,true],[false,false,true,true],[false,true,false])",
|
|
92452
|
+
"",
|
|
92453
|
+
" $ m=matrix(1 2 3, 1 2 3, 1 3 3)",
|
|
92454
|
+
" $ valueChanged(m)",
|
|
92455
|
+
""
|
|
92456
|
+
]
|
|
92457
|
+
},
|
|
92458
|
+
{
|
|
92459
|
+
"type": "text",
|
|
92460
|
+
"value": [
|
|
92461
|
+
"====== ======= =======",
|
|
92462
|
+
"col1\tcol2\tcol3",
|
|
92463
|
+
"====== ======= =======",
|
|
92464
|
+
"false\tfalse\tfalse",
|
|
92465
|
+
"true\ttrue\ttrue",
|
|
92466
|
+
"true\ttrue\tfalse",
|
|
92467
|
+
"====== ======= =======",
|
|
92468
|
+
""
|
|
92469
|
+
]
|
|
92470
|
+
},
|
|
92471
|
+
{
|
|
92472
|
+
"type": "code",
|
|
92473
|
+
"language": "console",
|
|
92474
|
+
"value": [
|
|
92475
|
+
"",
|
|
92476
|
+
" $ id= 1 2 2 2 2 3 3 4 8",
|
|
92477
|
+
" $ sym=`A + string(1 2 2 2 2 3 3 4 8)",
|
|
92478
|
+
" $ val=83.8 92.8 8.1 61.4 40.7 67.2 15.2 20.6 96.5",
|
|
92479
|
+
" $ t=table(id, sym, val)",
|
|
92480
|
+
" $ valueChanged(t)",
|
|
92481
|
+
""
|
|
92482
|
+
]
|
|
92483
|
+
},
|
|
92484
|
+
{
|
|
92485
|
+
"type": "text",
|
|
92486
|
+
"value": [
|
|
92487
|
+
"======= ====== =======",
|
|
92488
|
+
"id sym val",
|
|
92489
|
+
"======= ====== =======",
|
|
92490
|
+
"false\tfalse\tfalse",
|
|
92491
|
+
"true\ttrue\ttrue",
|
|
92492
|
+
"false\tfalse\ttrue",
|
|
92493
|
+
"false\tfalse\ttrue",
|
|
92494
|
+
"false\tfalse\ttrue",
|
|
92495
|
+
"true\ttrue\ttrue",
|
|
92496
|
+
"false\tfalse\ttrue",
|
|
92497
|
+
"true\ttrue\ttrue",
|
|
92498
|
+
"true\ttrue\ttrue",
|
|
92499
|
+
"======= ====== =======",
|
|
92500
|
+
"",
|
|
92501
|
+
"相关函数::doc:`../k/keys`"
|
|
92502
|
+
]
|
|
92503
|
+
}
|
|
92504
|
+
]
|
|
92505
|
+
}
|
|
92506
|
+
]
|
|
92507
|
+
},
|
|
89671
92508
|
"values": {
|
|
89672
92509
|
"title": "values",
|
|
89673
92510
|
"type": "function",
|