dolphindb 2.0.907 → 2.0.909

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.
Files changed (3) hide show
  1. package/docs.en.json +16 -2
  2. package/docs.zh.json +307 -83
  3. package/package.json +2 -2
package/docs.en.json CHANGED
@@ -14451,9 +14451,23 @@
14451
14451
  "value": [
14452
14452
  "`name` is a string indicating the name of the reactive state engine. It is the only identifier of the reactive state engine. It can have letter, number and \"_\". It must start with a letter.",
14453
14453
  "",
14454
- "`metrics` is metacode specifying the formulas for calculation. The formulas should use vector functions instead of aggregate functions. For more information about metacode please refer to :doc:`/Objects/Metaprogramming`. To use a user-defined function in the reactive state engine, please add \"@state\" to declare it before the definition.",
14454
+ "`metrics` is metacode specifying the formulas for calculation. The formulas should use vector functions instead of aggregate functions. For more information about metacode please refer to :doc:`/Objects/Metaprogramming`. To use a user-defined function in the reactive state engine, please note:",
14455
14455
  "",
14456
- "The following state functions in DolphinDB's reactive state engine has been optimized. Currently, unoptimized state functions are not supported by this engine. And aggregate functions should be avoid.",
14456
+ "1. Add \"@state\" to declare the function before the definition. For state functions, only assignment statements and return statements are supported.",
14457
+ "",
14458
+ "2. If the rvalue of an assignment statement is a function that returns multiple values, the values must be assigned to variables at the same time. In the following example, the user-defined state function references linearTimeTrend, which returns two values:",
14459
+ "",
14460
+ ".. code-block:: console",
14461
+ "",
14462
+ " $ @state",
14463
+ " $ def forcast2(S, N){",
14464
+ " $ linearregIntercept, linearregSlope = linearTimeTrend(S, N)",
14465
+ " $ return (N - 1) * linearregSlope + linearregIntercept",
14466
+ " $ }",
14467
+ "",
14468
+ ".. _dummyTable_rs:",
14469
+ "",
14470
+ "The following state functions in DolphinDB's reactive state engine has been optimized. Currently, unoptimized state functions are not supported by this engine, and aggregate functions should be avoid.",
14457
14471
  "",
14458
14472
  "* cumulative function: cumavg, cumsum, cumprod, cumcount, cummin, cummax, cumvar, cumvarp, cumstd, cumstdp, cumcorr, cumcovar, cumbeta, cumwsum, cumwavg, cumfirstNot, cumlastNot, cummed, cumpercentile ",
14459
14473
  "* moving function: 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",
package/docs.zh.json CHANGED
@@ -877,7 +877,7 @@
877
877
  "",
878
878
  "请注意,分布式表或维度表通过addColumn命令添加新列后,需要使用loadTable后,才能更新追加的新列。",
879
879
  "",
880
- ".. versionadded:: 1.30.17",
880
+ ".. versionadded:: 2.00.5",
881
881
  " 支持添加的列包含特殊字符",
882
882
  ""
883
883
  ]
@@ -4057,7 +4057,7 @@
4057
4057
  "",
4058
4058
  "`force` 布尔值,表示是否进行全量备份。进行非首次备份时,若 *force* = true,系统将待备份数据全部进行备份;否则仅备份有修改或新增的分区数据。",
4059
4059
  "",
4060
- "`parallel` 布尔值,表示是否对一个数据表下不同分区进行并行备份。默认值为false。",
4060
+ "`parallel` 布尔值,表示是否对一个数据表下不同分区进行并行备份。默认值为 false。",
4061
4061
  "",
4062
4062
  "以下参数仅在指定 *dbPath* 时有效:",
4063
4063
  "",
@@ -4098,8 +4098,7 @@
4098
4098
  "type": "text",
4099
4099
  "value": [
4100
4100
  "* 若 :doc:`../d/database` 创建数据库时,指定 *chunkGranularity* = 'DATABASE',则只能通过 SQL 语句备份数据。",
4101
- "* 若 *backupDir* 目录存在,通过 SQL 语句备份的相同库表文件,备份将会失败。",
4102
- "* 通过 :doc:`../../CommandsReferences/t/truncate` 删除表中所有数据后,不能通过指定 *dbPath* 的方式再次备份该表。"
4101
+ "* 若 *backupDir* 目录已存在备份文件,则再次向该目录备份数据时,需保证备份方式(dbPath 或 sqlObj)一致,否则将备份失败。"
4103
4102
  ]
4104
4103
  }
4105
4104
  ]
@@ -4199,7 +4198,9 @@
4199
4198
  {
4200
4199
  "type": "text",
4201
4200
  "value": [
4202
- "例3. 备份数据库中所有表数据。",
4201
+ "例3. 备份数据库中表数据。",
4202
+ "",
4203
+ "(1). 备份指定表或所有表",
4203
4204
  ""
4204
4205
  ]
4205
4206
  },
@@ -4218,6 +4219,48 @@
4218
4219
  ""
4219
4220
  ]
4220
4221
  },
