Skip to main content

Source

Timeplus integrates with a wide range of systems as data sources, such as Apache Kafka.

You can define one or more sources to set up the background jobs to load data into Timeplus. Please check the Data Ingestion section for more details.

Source API

If you need to call an API to create a source, here are the references.

kafka

refer to https://kafka.apache.org/

PropertyRequiredDescriptionDefault
brokersyesSpecifies the list of broker addresses. This is a comma-separated string. such as kafka1:9092,kafka2:9092,kafka3:9092
topicyesSpecifies the Kafka topic to connect
offsetyesSpecifies the Kafka offset configuration. support latest,earliest
data_typeyesSpecifies the data type to use for creating the stream. support json,text,avro,debezium-json,debezium-json-upsert
groupnoSpecifies the Kafka consumer group. use the source uuid with prefix timeplus-source- as the default value if user does not specify ittimeplus-source-<uuid>
saslnoSpecifies the Simple Authentication and Security Layer (SASL) mechanism for authentication. support none,plain,scram-sha-256,scram-sha-512none
usernamenoSpecifies the username for authentication
passwordnoSpecifies the password for authentication
tls.disablenoIf set to true, disables TLS encryptionfalse
tls.skip_verify_servernoIf set to true, skips server certificate verification when using TLSfalse
schema_registry_addressnoSpecifies the URL of the Schema Registry for Kafka, only applies when the data_type is avro
schema_registry_api_keynoSpecifies the API key for Schema Registry authentication
schema_registry_api_secretnoSpecifies the API secret for Schema Registry authentication

stream_generator

a source that generates randome data for test

PropertyRequiredDescriptionDefault
templateyesSpecifies the template used to generate data, support iot,user_logins,devops
intervalnoSpecifies the event interval. for example 200ms200ms

websocket

refer to https://developer.mozilla.org/en-US/docs/Web/API/WebSocket

PropertyRequiredDescriptionDefault
urlyesSpecifies the URL of the websocket server url
open_messagenoAn optional message to send to the server upon connection.
open_message_typenoAn optional flag to indicate the data type of open_message. support text binarytext
data_typeyesSpecifies the data type to use for creating the stream. support json,text,

nats

refer to https://docs.nats.io/nats-concepts/what-is-nats

PropertyRequiredDescriptionDefault
urlyesA list of URLs to connect to. for example [nats://127.0.0.1:4222]
subjectyesA subject to consume from. Supports wildcards for consuming multiple subjects.
queuenoAn optional queue group to consume as.
nak_delaynoAn optional delay duration on redelivering a message when negatively acknowledged.
prefetch_countnoThe maximum number of messages to pull at a time.524288
data_typeyesSpecifies the data type to use for creating the stream. support json,text,
tls.disablenoIf set to true, disables TLS encryptionfalse
tls.skip_verify_servernoIf set to true, skips server certificate verification when using TLSfalse

nats_jetstream

refer to https://docs.nats.io/nats-concepts/jetstream

PropertyRequiredDescriptionDefault
urlyesA list of URLs to connect to. for example [nats://127.0.0.1:4222]
subjectyesA subject to consume from. Supports wildcards for consuming multiple subjects.
queuenoAn optional queue group to consume as.
durablenoPreserve the state of your consumer under a durable name.
streamnoA stream to consume from. Either a subject or stream must be specified..
delivernoDetermines which messages to deliver when consuming without a durable subscriber. support all lastall
bindnoAn bool indicates that the subscription should use an existing consumer.
ack_waitnoThe maximum amount of time NATS server should wait for an ack from consumer.30s
max_ack_pendingnoThe maximum number of outstanding acks to be allowed before consuming is halted.1024
data_typeyesSpecifies the data type to use for creating the stream. support json,text,
tls.disablenoIf set to true, disables TLS encryptionfalse
tls.skip_verify_servernoIf set to true, skips server certificate verification when using TLSfalse

pulsar

refer to https://pulsar.apache.org/

PropertyRequiredDescriptionDefault
topicyesSpecifies the topic of the pulsar to connect to
broker_urlyesSpecifies the URL of the broker to connect to
auth_typeyesSpecifies the authentication type to use. support ,oauth2,token
auth_paramsnoSpecifies authentication parameters as key-value pairs{}

livepeer

refer to https://livepeer.org/

PropertyRequiredDescriptionDefault
intervalyesSpecifies the pulling interval to livepeer api. for example 300s
api_keyyesSpecifies the API key of livepeer
data_typeyesSpecifies the data type to use for creating the stream. support json,text

ably

refer to https://ably.com/

PropertyRequiredDescriptionDefault
api_keyyesThe api_key property is a string used to authenticate and authorize access to the Ably service. It represents the API key associated with the Ably account, which is required for making authenticated requests to Ably's services
channelyesThe channel property specifies the name of the channel to which messages will be sent or from which messages will be received. Channels in Ably are used to group and categorize messages. This property allows you to select the target channel for your interactions