Files
scylladb/docs
Avi Kivity 5a30f9b789 Merge 'Distributed aggregate query' from Michał Jadwiszczak
This PR extends #9209. It consists of 2 main points:

To enable parallelization of user-defined aggregates, reduction function was added to UDA definition. Reduction function is optional and it has to be scalar function that takes 2 arguments with type of UDA's state and returns UDA's state

All currently implemented native aggregates got their reducible counterpart, which return their state as final result, so it can be reduced with other result. Hence all native aggregates can now be distributed.

Local 3-node cluster made with current master. `node1` updated to this branch. Accessing node with `ccm <node-name> cqlsh`

I've tested belowed things from both old and new node:
- creating UDA with reduce function - not allowed
- selecting count(*) - distributed
- selecting other aggregate function - not distributed

Fixes: #10224

Closes #10295

* github.com:scylladb/scylla:
  test: add tests for parallelized aggregates
  test: cql3: Add UDA REDUCEFUNC test
  forward_service: enable multiple selection
  forward_service: support UDA and native aggregate parallelization
  cql3:functions: Add cql3::functions::functions::mock_get()
  cql3: selection: detect parallelize reduction type
  db,cql3: Move part of cql3's function into db
  selection: detect if selectors factory contains only simple selectors
  cql3: reducible aggregates
  DB: Add `scylla_aggregates` system table
  db,gms: Add SCYLLA_AGGREGATES schema features
  CQL3: Add reduce function to UDA
  gms: add UDA_NATIVE_PARALLELIZED_AGGREGATION feature
2022-07-19 19:05:19 +03:00
..
2022-07-14 11:53:41 +03:00
2022-06-28 15:07:35 +01:00
2022-07-18 14:18:48 +02:00
2022-07-19 13:42:25 +03:00
2022-07-11 12:31:59 +02:00
2022-07-12 16:33:38 +03:00
2022-06-28 09:39:14 +01:00
2022-07-11 12:16:53 +02:00

Scylla documentation

This is the repository for Scylla documentation site

To report an issue with the documentation, please use GitHub issues.

This repository accepts GitHub pull requests.

Send pull requests to the master branch, not gh-pages. gh-pages will be overwritten by deploy without warning.

Prerequisites

  • Python 3. Check your version with $ python --version
  • Vale CLI (optional to lint docs). Install Vale for your operative system.

Prerequisites: Mac OS X

You must have a working Homebrew in order to install the needed tools.

You also need the standard utility make. (I don't know if this comes with Mac OS X.)

Check if you have these two items with

brew help
make -h

Prerequisites: Fedora 29/Debian-based Linux Distributions

This should work out of the box with Fedora 29.

Prerequisites: Windows

Use "Bash on Ubuntu on Windows", everything should be same as on a debian-based Linux. Note: livereload seems not working on Windows.

Prerequisites: other systems

FIXME

Working on the docs

Work on a task branch and send pull requests for master. Master is the default branch.

Run make preview to make the docs and preview locally.

Deploy

If you have the rights to push to the live site, run make deploy to deploy.

Lint

Lint all:

make proofread

Lint one file (e.g. README.md):

make proofread path=README.md

Lint one folder (e.g. getting-started):

make proofread path=getting-started

Cleanup

You can clean up all the build products and auto-installed Python stuff with:

make pristine

Contributor info

If you are interested in contributing to Scylla docs, please read the Scylla open source page at http://www.scylladb.com/opensource/ and complete a Scylla contributor agreement if needed. We can only accept documentation pull requests if we have a contributor agreement on file for you

Submitting a KB Article

If you are submitting a Knowledgebase Article (KBA), use the following guidelines:

  • In the /kb_common directory there is a template for KBAs. It is called kb-article-template.rst.
  • Make a copy of this file in the /kb directory, saving it with a unique name.
  • Open the template and fill in the required inforation.
  • Remove what is not needed.
  • Runmake preview to make the docs and preview locally.
  • Send a PR - add KBA in the title.

Third-party documentation

  • Do any copying as a separate commit. Always commit an unmodified version first and then do any editing in a separate commit.

  • We already have a copy of the Apache license in our tree so you do not need to commit a copy of the license.

  • Include the copyright header from the source file in the edited version. If you are copying an Apache Cassandra document with no copyright header, use:

This document includes material from Apache Cassandra.
Apache Cassandra is Copyright 2009-2014 The Apache Software Foundation.