4222
+ {
4223
+ "type": "text",
4224
+ "value": [
4225
+ "(2). partition 指定分区范围",
4226
+ ""
4227
+ ]
4228
+ },
4229
+ {
4230
+ "type": "code",
4231
+ "language": "console",
4232
+ "value": [
4233
+ "",
4234
+ " //备份数据库中表 pt 的指定的5个分区",
4235
+ " $ partitions=[\"/20170807/0_50\",\"/20170808/0_50\",\"/20170809/0_50\",\"/20170810/0_50\",\"/20170811/0_50\"]",
4236
+ " $ backup(backupDir=\"/home/DolphinDB/backup\",dbPath=\"dfs://compoDB\",force=true,tableName=`pt,partition=partitions);",
4237
+ " 5 ",
4238
+ ""
4239
+ ]
4240
+ },
4241
+ {
4242
+ "type": "text",
4243
+ "value": [
4244
+ "(3). partition 指定过滤条件。请注意,对于范围分区,指定分区范围内的一个值,表示整个分区。",
4245
+ ""
4246
+ ]
4247
+ },
4248
+ {
4249
+ "type": "code",
4250
+ "language": "console",
4251
+ "value": [
4252
+ "",
4253
+ " //备份数据库中表 pt 的一级分区 20170807 内的 50_100 的分区",
4254
+ " $ partitions=[2017.08.07,50]",
4255
+ " $ backup(backupDir=\"/home/DolphinDB/backup\",dbPath=\"dfs://compoDB\",force=true,tableName=`pt,partition=partitions);",
4256
+ " 1",
4257
+ " //备份数据库中表 pt 的所有一级分区内的 0_50 的分区",
4258
+ " $ partitions=[,[0]]",
4259
+ " $ backup(backupDir=\"/home/DolphinDB/backup\",dbPath=\"dfs://compoDB\",force=true,tableName=`pt,partition=partitions);",
4260
+ " 5 ",
4261
+ ""
4262
+ ]
4263
+ },
4221
4264
  {
4222
4265
  "type": "text",
4223
4266
  "value": [
@@ -12666,15 +12709,13 @@
12666
12709
  "",
12667
12710
  "`outputTable` 计算结果的输出表,可以是内存表或分布式表。在调用 ``createAnomalyDetectionEngine`` 函数之前,需要将输出表预先设立为一个空表,并指定各列列名以及数据类型。异常检测引擎会将计算结果注入该表。",
12668
12711
  "",
12669
- "输出表的各列的顺序为:时间列,分组列,异常类型列 type,异常条件列 metric。",
12670
- "",
12671
- "其中:",
12712
+ "输出表的各列的顺序如下:",
12672
12713
  "",
12673
- "\\(1) 第一列必须是时间类型。且数据类型与 *dummyTable* 的时间列一致,用于存放检测到异常的时间戳。",
12714
+ "\\(1) 时间列。其数据类型与 *dummyTable* 的时间列一致,用于存放检测到异常的时间戳。",
12674
12715
  "",
12675
- "\\(2) 如果 *keyColumn* 不为空,第二列为 *keyColumn*。",
12716
+ "\\(2) 分组列。如果 *keyColumn* 不为空,第二列为 *keyColumn*。",
12676
12717
  "",
12677
- "\\(3) 之后两列分别为 INT 类型和 STRING / SYMBOL 类型,用于记录异常的类型(在 *metrics* 中的下标)和异常条件的内容。",
12718
+ "\\(3) 之后两列分别为 INT 类型的异常类型列 type 和 STRING / SYMBOL 类型的异常条件列 metric,用于记录异常的类型(在 *metrics* 中的下标)和异常条件的内容。",
12678
12719
  "",
12679
12720
  ".. _timeColumn_ad:",
12680
12721
  "",
@@ -12877,18 +12918,16 @@
12877
12918
  "",
12878
12919
  "`outputTable` 计算结果的输出表,可以是内存表或分布式表。在使用 ``createAsofJoinEngine`` 函数之前,需要将输出表预先设立为一个空表,并指定各列列名以及数据类型。asof join 引擎会将计算结果注入该表。",
12879
12920
  "",
12880
- "输出表的各列的顺序为:时间列,连接列,计算结果列。",
12881
- "",
12882
- "其中:",
12921
+ "输出表的各列的顺序如下:",
12883
12922
  "",
12884
- "\\(1) 第一列必须是时间类型。",
12923
+ "\\(1) 时间列。其中:",
12885
12924
  "",
12886
12925
  "* 若 *useSystemTime* = true,为 TIMESTAMP 类型;",
12887
12926
  "* 若 *useSystemTime* = false,数据类型与 *timeColumn* 列一致。",
12888
12927
  "",
12889
- "\\(2) 其后为连接列,与 *matchingColumn* 中的列以及其顺序一致,可为多列。",
12928
+ "\\(2) 连接列。与 *matchingColumn* 中的列以及其顺序一致,可为多列。",
12890
12929
  "",
12891
- "\\(3) 最后为计算结果列,可为多列。",
12930
+ "\\(3) 计算结果列。可为多列。",
12892
12931
  "",
12893
12932
  ".. _metrics_aj:",
12894
12933
  "",
@@ -13784,13 +13823,11 @@
13784
13823
  "",
13785
13824
  "`outputTable` 结果的输出表,可以是内存表或者分布式表。使用 ``createDualOwnershipReactiveStateEngine`` 函数之前,需要将输出表预先设立为一个空表,并指定各列列名以及数据类型。",
13786
13825
  "",
13787
- "输出表各列的顺序为:分组列,计算结果列。",
13826
+ "输出表各列的顺序如下:",
13788
13827
  "",
13789
- "其中:",
13828
+ "(1) 分组列。输出表的前几列为 keyColumn1 和 keyColumn2 的公共列,然后依次为 keyColumn1 的非公共列和 keyColumn2 的非公共列。",
13790
13829
  "",
13791
- "(1) 输出表的前几列为 keyColumn1 和 keyColumn2 的公共列,然后依次为 keyColumn1 的非公共列和 keyColumn2 的非公共列。",
13792
- "",
13793
- "(2) 其后为 metrics1 的计算结果列,metrics2 的计算结果列。"
13830
+ "(2) 计算结果列。包含 metrics1 的计算结果列,metrics2 的计算结果列。"
13794
13831
  ]
13795
13832
  }
13796
13833
  ]
@@ -14227,9 +14264,9 @@
14227
14264
  {
14228
14265
  "type": "text",
14229
14266
  "value": [
14230
- "创建流数据左半等值连接引擎,返回一个左、右表关联后的表对象。对于左表每一条数据,都去匹配右表相同 :ref:`matchingColumn <matchingColumnLSJ>` 的数据,若无匹配的右表记录,则不输出。若匹配多条右表记录,则由 :ref:`updateRightTable <updateRightTableLSJ>` 参数决定连接右表的第一条记录还是最后一条记录。",
14267
+ "创建流数据左半等值连接引擎,返回一个左、右表关联后的表对象。对于左表每一条数据,都去匹配右表相同 :ref:`matchingColumn <matchingColumnLSJ>` 的数据,若无匹配的右表记录,则不输出。若匹配多条右表记录,则由 :ref:`updateRightTable <updateRightTableLSJ>` 参数决定连接右表的第一条记录还是最新一条记录。",
14231
14268
  "",
14232
- "注意:右表根据 :ref:`updateRightTable <updateRightTableLSJ>` 指定的策略,同一 :ref:`matchingColumn <matchingColumnLSJ>` 只保留第一条或者最后一条数据,历史数据不再进行垃圾回收,因此用户需要控制 :ref:`matchingColumn <matchingColumnLSJ>` 的唯一值数量,否则可能会导致内存溢出。",
14269
+ "注意:右表根据 :ref:`updateRightTable <updateRightTableLSJ>` 指定的策略,同一 :ref:`matchingColumn <matchingColumnLSJ>` 只保留第一条或者最新一条数据,历史数据不再进行垃圾回收,因此用户需要控制 :ref:`matchingColumn <matchingColumnLSJ>` 的唯一值数量,否则可能会导致内存溢出。",
14233
14270
  "",
14234
14271
  "更多流数据引擎的应用场景说明可以参考 :doc:`../../SeriesOfFunctions/streamingEngine`。"
14235
14272
  ]
@@ -14251,17 +14288,15 @@
14251
14288
  "",
14252
14289
  "`outputTable` 为计算结果的输出表。在使用 ``createLeftSemiJoinEngine`` 函数之前,需要将输出表预先设立为一个空表,并指定各列列名以及数据类型。",
14253
14290
  "",
14254
- "输出表的各列的顺序为:连接列,计算结果列。",
14255
- "",
14256
- "其中:",
14291
+ "输出表的各列的顺序如下:",
14257
14292
  "",
14258
- "\\(1) 前几列与 *matchingColumn* 中的列以及其顺序一致,可为多列。",
14293
+ "\\(1) 连接列。与 *matchingColumn* 中的列以及其顺序一致,可为多列。",
14259
14294
  "",
14260
- "\\(2) 最后为计算结果列,可为多列。",
14295
+ "\\(2) 计算结果列。可为多列。",
14261
14296
  "",
14262
14297
  "`metrics` 以元代码的格式表示计算指标,支持输入元组。有关元代码的更多信息可参考 :doc:`/Objects/Metaprogramming`。",
14263
14298
  "",
14264
- "* 计算指标可以是一个或多个表达式、系统内置或用户自定义函数,但不能是聚合函数。",
14299
+ "* 计算指标可以是一个或多个表达式、系统内置或用户自定义函数。",
14265
14300
  "* *metrics* 内支持调用具有多个返回值的函数,且必须指定列名,例如 <func(price) as \\`col1\\`col2>。",
14266
14301
  "",
14267
14302
  "若在 *metrics* 指定了 *leftTable* 和 *rightTable* 中具有相同名称的列,默认取左表的列,可以通过 \"tableName.colName\" 指定该列来自哪个表。",
@@ -14282,7 +14317,7 @@
14282
14317
  "",
14283
14318
  ".. _updateRightTableLSJ:",
14284
14319
  "",
14285
- "`updateRightTable` 可选参数,布尔值,默认为 false,表示右表存在多条相同 matchingColumn 的记录时,是保留第一条(false)还是最后一条记录(true)。"
14320
+ "`updateRightTable` 可选参数,布尔值,默认为 false,表示右表存在多条相同 matchingColumn 的记录时,是保留第一条(false)还是最新一条记录(true)。"
14286
14321
  ]
