SciDB Operators
The operators listed in this section are available in SciDB's Array Functional Language (AFL). You can use operators in several ways in SciDB queries. You can use:
- Operators at the AFL command line or, in some cases, nested with other AFL operators.
- Operators in the prototype query language, AQL, in FROM clauses.
Operator syntax generally follows this pattern:
operator(array|array_expression|anonymous_schema,arguments);
The first operator argument is generally a previously-created and stored array. However, in many cases, the first argument may also be a SciDB operator. The output of the nested operator serves as the input for the outer operator. This is called an array expression.
operator_1(operator_2(array,arguments_2),arguments_1);
Not all SciDB operators can take another operator as input. These exceptions are noted on the individual operator reference pages.
You can specify an operator argument as array, but also as an array expression. An operator argument you specify as named_array must be a previously-created/stored array.
Some operators can take an array schema as input instead of a named array or array expression. This is called an anonymous schema. Operators that can take an anonymous schema instead of an array are are noted on the individual operator reference pages.
Some operators allow named keyword arguments. These are always optional arguments and can appear in any order, but must appear after any ordinary positional arguments in the parameter list. Operators using named keyword arguments follow this pattern:
operator(argument_1, argument_2, keyword_a: value_a, keyword_b: value_b)
Listing SciDB Operators
For a list of all of the available operators, run the following query:
$ iquery -aq "list('operators')"
Some of the operator examples use the random() function to create data. Since this function calls a random number generator, your numbers differ from those shown.
Individual Operator Documentation
Individual operator documentation topics are available below or through the sidebar table of contents.
- SciDB Aggregate Operators and Functions
- Security Operators
- Transactions and Transaction Operators
- add_attributes
- add_instances
- append
- apply
- attributes
- avg_rank
- bernoulli
- between
- build
- builtin_equi_join
- builtin_grouped_aggregate
- cancel
- cast
- consume
- create_array
- cross_between
- cross_join
- cumulate
- delete
- dimensions
- discard
- filter
- flatten
- gemm
- gesvd
- glm
- hash
- help
- index_lookup
- input
- insert
- join
- kendall
- limit
- list
- list_array_residency
- list_instances
- load
- load_library
- load_module
- lock_arrays
- merge
- mpi_init
- mquery
- pearson
- project
- quantile
- rank
- redimension
- redistribute
- remove
- remove_instances
- remove_versions
- rename
- repart
- reshape
- rng_uniform
- save
- scan
- show
- slice
- sort
- spearman
- spgemm
- store
- subarray
- subdelete
- substitute
- summarize
- sync
- transpose
- tsvd
- unfold
- uniq
- unload_library
- unpack
- unregister_instances
- versions
- xgrid