Schema Membership for Installed Functions and Files - Aster Execution Engine

Teradata Aster® Developer Guide

Product
Aster Execution Engine
Release Number
7.00.02
Published
July 2017
Language
English (United States)
Last Update
2018-04-13
dita:mapPath
xnl1494366523182.ditamap
dita:ditavalPath
Generic_no_ie_no_tempfilter.ditaval
dita:id
ffu1489104705746
lifecycle
previous
Product Category
Software

Every installed file or function must belong to a schema. The schema is used in two ways:

  • The schema provides the context for GRANTing users rights to install files and functions. To install a file, the user must have the INSTALL FILE privilege on the schema, and to create a function he must have both the INSTALL FILE and CREATE FUNCTION privileges on the schema. To run a function, the user must have the EXECUTE privilege on the function.
  • The schema provides namespace isolation. When your queries refer to an installed file or function, you must now follow the same namespace resolution rules that you would follow for any table or view. In other words, the Aster instance now uses the schema search path or an explicit schema qualifier in the query to know which query an installed file or function resides in.

To call the function, the user must schema-qualify its name in her SELECT statement, or she can make sure that the function’s schema is in her current schema search path. The file or function is usable on tables, views, and files in any schema to which the user has access.

Schema membership provides namespace isolation for installed functions and files, meaning that if, for example, one of your installed functions has the same name as a function used by another analyst in another schema, there is no ambiguity as to which function is used.

You are also safe from unwanted changes made by people who work in the same schema where you installed your function. Within a single schema, only the owner of a function can remove or overwrite it. This means that your installed functions are also protected from changes by other users who have function-installation rights in your schema.