Connectors
A connector is the set of Python classes Tabsdata uses to read from or write to one external system. Every built-in connector is part of the tabsdatak.conn package and provides a source class, a destination class, or both, along with the connection types that hold the system's address and credentials.
A publisher uses a connector's source class to read from the external system and write into Tabsdata tables. A subscriber uses a connector's destination class to read from Tabsdata tables and write out to the external system. Neither class stores credentials. The address and credentials live on the connection of the collection the function is registered in, so the same connection is shared by every publisher or subscriber in that collection.
Kafka and the three CDC connectors provide a stream source class instead of a source class. A stream publisher uses a stream source to consume the external system continuously, and runs each time a batch of messages or changes rolls over instead of on a manual, cron, or table trigger.
Built-in connectors
Each connector's page covers its connection fields and the options of its classes, and links to a full walkthrough in Tutorials.
| Connector | Publisher | Stream publisher | Subscriber |
|---|---|---|---|
| Amazon S3 | S3Src | S3Dest | |
| Apache Druid | DruidDest | ||
| Azure Blob Storage | AzureBlobSrc | AzureBlobDest | |
| BigQuery | BigQueryDest | ||
| ClickHouse | ClickHouseDest | ||
| Databricks | DatabricksSrc | DatabricksDest | |
| Db2 | Db2Src | Db2Dest | |
| Db2 CDC | Db2CdcStreamSrc | ||
| Google Cloud Storage | GCSSrc | GCSDest | |
| Kafka | KafkaStreamSrc | ||
| Local File System | LocalFileSrc | LocalFileDest | |
| MariaDB | MySQLSrc | MySQLDest | |
| MongoDB | MongoDBDest | ||
| MSSQL | MSSQLSrc | MSSQLDest | |
| MySQL | MySQLSrc | MySQLDest | |
| MySQL CDC | MySQLCdcStreamSrc | ||
| Oracle | OracleSrc | OracleDest | |
| Postgres | PostgresSrc | PostgresDest | |
| Postgres CDC | PostgresCdcStreamSrc | ||
| Salesforce | SalesforceSrc, SalesforceReportSrc | ||
| Snowflake | SnowflakeDest | ||
| StarRocks | StarRocksDest |
The MariaDB, MySQL, Oracle, and Postgres connectors need a database driver that Tabsdata does not redistribute. See Installing Third-Party Database Drivers to add the driver to your Tabsdata server.
Other systems
To connect a system that has no built-in connector, write a custom connector. See Custom Connectors.