blob: 7c1331001c6c86b2c8148d114a18e00cb7b47a77 [file] [log] [blame]
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership. The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied. See the License for the
// specific language governing permissions and limitations
// under the License.
package org.apache.doris.spark.cfg;
public interface ConfigurationOptions {
// doris fe node address
String DORIS_FENODES = "doris.fenodes";
String DORIS_BENODES = "doris.benodes";
String DORIS_QUERY_PORT = "doris.query.port";
String DORIS_DEFAULT_CLUSTER = "default_cluster";
String TABLE_IDENTIFIER = "table.identifier";
String DORIS_TABLE_IDENTIFIER = "doris.table.identifier";
String DORIS_READ_FIELD = "doris.read.field";
String DORIS_FILTER_QUERY = "doris.filter.query";
String DORIS_FILTER_QUERY_IN_MAX_COUNT = "doris.filter.query.in.max.count";
int DORIS_FILTER_QUERY_IN_VALUE_UPPER_LIMIT = 10000;
String DORIS_USER = "doris.user";
String DORIS_REQUEST_AUTH_USER = "doris.request.auth.user";
// use password to save doris.request.auth.password
// reuse credentials mask method in spark ExternalCatalogUtils#maskCredentials
String DORIS_PASSWORD = "doris.password";
String DORIS_REQUEST_AUTH_PASSWORD = "doris.request.auth.password";
String DORIS_REQUEST_RETRIES = "doris.request.retries";
String DORIS_REQUEST_CONNECT_TIMEOUT_MS = "doris.request.connect.timeout.ms";
String DORIS_REQUEST_READ_TIMEOUT_MS = "doris.request.read.timeout.ms";
String DORIS_REQUEST_QUERY_TIMEOUT_S = "doris.request.query.timeout.s";
int DORIS_REQUEST_RETRIES_DEFAULT = 3;
int DORIS_REQUEST_CONNECT_TIMEOUT_MS_DEFAULT = 30 * 1000;
int DORIS_REQUEST_READ_TIMEOUT_MS_DEFAULT = 30 * 1000;
int DORIS_REQUEST_QUERY_TIMEOUT_S_DEFAULT = 3600;
String DORIS_TABLET_SIZE = "doris.request.tablet.size";
int DORIS_TABLET_SIZE_DEFAULT = Integer.MAX_VALUE;
int DORIS_TABLET_SIZE_MIN = 1;
String DORIS_BATCH_SIZE = "doris.batch.size";
int DORIS_BATCH_SIZE_DEFAULT = 1024;
String DORIS_EXEC_MEM_LIMIT = "doris.exec.mem.limit";
long DORIS_EXEC_MEM_LIMIT_DEFAULT = 2147483648L;
String DORIS_VALUE_READER_CLASS = "doris.value.reader.class";
String DORIS_DESERIALIZE_ARROW_ASYNC = "doris.deserialize.arrow.async";
boolean DORIS_DESERIALIZE_ARROW_ASYNC_DEFAULT = false;
String DORIS_DESERIALIZE_QUEUE_SIZE = "doris.deserialize.queue.size";
int DORIS_DESERIALIZE_QUEUE_SIZE_DEFAULT = 64;
String DORIS_WRITE_FIELDS = "doris.write.fields";
String DORIS_SINK_BATCH_SIZE = "doris.sink.batch.size";
int SINK_BATCH_SIZE_DEFAULT = 100000;
String DORIS_SINK_MAX_RETRIES = "doris.sink.max-retries";
int SINK_MAX_RETRIES_DEFAULT = 0;
String DORIS_MAX_FILTER_RATIO = "doris.max.filter.ratio";
String STREAM_LOAD_PROP_PREFIX = "doris.sink.properties.";
String DORIS_SINK_TASK_PARTITION_SIZE = "doris.sink.task.partition.size";
/**
* Set doris sink task partition size. If you set a small coalesce size and you don't have the action operations, this may result in the same parallelism in your computation.
* To avoid this, you can use repartition operations. This will add a shuffle step, but means the current upstream partitions will be executed in parallel.
*/
String DORIS_SINK_TASK_USE_REPARTITION = "doris.sink.task.use.repartition";
boolean DORIS_SINK_TASK_USE_REPARTITION_DEFAULT = false;
String DORIS_SINK_BATCH_INTERVAL_MS = "doris.sink.batch.interval.ms";
int DORIS_SINK_BATCH_INTERVAL_MS_DEFAULT = 50;
/**
* set types to ignore, split by comma
* e.g.
* "doris.ignore-type"="bitmap,hll"
*/
String DORIS_IGNORE_TYPE = "doris.ignore-type";
String DORIS_SINK_ENABLE_2PC = "doris.sink.enable-2pc";
boolean DORIS_SINK_ENABLE_2PC_DEFAULT = false;
/**
* pass through json data when sink to doris in streaming mode
*/
String DORIS_SINK_STREAMING_PASSTHROUGH = "doris.sink.streaming.passthrough";
boolean DORIS_SINK_STREAMING_PASSTHROUGH_DEFAULT = false;
/**
* txnId commit or abort interval
*/
String DORIS_SINK_TXN_INTERVAL_MS = "doris.sink.txn.interval.ms";
int DORIS_SINK_TXN_INTERVAL_MS_DEFAULT = 50;
/**
* txnId commit or abort retry times
*/
String DORIS_SINK_TXN_RETRIES = "doris.sink.txn.retries";
int DORIS_SINK_TXN_RETRIES_DEFAULT = 3;
/**
* Use automatic redirection of fe without explicitly obtaining the be list
*/
String DORIS_SINK_AUTO_REDIRECT = "doris.sink.auto-redirect";
boolean DORIS_SINK_AUTO_REDIRECT_DEFAULT = false;
/**
* compress_type
*/
String DORIS_SINK_DATA_COMPRESS_TYPE = "doris.sink.properties.compress_type";
}