LOAD Statements
This documentation is for an unreleased version of Apache Flink. We recommend you use the latest stable version.

LOAD Statements #

LOAD statements are used to load a built-in or user-defined module.

Run a LOAD statement #

LOAD statements can be executed with the executeSql() method of the TableEnvironment. The executeSql() method returns ‘OK’ for a successful LOAD operation; otherwise, it will throw an exception.

The following examples show how to run a LOAD statement in TableEnvironment.

LOAD statements can be executed with the executeSql() method of the TableEnvironment. The executeSql() method returns ‘OK’ for a successful LOAD operation; otherwise, it will throw an exception.

The following examples show how to run a LOAD statement in TableEnvironment.

LOAD statements can be executed with the execute_sql() method of the TableEnvironment. The execute_sql() method returns ‘OK’ for a successful LOAD operation; otherwise, it will throw an exception.

The following examples show how to run a LOAD statement in TableEnvironment.

LOAD statements can be executed in SQL CLI.

The following examples show how to run a LOAD statement in SQL CLI.

StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment(); StreamTableEnvironment tEnv = StreamTableEnvironment.create(env);  // load a hive module tEnv.executeSql("LOAD MODULE hive WITH ('hive-version' = '3.1.3')"); tEnv.executeSql("SHOW MODULES").print(); // +-------------+ // | module name | // +-------------+ // | core | // | hive | // +-------------+ 
val env = StreamExecutionEnvironment.getExecutionEnvironment() val tEnv = StreamTableEnvironment.create(env)  // load a hive module tEnv.executeSql("LOAD MODULE hive WITH ('hive-version' = '3.1.3')") tEnv.executeSql("SHOW MODULES").print() // +-------------+ // | module name | // +-------------+ // | core | // | hive | // +-------------+ 
table_env = StreamTableEnvironment.create(...)  # load a hive module table_env.execute_sql("LOAD MODULE hive WITH ('hive-version' = '3.1.3')") table_env.execute_sql("SHOW MODULES").print() # +-------------+ # | module name | # +-------------+ # | core | # | hive | # +-------------+ 
Flink SQL> LOAD MODULE hive WITH ('hive-version' = '3.1.3'); [INFO] Load module succeeded!  Flink SQL> SHOW MODULES; +-------------+ | module name | +-------------+ | core | | hive | +-------------+ 

Back to top

LOAD MODULE #

The following grammar gives an overview of the available syntax:

LOAD MODULE module_name [WITH ('key1' = 'val1', 'key2' = 'val2', ...)] 
module_name is a simple identifier. It is case-sensitive and should be identical to the module type defined in the module factory because it is used to perform module discovery. Properties ('key1' = 'val1', 'key2' = 'val2', ...) is a map that contains a set of key-value pairs (except for the key 'type') and passed to the discovery service to instantiate the corresponding module.