melotlee commented on a change in pull request #11359: [FLINK-16095] [docs-zh]
Translate "Modules" page of "Table API & SQL" into Chinese
URL: https://github.com/apache/flink/pull/11359#discussion_r399056271
##########
File path: docs/dev/table/modules.zh.md
##########
@@ -22,51 +22,41 @@ KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
+模块让用户能够对 Flink 内置对象进行扩展。例如,通过自定义函数扩展内置函数,这些自定义函数和内置函数没有区别。模块是可插拔的,Flink
已经提供了一些预构建的模块,用户还可以实现自己的模块。
-Modules allow users to extend Flink's built-in objects, such as defining
functions that behave like Flink
-built-in functions. They are pluggable, and while Flink provides a few
pre-built modules, users can write
-their own.
-
-For example, users can define their own geo functions and plug them into Flink
as built-in functions to be used in
-Flink SQL and Table APIs. Another example is users can load an out-of-shelf
Hive module to use Hive built-in
-functions as Flink built-in functions.
+例如,用户可以自定义 geo 函数,并将其作为内置函数插入 Flink,随后就可以在 Flink SQL 和 Table API
中使用它了。另一个示例是,用户可以加载现成的 Hive 模块,随后就可以像使用 Flink 内置函数一样使用 Hive 模块的函数了。
* This will be replaced by the TOC
{:toc}
-## Module Types
+## 模块类型
+
+### 核心模块
-### CoreModule
+`CoreModule` 包含 Flink 的所有内置函数,默认加载。
-`CoreModule` contains all of Flink's system (built-in) functions and is loaded
by default.
+### Hive 模块
-### HiveModule
+ `HiveModule` 为 Flink SQL 和 Table API 的用户提供了Hive 内置函数,它们类似于 Flink 内置函数。 [Hive
文档]({{ site.baseurl }}/zh/dev/table/hive/hive_functions.html) 提供了设置该模块的详细方法。
-The `HiveModule` provides Hive built-in functions as Flink's system functions
to SQL and Table API users.
-Flink's [Hive documentation]({{ site.baseurl
}}/dev/table/hive/hive_functions.html) provides full details on setting up the
module.
+### 自定义模块
-### User-Defined Module
+用户可以通过实现 `Module` 接口来开发自定义模块。为了能在 SQL CLI 使用,用户还需要通过实现 `ModuleFactory`
接口来为对应的模块开发一个模块工厂。
-Users can develop custom modules by implementing the `Module` interface.
-To use custom modules in SQL CLI, users should develop both a module and its
corresponding module factory by implementing
-the `ModuleFactory` interface.
+模块工厂定义了一组属性,用于在 SQL CLI 启动时配置模块。属性会传递给发现服务,发现服务会使用与属性相匹配的模块工厂来创建模块实例。
-A module factory defines a set of properties for configuring the module when
the SQL CLI bootstraps.
-Properties are passed to a discovery service where the service tries to match
the properties to
- a `ModuleFactory` and instantiate a corresponding module instance.
-
-## Namespace and Resolution Order
+## 命名空间和解析顺序
-Objects provided by modules are considered part of Flink's system (built-in)
objects; thus, they don't have any namespaces.
+模块提供的对象被认为是 Flink 内置对象的一部分。它们不需要指定命名空间。
-When there are two objects of the same name residing in two modules, Flink
always resolves the object reference to the one in the 1st loaded module.
+当两个模块中有同名对象时,Flink 会选择最早完成加载的模块中的对象。
-## Module API
+## 模块 API
-### Loading and unloading a Module
+### 模块的加载与卸载
-Users can load and unload modules in an existing Flink session.
+用户可以在 Flink session 中加载与卸载模块。
Review comment:
translated into "会话"
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services