Commit Graph

2864 Commits

Author SHA1 Message Date
Robert Schulze
38aecc15a2
Merge pull request #41214 from arenadata/ADQM-528-B
Add enable_extended_results_for_datetime_functions option to return results of type Date32
2022-09-17 19:25:11 +02:00
DanRoscigno
149970447a add link to formats 2022-09-16 17:21:03 -04:00
Robert Schulze
b32b02d844
Merge pull request #40897 from ClickHouse/catboost-bridge-resurrected
Move CatBoost evaluation into clickhouse-library-bridge
2022-09-16 13:12:09 +02:00
Roman Vasin
d82cd7b007 Add many cosmetic changes to C++ code and MD docs 2022-09-16 09:37:30 +00:00
Roman Vasin
5c242de43a Merge branch 'master' of github.com:ClickHouse/ClickHouse into ADQM-528-B 2022-09-15 13:47:51 +00:00
Roman Vasin
3ce66eab83 Correct all needed MD files 2022-09-15 13:28:11 +00:00
Kseniia Sumarokova
c511c3f168
Merge pull request #40889 from AVMusorin/docs_table_function_update
Doc. Updated optional parameters for table functions
2022-09-15 13:12:20 +02:00
Denny Crane
69d90de9a3
Update date-time-functions.md 2022-09-14 15:23:59 -03:00
Denny Crane
cbdbe1077a
Update date-time-functions.md 2022-09-14 12:16:32 -03:00
Robert Schulze
cb04c724b9
Merge pull request #41285 from ClickHouse/fix-broken-doc-links
System statements docs: Fix broken links
2022-09-14 13:03:01 +02:00
Robert Schulze
49136d26aa
docs: fix internal links
The links at the very beginning of
https://clickhouse.com/docs/en/sql-reference/statements/system
don't work. They are reference other sections of the same document. This
is weird because there is a small index already on the right side. I
searched our documentation and this seems to be the only pages which do
so. Therefore removing the links altogether instead of fixing them.
2022-09-13 19:45:46 +00:00
Dan Roscigno
078b9bff3c
Update docs/en/sql-reference/statements/delete.md 2022-09-13 13:18:01 -04:00
Rich Raposa
b833c39dcf
Update delete.md 2022-09-13 10:55:26 -06:00
Rich Raposa
e85b222136
Update delete.md 2022-09-13 10:54:47 -06:00
DanRoscigno
64bd1ea77a spelling 2022-09-13 12:42:24 -04:00
DanRoscigno
fc2e7159f0 add note about privs 2022-09-13 12:40:16 -04:00
Robert Schulze
3e6821e8d7
fix: repair broken documentation links and update docs 2022-09-13 16:00:53 +00:00
Robert Schulze
fac1be9700
chore: restore SYSTEM RELOAD MODEL(S) and moniting view SYSTEM.MODELS
- This commit restores statements "SYSTEM RELOAD MODEL(S)" which provide
  a mechanism to update a model explicitly. It also saves potentially
  unnecessary reloads of a model from disk after it's initial load.

  To keep the complexity low, the semantics of "SYSTEM RELOAD MODEL(S)
  was changed from eager to lazy. This means that both statements
  previously immedately reloaded the specified/all models, whereas now
  the statements only trigger an unload and the first call to
  catboostEvaluate() does the actual load.

- Monitoring view SYSTEM.MODELS is also restored but with some obsolete
  fields removed. The view was not documented in the past and for now it
  remains undocumented. The commit is thus not considered a breach of
  ClickHouse's public interface.
2022-09-12 19:33:02 +00:00
Rich Raposa
b9e9d776f0
Update delete.md 2022-09-09 15:55:57 -06:00
rfraposa
4af246a2e0 Feedback 2022-09-09 13:59:21 -06:00
Aleksandr
503398ac96
Merge branch 'master' into docs_table_function_update 2022-09-09 20:54:28 +02:00
Rich Raposa
9870957621
Update docs/en/sql-reference/statements/delete.md
Co-authored-by: Ivan Blinkov <github@blinkov.ru>
2022-09-09 12:16:54 -06:00
Rich Raposa
50789126a8
Update docs/en/sql-reference/statements/delete.md
Co-authored-by: Ivan Blinkov <github@blinkov.ru>
2022-09-09 12:15:59 -06:00
Rich Raposa
34c2c4bb52
Merge branch 'master' into lightweight-delete 2022-09-09 12:13:51 -06:00
Nikolay Degterinsky
6dcaa9f14d
Merge pull request #41106 from vincentbernat/fix/docs-sync
docs: mention SYNC modifier for DROP and DETACH statements
2022-09-09 20:12:47 +02:00
rfraposa
18f5b5e5b0 Add docs for lightweight deletes 2022-09-08 16:05:56 -06:00
Denny Crane
132727d212
Doc. Fix links. 2022-09-08 14:37:42 -03:00
Vincent Bernat
fab1b40928 docs: mention SYNC modifier for DROP and DETACH statements 2022-09-08 15:21:59 +02:00
Robert Schulze
c16707ff00
chore: delete obsolete modelEvaluate() function + SYSTEM.MODELS view
- The deleted function modelEvaluate() was superseded by
  catboostEvaluate().