14287
14322
  }
14288
14323
  ]
@@ -14410,13 +14445,11 @@
14410
14445
  "",
14411
14446
  "`outputTable` 必选参数,为计算结果的输出表。在使用 ``createLookupJoinEngine`` 函数之前,需要将输出表预先设立为一个空表,并指定各列列名以及数据类型。",
14412
14447
  "",
14413
- "输出表的各列的顺序为:连接列,计算结果列。",
14448
+ "输出表的各列的顺序如下:",
14414
14449
  "",
14415
- "其中:",
14416
- "",
14417
- "\\(1) 前几列与 *matchingColumn* 中的列以及其顺序一致,可为多列。",
14450
+ "\\(1) 连接列。与 *matchingColumn* 中的列以及其顺序一致,可为多列。",
14418
14451
  "",
14419
- "\\(2) 最后为计算结果列,可为多列。",
14452
+ "\\(2) 计算结果列。可为多列。",
14420
14453
  "",
14421
14454
  "`metrics` 以元代码的格式表示计算指标,支持输入元组。有关元代码的更多信息可参考 :doc:`/Objects/Metaprogramming`。",
14422
14455
  "",
@@ -14702,7 +14735,12 @@
14702
14735
  "",
14703
14736
  "如果参数 *table* 是一系列表,则创建一个分区的内存表。参数 *table* 中表的数量与数据库中分区的数量相同。",
14704
14737
  "",
14705
- "注意,创建分区表时只会使用参数 *table* 的结构,并不会把 *table* 中的数据插入到新的分区表中。"
14738
+ "注意:",
14739
+ "",
14740
+ "* 创建分区表时只会使用参数 *table* 的结构,并不会把 *table* 中的数据插入到新的分区表中。",
14741
+ "* 允许集群每个节点创建的不同的分布式分区表句柄(包含临时句柄)上限为 8192。临时句柄的说明请参考注释。",
14742
+ "",
14743
+ "注释:调用函数 createPartitionedTable 创建分布式分区表时,若用户没有创建一个句柄变量来接收函数的返回值,则每个数据库会创建一个临时句柄。若在同一数据库下多次创表,则该数据库的临时句柄会被覆盖,即最多允许同时创建 8192 个包含分布式分区表的数据库。"
14706
14744
  ]
14707
14745
  }
14708
14746
  ]
@@ -14915,7 +14953,7 @@
14915
14953
  {
14916
14954
  "type": "text",
14917
14955
  "value": [
14918
- "createReactiveStateEngine(name, metrics, dummyTable, outputTable, keyColumn, [filter], [snapshotDir], [snapshotIntervalInMsgCount], [keepOrder], [keyPurgeFilter], [keyPurgeFreqInSecond=0], [raftGroup])"
14956
+ "createReactiveStateEngine(name, metrics, dummyTable, outputTable, keyColumn, [filter], [snapshotDir], [snapshotIntervalInMsgCount], [keepOrder], [keyPurgeFilter], [keyPurgeFreqInSecond=0], [raftGroup], [outputElapsedMicroseconds=false])"
14919
14957
  ]
14920
14958
  }
14921
14959
  ]
@@ -14931,7 +14969,7 @@
14931
14969
  "",
14932
14970
  "下列状态函数在 DolphinDB 的响应式状态引擎中的实现均得到了优化。目前,状态引擎不允许使用未经优化的状态函数,且需避免使用聚合函数。",
14933
14971
  "",
14934
- "* 累计窗口函数::doc:`../c/cumavg`, :doc:`../c/cumsum`, :doc:`../c/cumprod`, :doc:`../c/cumcount`, :doc:`../c/cummin`, :doc:`../c/cummax`, :doc:`../c/cumvar`, :doc:`../c/cumvarp`, :doc:`../c/cumstd`, :doc:`../c/cumstdp`, :doc:`../c/cumcorr`, :doc:`../c/cumcovar`, :doc:`../c/cumbeta`, :doc:`../c/cumwsum`, :doc:`../c/cumwavg`, :doc:`../c/cumfirstNot`, :doc:`../c/cumlastNot`, :doc:`../c/cummed`, :doc:`../c/cumpercentile`, :doc:`../c/cumPositiveStreak`",
14972
+ "* 累计窗口函数::doc:`../c/cumavg`, :doc:`../c/cumsum`, :doc:`../c/cumprod`, :doc:`../c/cumcount`, :doc:`../c/cummin`, :doc:`../c/cummax`, :doc:`../c/cumvar`, :doc:`../c/cumvarp`, :doc:`../c/cumstd`, :doc:`../c/cumstdp`, :doc:`../c/cumcorr`, :doc:`../c/cumcovar`, :doc:`../c/cumbeta`, :doc:`../c/cumwsum`, :doc:`../c/cumwavg`, :doc:`../c/cumfirstNot`, :doc:`../c/cumlastNot`, :doc:`../c/cummed`, :doc:`../c/cumpercentile`, :doc:`../c/cumnunique`, :doc:`../c/cumPositiveStreak`",
14935
14973
  "* 滑动窗口函数::doc:`../e/ema`, :doc:`../m/mavg`, :doc:`../m/msum`, :doc:`../m/mcount`, :doc:`../m/mprod`, :doc:`../m/mvar`, :doc:`../m/mvarp`, :doc:`../m/mstd`, :doc:`../m/mstdp`, :doc:`../m/mskew`, :doc:`../m/mkurtosis`, :doc:`../m/mmin`, :doc:`../m/mmax`, :doc:`../m/mimin`, :doc:`../m/mimax`, :doc:`../m/mmed`, :doc:`../m/mpercentile`, :doc:`../m/mrank`, :doc:`../m/mcorr`, :doc:`../m/mcovar`, :doc:`../m/mbeta`, :doc:`../m/mwsum`, :doc:`../m/mwavg`, :doc:`../m/mmad`, :doc:`../m/mfirst`, :doc:`../m/mlast`, :doc:`../m/mslr`, :doc:`../t/tmove`, :doc:`../t/tmfirst`, :doc:`../t/tmlast`, :doc:`../t/tmsum`, :doc:`../t/tmavg`, :doc:`../t/tmcount`, :doc:`../t/tmvar`, :doc:`../t/tmvarp`, :doc:`../t/tmstd`, :doc:`../t/tmstdp`, :doc:`../t/tmprod`, :doc:`../t/tmskew`, :doc:`../t/tmkurtosis`, :doc:`../t/tmmin`, :doc:`../t/tmmax`, :doc:`../t/tmmed`, :doc:`../t/tmpercentile`, :doc:`../t/tmrank`, :doc:`../t/tmcovar`, :doc:`../t/tmbeta`, :doc:`../t/tmcorr`, :doc:`../t/tmwavg`, :doc:`../t/tmwsum`, :doc:`/Functionalprogramming/TemplateFunctions/tmoving`, :doc:`/Functionalprogramming/TemplateFunctions/moving`, :doc:`../s/sma`, :doc:`../w/wma`, :doc:`../d/dema`, :doc:`../t/tema`, :doc:`../t/trima`, :doc:`../l/linearTimeTrend`, :doc:`/Functionalprogramming/TemplateFunctions/talib`, :doc:`../t/t3`, :doc:`../m/ma`, :doc:`../m/mmaxPositiveStreak`",
