????????
??????????Flink SQL
??????????????????????????????????yaml????????????????????????,????????????????????????????
hive??????????????????'\036'????????????????????
[root@server2 bin]# /home/hadoop/flink-1.7.2/bin/sql-client.sh embedded -e
/home/hadoop/flink_test/env.yaml
Setting HADOOP_CONF_DIR=/etc/hadoop/conf because no HADOOP_CONF_DIR was set.
No default environment specified.
Searching for '/home/hadoop/flink-1.7.2/conf/sql-client-defaults.yaml'...found.
Reading default environment from:
file:/home/hadoop/flink-1.7.2/conf/sql-client-defaults.yaml
Reading session environment from: file:/home/hadoop/flink_test/env.yaml
Exception in thread "main" org.apache.flink.table.client.SqlClientException:
Could not parse environment file. Cause: YAML decoding problem: while parsing a
block collection
in 'reader', line 2, column 2:
- name: MyTableSource
^
expected <block end>, but found BlockMappingStart
in 'reader', line 17, column 3:
schema:
^
(through reference chain:
org.apache.flink.table.client.config.Environment["tables"])
at
org.apache.flink.table.client.config.Environment.parse(Environment.java:146)
at
org.apache.flink.table.client.SqlClient.readSessionEnvironment(SqlClient.java:162)
at org.apache.flink.table.client.SqlClient.start(SqlClient.java:90)
at org.apache.flink.table.client.SqlClient.main(SqlClient.java:187)
--????????env.yaml
tables:
- name: MyTableSource
type: source-table
update-mode: append
connector:
type: filesystem
path: "/home/hadoop/flink_test/input.csv"
format:
type: csv
fields:
- name: MyField1
type: INT
- name: MyField2
type: VARCHAR
line-delimiter: "\n"
comment-prefix: "#"
schema:
- name: MyField1
type: INT
- name: MyField2
type: VARCHAR
- name: MyCustomView
type: view
query: "SELECT MyField2 FROM MyTableSource"
# Execution properties allow for changing the behavior of a table program.
execution:
type: streaming # required: execution mode either 'batch' or 'streaming'
result-mode: table # required: either 'table' or 'changelog'
max-table-result-rows: 1000000 # optional: maximum number of maintained rows in
# 'table' mode (1000000 by default, smaller 1 means unlimited)
time-characteristic: event-time # optional: 'processing-time' or 'event-time'
(default)
parallelism: 1 # optional: Flink's parallelism (1 by default)
periodic-watermarks-interval: 200 # optional: interval for periodic
watermarks(200 ms by default)
max-parallelism: 16 # optional: Flink's maximum parallelism (128by default)
min-idle-state-retention: 0 # optional: table program's minimum idle state time
max-idle-state-retention: 0 # optional: table program's maximum idle state time
restart-strategy: # optional: restart strategy
type: fallback # "fallback" to global restart strategy by
default
# Deployment properties allow for describing the cluster to which table
programsare submitted to.
deployment:
response-timeout: 5000