- Also delete the external model repository, as modelEvaluate() was it's
  last user. Additionally remove the system view SYSTEM.MODELS for
  inspecting the repository.

- SYSTEM RELOAD MODELS is also obsolete. HOWEVER, it was retained and
  made a no-op instead of deleted.

  Why?
  The reason is that RBAC in distributed setups works by storing
  privileges (granted and revoked) as plain SQL statements in Keeper.
  Nodes read these statements at startup and parse them. If a privilege
  for SYSTEM RELOAD MODELS exists but parser doesn't recognize it
  nodes would fail to come up.

  Considered but rejected alternatives:
  - Ignore SYSTEM RELOAD MODELS during parsing RBAC privileges and
    return an error for regular SYSTEM RELOAD MODELS SQL. Special-case
    of no-op behavior, too brittle.
  - Remove SYSTEM RELOAD MODELS manually from Keeper via command-line
    manipulation of Keeper nodes or via SQL by dropping the privileges.
    Needs user intervention during upgrade.
2022-09-08 09:10:11 +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
Denny Crane
a75eb5ad84
Update date-time-functions.md 2022-09-07 15:59:23 -03:00
Denny Crane
0071ef9e38
Update date-time-functions.md 2022-09-07 15:56:31 -03:00
Kruglov Pavel
582216a3ca
Merge pull request #39919 from pzhdfy/UniqSketch
UniqThetaSketch support set operation such as union/intersect/not
2022-09-05 13:42:14 +02:00
Alexey Milovidov
deeaea004d
Merge pull request #40295 from cyber-moon/patch-1
Add description of {condition}-keyword
2022-09-04 04:57:30 +03:00
Alexey Milovidov
1963baa11e
Merge pull request #40964 from ClickHouse/fix-docs-formatting
Fix formatting of notes box in documentation
2022-09-04 03:39:39 +03:00
Denny Crane
dd19b0856e
Doc. mapApply, mapFilter, mapUpdate (#40961)
* Update tuple-map-functions.md

* Update tuple-map-functions.md
2022-09-04 00:43:39 +02:00
Robert Schulze
385427ade8
Fix formatting of notes box in documentation
Follow-up to PR #38435
2022-09-03 17:25:14 +00:00
Robert Schulze
53836bbeeb
Fix typo
The system view is called 'role*_*grants', documented on page
'role*-*grants.md'.
2022-09-02 12:49:50 +00:00
Александр
97e55ca2f5
Merge branch 'master' into docs_table_function_update 2022-09-01 14:01:32 +02:00
Fangyuan Deng
bc7d661668
Merge branch 'master' into UniqSketch 2022-09-01 19:31:53 +08:00
Denny Crane
e3af5a7a11
Doc. Added ON CLUSTER cluster in couple places (#40874) 2022-09-01 13:31:22 +02:00
pzhdfy
acec516271 add docs 2022-09-01 19:31:01 +08:00
Aleksandr Musorin
310e1484f6
docs - updated optional parameters for table functions 2022-09-01 13:28:56 +02:00
Robert Schulze
56eece40ec
Merge pull request #40736 from LevyCory/add-offset-to-formatDateTime
Add timezone offset support  to `formatDateTime`
2022-09-01 09:50:17 +02:00
Robert Schulze
912663b719
Revert "Move CatBoost evaluation into clickhouse-library-bridge" 2022-08-31 20:54:43 +02:00
Robert Schulze
ca01286028
Merge pull request #39629 from ClickHouse/catboost-bridge
Move CatBoost evaluation into clickhouse-library-bridge
2022-08-31 16:16:11 +02:00
Robert Schulze
40468d3304
Fix typo in docs 2022-08-30 20:45:31 +00:00
Denny Crane
0d7cc82267
Update string-functions.md 2022-08-30 11:08:23 -03:00
Andrey Zvonov
93f9abf130
upd2 2022-08-30 14:41:40 +03:00
Andrey Zvonov
14adea8792
fix error in docs 2022-08-30 14:40:26 +03:00