Commit Graph

174 Commits

Author SHA1 Message Date
凌涛
51e2e59a97 Merge remote-tracking branch 'origin/master' into feature/function-getClientHttpHeader 2023-10-10 10:56:24 +08:00
凌涛
0d256a381a add doc
fix tests

modify code stype and spelling

add tests and modify code style
2023-09-27 17:03:53 +08:00
zvonand
2ab38761d7 added docs 2023-09-24 13:01:23 +02:00
Robert Schulze
6872e95fb2
Remove prefixes 2023-09-18 17:34:40 +00:00
Robert Schulze
b14e00f966
Docs: Update query cache section on non-deterministic functions
Cf. https://github.com/ClickHouse/support-escalation/issues/963
2023-09-18 14:36:16 +00:00
avogar
67b0993bdf Add documentation 2023-07-27 18:54:41 +00:00
Kruglov Pavel
f87f98fb80
Merge pull request #47409 from Avogar/random-structure
Add new function generateRandomStructure
2023-06-02 18:50:35 +02:00
Robert Schulze
2a4f1c8275
Fix typos 2023-06-02 14:00:57 +00:00
Robert Schulze
bfcd9dde61
Merge remote-tracking branch 'rschu1ze/master' into update-function-docs 2023-06-02 13:41:01 +00:00
Robert Schulze
c37a071004
Merge remote-tracking branch 'rschu1ze/master' into update-function-docs 2023-06-02 13:39:15 +00:00
Robert Schulze
54872f9e7e
Typos: Follow-up to #50476 2023-06-02 13:28:09 +00:00
Robert Schulze
65cc92a78d
CI: Fix aspell on nested docs 2023-06-02 12:24:41 +00:00
Robert Schulze
f6da66cbb8
Fix some typos 2023-06-02 09:41:52 +00:00
avogar
aa7ab1f23b Fix comments 2023-05-15 11:20:03 +00:00
avogar
604bd24995 Refactor, remove no more needed arguments 2023-05-11 11:58:08 +00:00
avogar
9096f62efc Merge branch 'master' of github.com:ClickHouse/ClickHouse into random-structure 2023-05-10 18:46:19 +00:00
Ivan Takarlikov
8873856ce5 Fix some grammar mistakes in documentation, code and tests 2023-05-04 13:35:18 -03:00
Robert Schulze
ec5b421be4
Docs: Sort functions in sidebar 2023-04-19 17:05:55 +00:00
Robert Schulze
c406663442
Docs: Replace annoying three spaces in enumerations by a single space 2023-04-19 15:56:55 +00:00
DanRoscigno
6d8a2bbd48 standardize admonitions 2023-03-27 14:54:05 -04:00
rfraposa
ac5ed141d8 New nav - reverting the revert 2023-03-17 21:45:43 -05:00
Alexander Tokmakov
ec44c8293a
Revert "New navigation" 2023-03-17 21:21:11 +03:00
rfraposa
60fb9973d7 trailing slash fixes 2023-03-16 16:43:01 -05:00
avogar
f9d9b1ee23 Add more options 2023-03-10 16:16:28 +00:00
avogar
66eb06d839 Better 2023-03-09 20:15:32 +00:00
avogar
067bfb8844 Add new function generateRandomStructure 2023-03-09 17:47:14 +00:00
rfraposa
fa6f3dadba Link fixes 2023-03-07 22:52:43 -07:00
rfraposa
3d484e20bc Fixing links 2023-03-06 23:33:56 -07:00
Robert Schulze
18cbc7b511
Docs: catboostEvaluate() is unavailable in Cloud 2023-02-16 19:19:25 +00:00
Robert Schulze
da0002c4c4
Document how the library-bridge port can be changed
Fixes #43605
2022-12-02 10:54:54 +00:00
Alejandro
62ab271b82 fix docs 2022-11-03 09:04:22 +01:00
Alejandro
4e3f43650a Added function to docs 2022-11-03 09:04:22 +01:00
alexeyerm
9abfe76fbb
doc fix fix 2022-10-21 20:08:44 +03:00
alexeyerm
95943dbdda
fix transform() example 2022-10-21 19:44:35 +03:00
Robert Schulze
82139fad0e
Docs: Remove obsolete modelEvaluate() mention 2022-09-28 11:47:16 +00:00
Robert Schulze
60f9f6855d
feat: implement catboost in library-bridge
This commit moves the catboost model evaluation out of the server
process into the library-bridge binary. This serves two goals: On the
one hand, crashes / memory corruptions of the catboost library no longer
affect the server. On the other hand, we can forbid loading dynamic
libraries in the server (catboost was the last consumer of this
functionality), thus improving security.

SQL syntax:

  SELECT
    catboostEvaluate('/path/to/model.bin', FEAT_1, ..., FEAT_N) > 0 AS prediction,
    ACTION AS target
  FROM amazon_train
  LIMIT 10