14936
14974
  "* 序列相关函数::doc:`../d/deltas`, :doc:`../r/ratios`, :doc:`../f/ffill`, :doc:`../m/move`, :doc:`../p/prev`, :doc:`../i/iterate`, :doc:`../e/ewmMean`, :doc:`../e/ewmVar`, :doc:`../e/ewmStd`, :doc:`../e/ewmCov`, :doc:`../e/ewmCorr`, :doc:`../p/prevState`",
14937
14975
  "* topN相关函数::doc:`../m/msumTopN`, :doc:`../m/mavgTopN`, :doc:`../m/mstdpTopN`, :doc:`../m/mstdTopN`, :doc:`../m/mvarpTopN`, :doc:`../m/mvarTopN`, :doc:`../m/mcorrTopN`, :doc:`../m/mbetaTopN`, :doc:`../m/mcovarTopN`, :doc:`../m/mwsumTopN`",
@@ -14955,7 +14993,7 @@
14955
14993
  {
14956
14994
  "type": "text",
14957
14995
  "value": [
14958
- "每注入一条数据都会触发一次计算,产生一条结果。用户可以通过设置参数 :ref:`filter <filter_rs>` 过滤计算结果后输出。 若指定了 :ref:`keyColumn <keyColumn_rs>` 进行分组,则计算将在组内进行。",
14996
+ "每注入一条数据都会计算并产生一条结果。用户可以通过设置参数 :ref:`filter <filter_rs>` 过滤计算结果后输出。 若指定了 :ref:`keyColumn <keyColumn_rs>` 进行分组,则计算将在组内进行。",
14959
14997
  "",
14960
14998
  "注意:状态引擎的输出结果可能和输入顺序不一致,建议配置参数 :ref:`keepOrder <keepOrder_rs>` = true,保持输出结果的有序性。"
14961
14999
  ]
@@ -15010,13 +15048,13 @@
15010
15048
  "",
15011
15049
  "`outputTable` 计算结果的输出表,可以是内存表或分布式表。使用 ``createReactiveStateEngine`` 函数之前,需要将输出表预先设立为一个空表,并指定各列列名以及数据类型。响应式状态引擎会将计算结果注入该表。",
15012
15050
  "",
15013
- "输出表的各列的顺序为:分组列,计算结果列。",
15051
+ "输出表的各列的顺序如下:",
15014
15052
  "",
15015
- "其中:",
15053
+ "\\(1) 分组列。根据 *keyColumn* 的设置,输出表的前几列必须和 *keyColumn* 设置的列及其顺序保持一致。",
15016
15054
  "",
15017
- "\\(1) 根据 *keyColumn* 的设置,输出表的前几列必须和 *keyColumn* 设置的列及其顺序保持一致。",
15055
+ "\\(2) 耗时列。若指定 *outputElapsedMicroseconds* = true,则需要增加一个 LONG 类型和一个 INT 类型的列,分别用于存储引擎内部每个 batch 的数据耗时(单位:微秒)和记录数。",
15018
15056
  "",
15019
- "\\(2) 其后为计算结果列,可为多列。",
15057
+ "\\(3) 计算结果列。可为多列。",
15020
15058
  "",
15021
15059
  ".. _keyColumn_rs:",
15022
15060
  "",
@@ -15081,7 +15119,13 @@
15081
15119
  ".. _raftGroup_rs:",
15082
15120
  "",
15083
15121
  "`raftGroup` 是流数据高可用订阅端 raft 组的 ID (大于1的整数,由流数据高可用相关的配置项 *streamingRaftGroups* 指定)。设置该参数表示开启计算引擎高可用。在 leader 节点创建流数据引擎后,会同步在 follower 节点创建该引擎。每次保存的 snapshot 也会同步到 follower。当 raft 组的 leader 节点宕机时,会自动切换新 leader 节点重新订阅流数据表。请注意,若要指定 *raftGroup*,必须同时指定 *snapshotDir*。",
15084
- ""
15122
+ "",
15123
+ ".. versionadded:: 1.30.21",
15124
+ " 参数 *outputElapsedMicroseconds*",
15125
+ "",
15126
+ "若同时有一批数据注入响应式状态引擎,则引擎内部数据是分批进行计算的,每个批次的数据称为一个 batch,每个 batch 包含记录数由系统决定。",
15127
+ "",
15128
+ "`outputElapsedMicroseconds` 布尔值,表示是否输出每个 batch 中数据从注入引擎到计算输出的总耗时,以及每个 batch 包含的总记录数,默认为 false。指定参数 *outputElapsedMicroseconds* 后,在定义 *outputTables* 时需要在 keyColumn 列后增加两列,详见 *outputTable* 参数说明。"
15085
15129
  ]
15086
15130
  }
15087
15131
  ]
@@ -15588,20 +15632,18 @@
15588
15632
  "",
15589
15633
  "`outputTable` 计算结果的输出表,可以是内存表或者分布式表。在使用 ``createTimeSeriesEngine`` 函数之前,需要将输出表预先设立为一个空表,并指定各列列名以及数据类型。时间序列引擎会将计算结果插入该表。",
15590
15634
  "",
15591
- "输出表的各列的顺序为:时间列,分组列,计算结果列。",
15635
+ "输出表的列顺序如下:",
15592
15636
  "",
15593
- "其中:",
15637
+ "\\(1) 时间列。其中:",
15594
15638
  "",
15595
- "\\(1) 第一列必须是时间类型。",
15639
+ "* 若 *useSystemTime* = true,为 TIMESTAMP 类型;反之,该列数据类型与 *timeColumn* 列一致。",
15640
+ "* 若 *useWindowStartTime* = true,显示时间为数据窗口起始时间;反之,显示时间为数据窗口终止时间。",
15596
15641
  "",
