Source: https://dev-docs.nebula-graph.io/v5.3.2/clients/flink-connector/flink-options/ Documentation version: v5.3.2 # Flink connector configurations Configure the NebulaGraph Flink connector with these classes: - `ConnectionOptions`: used to connect to NebulaGraph Database Developer Edition. - `SinkNodeOptions`: used to write data to the specified node type in NebulaGraph Database Developer Edition. - `SinkEdgeOptions`: used to write data to the specified edge type in NebulaGraph Database Developer Edition. - `SourceExecutionOptions`: used to read data from NebulaGraph Database Developer Edition. It includes two classes: `SourceNodeOptions` and `SourceEdgeOptions`. ## `ConnectionOptions` | Method | Description | Required | Default value | Data type | Introduced in | `withGraphAddress` | The IP address and port of the Graph service. Separate multiple entries with commas (,). For example:`ip1:port1,ip2:port2,...` | Yes | N/A | String | 5.2 | `withUser` | The username of the Graph service. | Yes | N/A | String | 5.2 | `withPassword` | The password used to authenticate a user. | No | N/A | String | 5.2 | `withAuthInfo` | A map to store and manage authentication information. | No | Empty | Map | 5.2 | `withConnectionTimeout` | The connection timeout in milliseconds. | No | 3000 | Integer | 5.2 | `withRequestTimeout` | The timeout for requests in milliseconds. | No | 5000 | Integer | 5.2 | `withSchema` | The schema that contains the graph to which data is written. | No | N/A | String | 5.2 | `withTimeZone` | The time zone to be set in the session. If not specified, the default time zone in NebulaGraph Database Developer Edition is used. | No | N/A | ZoneId | 5.2 | `withDateFormat` | The date format to be set in the session. If not specified, the default date format in NebulaGraph Database Developer Edition is used. | No | N/A | String | 5.2 | `withZonedDatetimeFormat` | The zoned datetime format to be set in the session. If not specified, the default zoned datetime format in NebulaGraph Database Developer Edition is used. | No | N/A | String | 5.2 | `withLocalDatetimeFormat` | The local datetime format to be set in the session. If not specified, the default local datetime format in NebulaGraph Database Developer Edition is used. | No | N/A | String | 5.2 | `withZonedTimeFormat` | The zoned time format to be set in the session. If not specified, the default zoned time format in NebulaGraph Database Developer Edition is used. | No | N/A | String | 5.2 | `withLocalTimeFormat` | The local time format to be set in the session. If not specified, the default local time format in NebulaGraph Database Developer Edition is used. | No | N/A | String | 5.2 | `withEnableTls` | Whether to enable TLS encryption. | No | false | Boolean | 5.2 | `withDisableVerifyServerCertificate` | Whether to disable server certificate verification. | No | false | Boolean | 5.2 | `withTlsCaPath` | The path to the CA (Certificate Authority) certificate file, which is used to verify the server's certificate. Required if `withEnableTls` is set to `true` and `withDisableVerifyServerCertificate` is set to `false`. | No | N/A | String | 5.2 | `withTlsCertPath` | The path to the certificate file of the client. Required if `tls_client_verify` is set to `true` in the configuration file of NebulaGraph Database Developer Edition's Graph service. | No | N/A | String | 5.2 | `withTlsKeyPath` | The path to the private key file of the client. Required if `tls_client_verify` is set to `true` in the configuration file of NebulaGraph Database Developer Edition's Graph service. | No | N/A | String | 5.2 ## `SinkNodeOptions` | Method | Description | Required | Default value | Data type | Introduced in | `withGraphName` | The name of the graph to which data is written. | No | N/A | String | 5.2 | `withNodeType` | The node type to which data is written. | No | N/A | String | 5.2 | `withFlinkFields` | The list of fields in the Flink data stream. | Yes | Empty | List | 5.2 | `withNebulaFields` | The corresponding list of properties in NebulaGraph Database Developer Edition. | Yes | Empty | List | 5.2 | `withWriteMode` | The write mode. Valid values are `INSERT`, `INSERTIGNORE`, `INSERTREPLACE`, `INSERTUPDATE`, `UPDATE`, `DELETE`, and `DETACHDELETE`. | No | `INSERTREPLACE` | WriteModeEnum | 5.2 | `withBatchSize` | The maximum number of nodes to be written in each batch. | No | 2000 | Integer | 5.2 | `withRetryTimes` | The maximum number of retries when writing data fails. | No | 0 | Integer | 5.2 | `withIntervalMs` | The interval between retries in milliseconds. | No | 0 | Long | 5.2 | `withGqlTemplate` | Custom GQL template. When set, the connector uses this template to generate the write GQL instead of the built-in generation logic. The template must contain the `{{ TABLE }}` placeholder. Available placeholders: `{{ TABLE }}` (TABLE clause, required), `{{ GRAPH }}` (graph name), and `{{ TYPE }}` (node type name). | No | N/A | String | 5.3 ## `SinkEdgeOptions` | Method | Description | Required | Default value | Data type | Introduced in | `withGraphName` | The name of the graph to which data is written. | No | N/A | String | 5.2 | `withEdgeType` | The edge type to which data is written. | No | N/A | String | 5.2 | `withFlinkSrcPkFields` | The list of fields in the Flink data stream used as the primary key of the source node type for the edge type. | Yes | Empty | List | 5.2 | `withNebulaSrcPks` | The corresponding list of properties that form the primary keys of the source node type for the edge type in NebulaGraph Database Developer Edition. | Yes | Empty | List | 5.2 | `withFlinkDstPkFields` | The list of fields in the Flink data stream used as primary key of the destination node type for the edge type. | Yes | Empty | List | 5.2 | `withNebulaDstPks` | The corresponding list of properties that form the primary keys of the destination node type for the edge type in NebulaGraph Database Developer Edition. | Yes | Empty | List | 5.2 | `withFlinkFields` | The list of fields in the Flink data stream. | Yes | Empty | List | 5.2 | `withNebulaFields` | The corresponding list of properties in NebulaGraph Database Developer Edition. | Yes | Empty | List | 5.2 | `withWriteMode` | The write mode. Valid values: `INSERT`, `INSERTIGNORE`, `INSERTREPLACE`, `INSERTUPDATE`, `UPDATE`, `DELETE`, and `DETACHDELETE`. | No | `INSERTREPLACE` | WriteModeEnum | 5.2 | `withBatchSize` | The maximum number of edges to be written in each batch. | No | 2000 | Integer | 5.2 | `withRetryTimes` | The maximum number of retries when writing data fails. | No | 0 | Integer | 5.2 | `withIntervalMs` | The interval between retries in milliseconds. | No | 0 | Long | 5.2 | `withGqlTemplate` | Custom GQL template. When set, the connector uses this template to generate the write GQL instead of the built-in generation logic. The template must contain the `{{ TABLE }}` placeholder. Available placeholders: `{{ TABLE }}` (TABLE clause, required), `{{ GRAPH }}` (graph name), and `{{ TYPE }}` (edge type name). | No | N/A | String | 5.3 ## `SourceExecutionOptions` | Method | Description | Required | Default value | Data type | Introduced in | `withGraphName` | The name of the graph from which data is read. | Yes | N/A | String | 5.2 | `withNodeType` or `withEdgeType` | The node type or edge type from which data is read. | Yes | N/A | String | 5.2 | `withReturnCols` | The list of properties to read. If not specified or set to `null`, all properties of the node type or edge type are read. If set to an empty list for a node type, only properties that constitute the primary key of the node type are read. If set to an empty list for an edge type, only properties that constitute the primary keys of the source and destination node types of the edge type are read. | No | Empty | List | 5.2 | `withBatchSize` | The maximum number of data entries to read in each request. | No | 2000 | Integer | 5.2