Required configuration:

  <catboost_lib_path>/path/to/libcatboostmodel.so</catboost_lib_path>

*** Implementation Details ***

The internal protocol between the server and the library-bridge is
simple:

- HTTP GET on path "/extdict_ping":
  A ping, used during the handshake to check if the library-bridge runs.

- HTTP POST on path "extdict_request"
  (1) Send a "catboost_GetTreeCount" request from the server to the
      bridge, containing a library path (e.g /home/user/libcatboost.so) and
      a model path (e.g. /home/user/model.bin). Rirst, this unloads the
      catboost library handler associated to the model path (if it was
      loaded), then loads the catboost library handler associated to the
      model path, then executes GetTreeCount() on the library handler and
      finally sends the result back to the server. Step (1) is called once
      by the server from FunctionCatBoostEvaluate::getReturnTypeImpl(). The
      library path handler is unloaded in the beginning because it contains
      state which may no longer be valid if the user runs
      catboost("/path/to/model.bin", ...) more than once and if "model.bin"
      was updated in between.
  (2) Send "catboost_Evaluate" from the server to the bridge, containing
      the model path and the features to run the interference on. Step (2)
      is called multiple times (once per chunk) by the server from function
      FunctionCatBoostEvaluate::executeImpl(). The library handler for the
      given model path is expected to be already loaded by Step (1).

Fixes #27870
2022-09-08 09:01:32 +00:00
Robert Schulze
912663b719
Revert "Move CatBoost evaluation into clickhouse-library-bridge" 2022-08-31 20:54:43 +02:00
Robert Schulze
6b2b3c1eb3
feat: implement catboost in library-bridge
This commit moves the catboost model evaluation out of the server
process into the library-bridge binary. This serves two goals: On the
one hand, crashes / memory corruptions of the catboost library no longer
affect the server. On the other hand, we can forbid loading dynamic
libraries in the server (catboost was the last consumer of this
functionality), thus improving security.

SQL syntax:

  SELECT
    catboostEvaluate('/path/to/model.bin', FEAT_1, ..., FEAT_N) > 0 AS prediction,
    ACTION AS target
  FROM amazon_train
  LIMIT 10

Required configuration:

  <catboost_lib_path>/path/to/libcatboostmodel.so</catboost_lib_path>

*** Implementation Details ***

The internal protocol between the server and the library-bridge is
simple:

- HTTP GET on path "/extdict_ping":
  A ping, used during the handshake to check if the library-bridge runs.

- HTTP POST on path "extdict_request"
  (1) Send a "catboost_GetTreeCount" request from the server to the
      bridge, containing a library path (e.g /home/user/libcatboost.so) and
      a model path (e.g. /home/user/model.bin). Rirst, this unloads the
      catboost library handler associated to the model path (if it was
      loaded), then loads the catboost library handler associated to the
      model path, then executes GetTreeCount() on the library handler and
      finally sends the result back to the server. Step (1) is called once
      by the server from FunctionCatBoostEvaluate::getReturnTypeImpl(). The
      library path handler is unloaded in the beginning because it contains
      state which may no longer be valid if the user runs
      catboost("/path/to/model.bin", ...) more than once and if "model.bin"
      was updated in between.
  (2) Send "catboost_Evaluate" from the server to the bridge, containing
      the model path and the features to run the interference on. Step (2)
      is called multiple times (once per chunk) by the server from function
      FunctionCatBoostEvaluate::executeImpl(). The library handler for the
      given model path is expected to be already loaded by Step (1).

Fixes #27870
2022-08-29 20:26:45 +00:00
DanRoscigno
5b5fcc56aa add slugs 2022-08-28 10:53:34 -04:00
Robert Schulze
f121941916
feat: allow custom error code for SQL function throwIf() 2022-08-17 21:14:40 +00:00
jiahui-97
e7af88b688 implementation of parseTimeDelta function
Co-authored-by: Kruglov Pavel <48961922+Avogar@users.noreply.github.com>
2022-07-19 09:33:02 +08:00
rfraposa
869967de41 Remove H1 anchor tags from docs 2022-06-02 04:55:18 -06:00
rfraposa
d9e6f780db Fixed broken links 2022-04-10 23:01:34 -06:00
rfraposa
8f01fe9c49 Revised /en folder 2022-04-09 07:34:21 -06:00
rfraposa
5250d9ad11 Removed /ja folder, cleaned up /ru markdown 2022-04-09 07:29:05 -06:00
taiyang-li
7889059f7d fix building 2022-03-25 22:39:57 +08:00
李扬
1d8ab36de0
Update other-functions.md 2022-03-23 21:44:14 +08:00
taiyang-li
98a9b81c1d update doc 2022-03-21 14:23:25 +08:00
taiyang-li
93550d547e add doc and tests 2022-03-15 18:25:36 +08:00
Roman Bug
b8248cdc95 Minor fix. 2021-11-09 13:08:47 +03:00