15597
- "* 若 *useSystemTime* = true,为 TIMESTAMP 类型;",
15598
- "* 若 *useSystemTime* = false,数据类型与 *timeColumn* 列一致。",
15599
- "* 若 *useWindowStartTime* = true,显示时间为数据窗口起始时间。",
15600
- "* 若 *useWindowStartTime* = false,显示时间为数据窗口终止时间。",
15642
+ "\\(2) 分组列。如果 *keyColumn* 不为空,则其后几列和 *keyColumn* 设置的列及其顺序保持一致。",
15601
15643
  "",
15602
- "\\(2) 如果 *keyColumn* 不为空,则其后几列和 *keyColumn* 设置的列及其顺序保持一致。",
15644
+ "\\(3) 耗时列。如果指定 *outputElapsedMicroseconds* = true,则指定一个 LONG 类型的列用于存储耗时(单位:微秒)。",
15603
15645
  "",
15604
- "\\(3) 最后为计算结果列,可为多列。",
15646
+ "\\(4) 计算结果列。可为多列。",
15605
15647
  "",
15606
15648
  ".. _timeColumn_ts:",
15607
15649
  "",
@@ -15733,6 +15775,11 @@
15733
15775
  "",
15734
15776
  "* closed = 'left': 窗口左闭右开。",
15735
15777
  "* closed = 'right': 窗口左开右闭。",
15778
+ "",
15779
+ ".. versionadded:: 1.30.21",
15780
+ " 参数 *outputElapsedMicroseconds*",
15781
+ "",
15782
+ "`outputElapsedMicroseconds` 布尔值,表示是否输出每个窗口数据注入到计算完成的耗时(若指定了 *keyColumn* 则包含数据分组的耗时),默认为 false。指定参数 outputElapsedMicroseconds 后,在定义 outputTables 时需要在时间列和分组列后增加一个 LONG 类型的列,详见 *outputTable* 参数说明。",
15736
15783
  ""
15737
15784
  ]
15738
15785
  }
@@ -16269,16 +16316,16 @@
16269
16316
  "",
16270
16317
  "`outputTable` 必选参数,为计算结果的输出表。window join 引擎会将计算结果插入该表。",
16271
16318
  "",
16272
- "输出表各列的顺序为:时间列,连接列,计算结果列:",
16319
+ "输出表各列的顺序如下:",
16273
16320
  "",
16274
- "\\(1) 第一列必须是时间类型。",
16321
+ "\\(1) 时间列。其中:",
16275
16322
  "",
16276
16323
  "* 若 *useSystemTime* = true,为 TIMESTAMP 类型;",
16277
16324
  "* 若 *useSystemTime* = false,数据类型与 *timeColumn* 列一致。",
16278
16325
  "",
16279
- "\\(2) 其后为连接列,与 *matchingColumn* 中的列以及其顺序一致,可为多列。",
16326
+ "\\(2) 连接列。与 *matchingColumn* 中的列以及其顺序一致,可为多列。",
16280
16327
  "",
16281
- "\\(3) 最后为计算结果列,可为多列。",
16328
+ "\\(3) 计算结果列。可为多列。",
16282
16329
  "",
16283
16330
  "`window` 必选参数,表示滑动窗口区间的整型或 DURATION 数据对,其中左右边界都包含在内。",
16284
16331
  "",
@@ -17840,7 +17887,11 @@
17840
17887
  "",
17841
17888
  "`ignoreNA` 是一个布尔值,表示是否忽略 NULL 值。true 表示忽略 NULL 值(默认值),false 表示 NULL 值参与排名,此时 NULL 值为最小值。",
17842
17889
  "",
17843
- "`tiesMethod` 是一个字符串,表示窗口内若存在重复值时,排名如何选取。'min' 表示取最小排名,'max' 表示取最大排名,'average' 表示取排名的均值。",
17890
+ "`tiesMethod` 是一个字符串,表示窗口内若存在重复值时,排名如何选取。",
17891
+ "",
17892
+ "* 'min'表示取最小排名。",
17893
+ "* 'max'表示取最大排名。",
17894
+ "* 'average'表示取排名的均值。",
17844
17895
  "",
17845
17896
  ".. versionadded:: 1.30.14",
17846
17897
  " 参数 *percent*",
@@ -18860,11 +18911,11 @@
18860
18911
  {
18861
18912
  "type": "text",
18862
18913
  "value": [
18863
- "`X` 是向量。",
18864
- "",
18865
- "`size` 是整型标量,必须满足2<=size<size(X)条件。cut函数把X分成一系列的向量,每一个向量的长度为size。",
18914
+ "`X` 是标量/向量。",
18915
+ " ",
18916
+ "`size` 是整型标量,必须满足 0<=size<size(X) 条件。",
18866
18917
  "",
18867
- "`cutPositions` 是整型向量,cut函数按照它指定的索引,把X分成一系列向量。结果中的每个向量的起始位置由cutPositions指定。cutPositions需要预先排序。"
18918
+ "`cutPositions` 是单增的整型向量,用于指定切分点的索引。"
18868
18919
  ]
18869
18920
  }
18870
18921
  ]
@@ -18876,7 +18927,12 @@
18876
18927
  {
18877
18928
  "type": "text",
18878
18929
  "value": [
18879
- "将一个向量分为一系列向量。关于该函数的逆操作,参见 :doc:`../f/flatten` 函数。"
18930
+ "将 X 分为一系列标量或向量,并返回其组成的 tuple。",
18931
+ "",
18932
+ "* 若第二个参数为 size,cut 函数把 X 分成一系列长度为 size 的标量(size=1时)或向量(size>1时)。",
18933
+ "* 若第二个参数为 cutPositions,cut 函数先根据 cutPositions 将 X 分段,然后返回每段子向量组成的元组。",
18934
+ "",
18935
+ "关于该函数的逆操作,参见 :doc:`../f/flatten` 函数。"
18880
18936
  ]
18881
18937
  }
18882
18938
  ]
@@ -23657,7 +23713,10 @@
23657
23713
  "value": [
23658
23714
  "`dbHandle` 分布式数据库的句柄。",
23659
23715
  "",
23660
- "`partitionPaths` 可为以 \"/\" 开头的字符串或这些字符串组成的元组,表示数据库目录下单个或多个分区的路径。请注意对组合分区,路径必须包括所有层次分区。*partitionPaths* 也可以是一个过滤条件或者多个过滤条件组成的元组,其中每个过滤条件是表示一个或多个分区的一个值或向量(向量中每个值代表一个分区)。多个过滤条件组成的元组是针对组合分区,每层分区对应过滤条件元组的一个元素。如果某层分区不需要过滤,那么相应的过滤条件为空。",
23716
+ "`partitionPaths` 有两种指定模式:",
23717
+ "",
23718
+ "* 指定路径:以 \"/\" 开头的字符串或这些字符串组成的元组,表示数据库目录下单个或多个分区的路径。请注意对组合分区,路径必须包括所有层次分区。",
23719
+ "* 指定条件:以分区列的一个或多个值组成的标量或向量作为过滤条件,系统会找到并删除这些值所在的分区。对于组合分区,partitionPaths 是由每层分区的过滤条件组成的元组,如果某层分区不需要过滤,那么相应的过滤条件需置为空。",
23661
23720
  "",
23662
23721
  "`tableName` 一个字符串,表示表名。若分区粒度为数据库级(:doc:`/FunctionsandCommands/FunctionReferences/d/database`: *chunkGranularity* = 'DATABASE'),可以不指定 *tableName*,否则必须指定该参数。",
23663
23722
  "",
@@ -25076,13 +25135,27 @@
25076
25135
  {
25077
25136
  "type": "text",
25078
25137
  "value": [
25079
- "ema(X, window)",
25138
+ "ema(X, window, warmup=false)",
25080
25139
  "",
25081
25140
  "TA-lib 系列函数参数说明和窗口计算规则请参考: :doc:`/FunctionsandCommands/SeriesOfFunctions/TAlib`"
25082
25141
  ]
25083
25142
  }
25084
25143
  ]
25085
25144
  },
25145
+ {
25146
+ "title": "参数",
25147
+ "type": "parameters",
25148
+ "children": [
25149
+ {
25150
+ "type": "text",
25151
+ "value": [
25152
+ ".. versionadded:: 1.30.21",
25153
+ "",
25154
+ "`warmup` 布尔值,默认为 false,即计算结果的前 window-1 个元素为空值。若为 true,则结果的前 window-1 元素将由详情给出的公式计算得出。"
25155
+ ]
25156
+ }
25157
+ ]
25158
+ },
25086
25159
  {
25087
25160
  "title": "详情",
25088
25161
  "type": "detail",
@@ -25094,9 +25167,15 @@
25094
25167
  "",
25095
25168
  "其计算公式为:",
25096
25169
  "",
25097
- ":math:`EMA(X)_k = \\displaystyle{\\frac{2}{n+1}}*X_k + \\Bigl(1-\\displaystyle{\\frac{2}{n+1}}\\Bigr)*EMA(X)_{k-1}`",
25170
+ "* warmup=false:",
25171
+ "",
25172
+ ":math:`EMA_k = \\displaystyle{\\frac{2}{n+1}}*X_k + \\Bigl(1-\\displaystyle{\\frac{2}{n+1}}\\Bigr)*EMA_{k-1}`",
25173
+ "",
25174
+ "* warmup=true:",
25098
25175
  "",
25099
- "其中::math:`EMA(X)_k` 为第 :math:`k` 个指数移动平均值,:math:`n` 为移动窗口长度,:math:`X_k` 为向量 :math:`X` 中第 :math:`k` 个元素。"
25176
+ ":math:`EMA_k=\\begin{cases}X_0,\\quad\\text{k=0}\\\\\\frac{2}{size(X)+1}*X_k+(1-\\frac{2}{size(X)+1})*EMA_{k-1}, \\quad\\text{size(X)<n}\\\\\\frac{2}{n+1}*X_k+(1-\\frac{2}{n+1})*EMA_{k-1}, \\quad size(X)\\geq n\\end{cases}`",
25177
+ "",
25178
+ "其中::math:`EMA_k` 为第 :math:`k` 个指数移动平均值,:math:`n` 为移动窗口长度,:math:`X_k` 为向量 :math:`X` 中第 :math:`k` 个元素。"
25100
25179
  ]
25101
25180
  }
25102
25181
  ]
@@ -25114,6 +25193,9 @@
25114
25193
  " $ ema(x,3);",
25115
25194
  " [,,12.3,12.55,12.225,11.9125,11.55625]",
25116
25195
  "",
25196
+ " $ ema(x,3, warmup=true)",
25197
+ " [12.1,12.2,12.4667,12.6333,12.2667,11.9333,11.5667]",
25198
+ "",
25117
25199
  " $ x=matrix(12.1 12.2 12.6 12.8 11.9 11.6 11.2, 14 15 18 19 21 12 10)",
25118
25200
  " $ ema(x,3);",
25119
25201
  ""
@@ -30854,7 +30936,7 @@
30854
30936
  "value": [
30855
30937
  "查看指定用户的 backup/restore 任务。返回一个表,每一行为一个任务的信息。包含以下字段:",
30856
30938
  "",
30857
- "* usrName:用户名。",
30939
+ "* userName:用户名。",
30858
30940
  "* type:备份或恢复的类型。",
30859
30941
  "* BACKUP_BY_SQL/RESTORE_BY_SQL: 表示使用 SQL 元代码方式的备份/恢复。",
30860
30942
  "* BACKUP_BY_COPY_FILE/RESTORE_BY_COPY_FILE:表示使用拷贝文件方式的备份/恢复。",
@@ -46705,6 +46787,45 @@
46705
46787
  "\t([,,2.666666666666666,3,5.166666666666667,7,8,9,9.5,12,14.833333333333333,13,12],[,,1,2,1.5,1,1,1,2.5,1,-1.5,-1,-1])",
46706
46788
  "\t"
46707
46789
  ]
46790
+ },
46791
+ {
46792
+ "type": "code",
46793
+ "language": "console",
46794
+ "value": [
46795
+ ""
46796
+ ]
46797
+ },
46798
+ {
46799
+ "type": "text",
46800
+ "value": [
46801
+ "\t$ n = 10",
46802
+ "\t$ t = table(09:00:00 + 1..n as time, rand(`A`B, n) as sym, rand(100.0, n) as val1, rand(1000..2000, n) as val2)",
46803
+ "\t$ select time, sym, linearTimeTrend(val1, 3) as `alpha`beta from t",
46804
+ "",
46805
+ "+----------+-----+---------+----------+",
46806
+ "| time | sym | alpha | beta |",
46807
+ "+==========+=====+=========+==========+",
46808
+ "| 09:00:01 | B | | |",
46809
+ "+----------+-----+---------+----------+",
46810
+ "| 09:00:02 | A | | |",
46811
+ "+----------+-----+---------+----------+",
46812
+ "| 09:00:03 | A | 85.0844 | -30.0688 |",
46813
+ "+----------+-----+---------+----------+",
46814
+ "| 09:00:04 | B | 49.3461 | 7.3621 |",
46815
+ "+----------+-----+---------+----------+",
46816
+ "| 09:00:05 | B | 30.4248 | 28.3589 |",
46817
+ "+----------+-----+---------+----------+",
46818
+ "| 09:00:06 | A | 83.106 | -7.7515 |",
46819
+ "+----------+-----+---------+----------+",
46820
+ "| 09:00:07 | B | 78.4412 | -17.7575 |",
46821
+ "+----------+-----+---------+----------+",
46822
+ "| 09:00:08 | A | 56.8575 | 4.4732 |",
46823
+ "+----------+-----+---------+----------+",
46824
+ "| 09:00:09 | A | 53.8492 | -6.0653 |",
46825
+ "+----------+-----+---------+----------+",
46826
+ "| 09:00:10 | A | 61.7888 | -4.5586 |",
46827
+ "+----------+-----+---------+----------+"
46828
+ ]
46708
46829
  }
46709
46830
  ]
46710
46831
  }
@@ -59685,7 +59806,7 @@
59685
59806
  "",
59686
59807
  "`colTypes` 是向量,表示列的数据类型。",
59687
59808
  "",
59688
- "`path` 是一个字符串,表示保存表的路径。",
59809
+ "`path` 是一个字符串,表示保存表的路径。只能指定磁盘路径,不支持指定为分布式数据库路径。",
59689
59810
  "",
59690
59811
  "`tableName` 是一个字符串,表示保存到磁盘上的表名。"
59691
59812
  ]
@@ -59699,9 +59820,11 @@
59699
59820
  {
59700
59821
  "type": "text",
59701
59822
  "value": [
59702
- "创建一个多版本并发控制的表。我们可以对该表进行并发读写。多版本并发控制的表适用于频繁读写但很少更新和删除记录的场景。",
59823
+ "创建一个多版本并发控制的表(mvcc table)。我们可以对该表进行并发读写。多版本并发控制的表适用于频繁读写但很少更新和删除记录的场景。",
59703
59824
  "",
59704
- "如果指定了 *path* 和 *tableName* 参数,会把表持久化到硬盘上。通过 :doc:`../l/loadMvccTable` 函数,可以把磁盘上的表加载到内存中。"
59825
+ "如果指定了 *path* 和 *tableName* 参数,会把表持久化到硬盘上。通过 :doc:`../l/loadMvccTable` 函数,可以把磁盘上的表加载到内存中。",
59826
+ "",
59827
+ "注:mvcc table 不支持 addColumn、dropColumns!、reorderColumns!、upsert!、drop、erase! 等函数。"
59705
59828
  ]
59706
59829
  }
59707
59830
  ]
@@ -67394,7 +67517,7 @@
67394
67517
  {
67395
67518
  "type": "text",
67396
67519
  "value": [
67397
- "rank(X, [ascending=true], [groupNum], [ignoreNA=true], [tiesMethod='min'], [percent=false])"
67520
+ "rank(X, [ascending=true], [groupNum], [ignoreNA=true], [tiesMethod='min'], [percent=false], [precision])"
67398
67521
  ]
67399
67522
  }
67400
67523
  ]
@@ -67414,12 +67537,27 @@
67414
67537
  "",
67415
67538
  "`ignoreNA` 是一个布尔值,表示是否忽略 NULL 值,默认值为 true。false 表示 NULL 作为最小值参与排名。",
67416
67539
  "",
67417
- "`tiesMethod` 是一个字符串,表示如何对相同元素进行排名。'min'表示所有相同元素的排名取最小排名,'max'表示取最大排名,'average'表示取排名的均值。",
67540
+ ".. versionadded:: 1.30.21",
67541
+ " 参数 *tiesMethod* 支持 'first'",
67542
+ "",
67543
+ "`tiesMethod` 是一个字符串,表示如何对具有相同值的元素进行排名。",
67544
+ "",
67545
+ "* 'min'表示取最小排名。",
67546
+ "* 'max'表示取最大排名。",
67547
+ "* 'average'表示取排名的均值。",
67548
+ "* 'first' 表示按照原数据的顺序排名。",
67418
67549
  "",
67419
67550
  ".. versionadded:: 1.30.14",
67420
67551
  " 参数 *percent*",
67421
67552
  "",
67422
- "`percent` 是一个布尔值,表示是否以百分比形式显示返回的排名。"
67553
+ "`percent` 是一个布尔值,表示是否以百分比形式显示返回的排名。",
67554
+ "",
67555
+ ".. versionadded:: 1.30.21",
67556
+ " 参数 *precision*",
67557
+ " ",
67558
+ "`precision` 是一个 [1, 15] 范围内的整数,用于设置参与排序的值的精度。若两个值之差的绝对值 <= 10^(-precision) ,则认为两值相等。",
67559
+ "",
67560
+ "注意:指定 *precision* 参数后,*X* 只能是数值型对象。且 *tiesMethod* 不能指定为 'first'。"
67423
67561
  ]
67424
67562
  }
67425
67563
  ]
@@ -67478,6 +67616,9 @@
67478
67616
  " $ rank(X=1 2 2 3, tiesMethod='average');",
67479
67617
  " [0,1.5,1.5,3]",
67480
67618
  "",
67619
+ " $ rank(X=1 2 2 3, tiesMethod='first');",
67620
+ " [0,1,2,3]",
67621
+ "",
67481
67622
  " $ rank(1 NULL NULL 3);",
67482
67623
  " [0,,,1]",
67483
67624
  "",
@@ -69400,6 +69541,18 @@
69400
69541
  }
69401
69542
  ]
69402
69543
  },
69544
+ {
69545
+ "title": "详情",
69546
+ "type": "detail",
69547
+ "children": [
69548
+ {
69549
+ "type": "text",
69550
+ "value": [
69551
+ "将脚本或函数传输到远程数据库执行。"
69552
+ ]
69553
+ }
69554
+ ]
69555
+ },
69403
69556
  {
69404
69557
  "title": "例子",
69405
69558
  "type": "example",
@@ -74787,7 +74940,7 @@
74787
74940
  {
74788
74941
  "type": "text",
74789
74942
  "value": [
74790
- "rowRank(X, [ascending=true], [groupNum], [ignoreNA=true], [tiesMethod='min'], [percent=false])",
74943
+ "rowRank(X, [ascending=true], [groupNum], [ignoreNA=true], [tiesMethod='min'], [percent=false], [precision])",
74791
74944
  "",
74792
74945
  "row 系列函数通用参数说明和计算规则请参考: :doc:`/FunctionsandCommands/SeriesOfFunctions/rowFunctions`"
74793
74946
  ]
@@ -74807,12 +74960,27 @@
74807
74960
  "",
74808
74961
  "`ignoreNA` 是一个布尔值,表示是否忽略 NULL 值。true 表示忽略 NULL 值,false 表示 NULL 值参与排名。默认值为 true。它是一个可选参数。NULL 值参与排序时,NULL 值为最小值。",
74809
74962
  "",
74810
- "`tiesMethod` 是一个字符串,表示如何处理多个元素相等时的排序。'min'代表元素相等时所有排名取元素的最小排名,'max'代表此时取最大排名,'average'代表取排名的均值。",
74963
+ ".. versionadded:: 1.30.21",
74964
+ " 参数 *tiesMethod* 支持 'first'",
74965
+ "",
74966
+ "`tiesMethod` 是一个字符串,表示如何对具有相同值的元素进行排名。",
74967
+ "",
74968
+ "* 'min'表示取最小排名。",
74969
+ "* 'max'表示取最大排名。",
74970
+ "* 'average'表示取排名的均值。",
74971
+ "* 'first' 表示按照原数据的顺序排名。",
74811
74972
  "",
74812
74973
  ".. versionadded:: 1.30.14",
74813
74974
  " 参数 *percent*",
74814
74975
  "",
74815
- "`percent` 是一个布尔值,表示是否以百分比形式显示返回的排名。"
74976
+ "`percent` 是一个布尔值,表示是否以百分比形式显示返回的排名。",
74977
+ "",
74978
+ ".. versionadded:: 1.30.21",
74979
+ " 参数 *precision*",
74980
+ "",
74981
+ "`precision` 是一个 [1, 15] 范围内的整数,用于设置参与排序的值的精度。若两个值之差的绝对值 <= 10^(-precision) ,则认为两值相等。",
74982
+ "",
74983
+ "注意:指定 *precision* 参数后,*X* 只能是数值型对象。且 *tiesMethod* 不能指定为 'first'。"
74816
74984
  ]
74817
74985
  }
74818
74986
  ]
@@ -74957,6 +75125,28 @@
74957
75125
  "2 0 1 3 6 5 8 7 4",
74958
75126
  "8 0 2 4 5 6 4 2 7",
74959
75127
  "== == == == == == == == == ",
75128
+ ""
75129
+ ]
75130
+ },
75131
+ {
75132
+ "type": "code",
75133
+ "language": "console",
75134
+ "value": [
75135
+ "",
75136
+ " $ m.rowRank(ignoreNA=false, tiesMethod='first');",
75137
+ ""
75138
+ ]
75139
+ },
75140
+ {
75141
+ "type": "text",
75142
+ "value": [
75143
+ "+------+------+------+------+------+------+------+------+------+",
75144
+ "| col1 | col2 | col3 | col4 | col5 | col6 | col7 | col8 | col9 |",
75145
+ "+======+======+======+======+======+======+======+======+======+",
75146
+ "| 2 | 0 | 1 | 3 | 6 | 5 | 8 | 7 | 4 |",
75147
+ "+------+------+------+------+------+------+------+------+------+",
75148
+ "| 8 | 0 | 1 | 3 | 5 | 6 | 4 | 2 | 7 |",
75149
+ "+------+------+------+------+------+------+------+------+------+",
74960
75150
  "",
74961
75151
  "相关函数: :doc:`rowDenseRank`, :doc:`../r/rank`",
74962
75152
  "",
@@ -78910,7 +79100,7 @@
78910
79100
  "value": [
78911
79101
  "`table` 是一个分布式表。",
78912
79102
  "",
78913
- "`columnComments` 是一个字典,其中key表示表中的列,value是字符串,表示各列的注释。"
79103
+ "`columnComments` 是一个字典,其中 key 表示表中的列,value 表示各列的注释。"
78914
79104
  ]
78915
79105
  }
78916
79106
  ]
@@ -78922,7 +79112,7 @@
78922
79112
  {
78923
79113
  "type": "text",
78924
79114
  "value": [
78925
- "给分布式表的列添加注释。通过 :doc:`../../FunctionReferences/s/schema` 函数可以查看各列的注释。"
79115
+ "给分布式表或 mvcc 表的列添加注释。通过 :doc:`../../FunctionReferences/s/schema` 函数可以查看各列的注释。"
78926
79116
  ]
78927
79117
  }
78928
79118
  ]
@@ -78975,6 +79165,33 @@
78975
79165
  "vol INT 4 成交量(手)",
78976
79166
  "amount DOUBLE 16 成交额(千元)",
78977
79167
  "========= ========== ======= ===============",
79168
+ ""
79169
+ ]
79170
+ },
79171
+ {
79172
+ "type": "code",
79173
+ "language": "console",
79174
+ "value": [
79175
+ "",
79176
+ " $ id=`XOM`GS`AAPL",
79177
+ " $ x=102.1 33.4 73.6",
79178
+ " $ mt = mvccTable(id, x);",
79179
+ " $ setColumnComment(mt, {id:\"标识符\"})",
79180
+ " $ schema(mt).colDefs",
79181
+ ""
79182
+ ]
79183
+ },
79184
+ {
79185
+ "type": "text",
79186
+ "value": [
79187
+ "+------+------------+---------+-------+---------+",
79188
+ "| name | typeString | typeInt | extra | comment |",
79189
+ "+======+============+=========+=======+=========+",
79190
+ "| id | STRING | 18 | | 标识符 |",
79191
+ "+------+------------+---------+-------+---------+",
79192
+ "| x | DOUBLE | 16 | | |",
79193
+ "+------+------------+---------+-------+---------+",
79194
+ "",
78978
79195
  "",
78979
79196
  ".. meta:: ",
78980
79197
  " :keywords: set"
@@ -79309,7 +79526,7 @@
79309
79526
  "",
79310
79527
  " $ login(`admin,`123456)",
79311
79528
  " $ createUser(`ElonMusk, `superman)",
79312
- " $ setMaxJobPriority(`ElonMusk, 64);",
79529
+ " $ setMaxJobParallelism(`ElonMusk, 64);",
79313
79530
  ""
79314
79531
  ]
79315
79532
  },
@@ -86088,7 +86305,10 @@
86088
86305
  "",
86089
86306
  "`persistOffset` 是一个布尔值,表示是否持久化保存最新一条已经处理的订阅数据的偏移量。持久化保存的偏移量用于重订阅,可通过 :doc:`../g/getTopicProcessedOffset` 函数获取。默认值为 false。",
86090
86307
  "",
86091
- "注意:若要订阅高可用流表,需要设置 `persistOffset` 为 true,以防止订阅端丢失数据。",
86308
+ "注意:",
86309
+ "",
86310
+ " * 若要订阅高可用流表,需要设置 *persistOffset* 为 true,以防止订阅端丢失数据。",
86311
+ " * 设置 *persistOffset* 为 true,且取消订阅(unsubscribeTable)时,设置 *removeOffset* = false,再次订阅时才会从持久化保存的偏移量开始订阅。",
86092
86312
  "",
86093
86313
  ".. versionadded:: 1.30.1",
86094
86314
  " 参数 *timeTrigger*",
@@ -91634,7 +91854,11 @@
91634
91854
  "",
91635
91855
  "`ignoreNA` 是一个布尔值,表示是否忽略 NULL 值。true 表示忽略 NULL 值(默认值),false 表示 NULL 值参与排名,此时 NULL 值为最小值。",
91636
91856
  "",
91637
- "`tiesMethod` 是一个字符串,表示窗口内若存在重复值时,排名如何选取。'min' 表示取最小排名,'max' 表示取最大排名,'average' 表示取排名的均值。",
91857
+ "`tiesMethod` 是一个字符串,表示窗口内若存在重复值时,排名如何选取。",
91858
+ "",
91859
+ "* 'min'表示取最小排名。",
91860
+ "* 'max'表示取最大排名。",
91861
+ "* 'average'表示取排名的均值。",
91638
91862
  "",
91639
91863
  "`percent` 是一个布尔值,表示是否以百分比形式显示返回的排名,默认值为 false。"
91640
91864
  ]
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "dolphindb",
3
3
  "description": "DolphinDB JavaScript API",
4
- "version": "2.0.907",
4
+ "version": "2.0.909",
5
5
  "type": "module",
6
6
  "main": "./index.js",
7
7
  "browser": "./browser.js",
@@ -41,6 +41,6 @@
41
41
  "ipaddr.js": "^2.0.1",
42
42
  "tslib": "^2.4.1",
43
43
  "ws": "^8.11.0",
44
- "xshell": "^0.0.73"
44
+ "xshell": "^0.0.75"
45
45
  }
46
46
  }