e04ed9c211
CF: Deploy Dev Docs / deploy (push) Has been cancelled
Sync Labels / build (push) Has been cancelled
tests / unit tests (macos-latest) (push) Has been cancelled
tests / unit tests (windows-latest) (push) Has been cancelled
tests / unit tests (ubuntu-latest) (push) Has been cancelled
120 lines
5.2 KiB
Markdown
120 lines
5.2 KiB
Markdown
---
|
|
title: "SingleStore Source"
|
|
linkTitle: "Source"
|
|
type: docs
|
|
weight: 1
|
|
description: >
|
|
SingleStore is the cloud-native database built with speed and scale to power data-intensive applications.
|
|
no_list: true
|
|
---
|
|
|
|
## About
|
|
|
|
[SingleStore][singlestore-docs] is a distributed SQL database built to power
|
|
intelligent applications. It is both relational and multi-model, enabling
|
|
developers to easily build and scale applications and workloads.
|
|
|
|
SingleStore is built around Universal Storage which combines in-memory rowstore
|
|
and on-disk columnstore data formats to deliver a single table type that is
|
|
optimized to handle both transactional and analytical workloads.
|
|
|
|
[singlestore-docs]: https://docs.singlestore.com/
|
|
|
|
|
|
|
|
## Available Tools
|
|
|
|
{{< list-tools >}}
|
|
|
|
## Requirements
|
|
|
|
### Database User
|
|
|
|
This source only uses standard authentication. You will need to [create a
|
|
database user][singlestore-user] to login to the database with.
|
|
|
|
[singlestore-user]:
|
|
https://docs.singlestore.com/cloud/reference/sql-reference/security-management-commands/create-user/
|
|
|
|
## Example
|
|
|
|
### Basic
|
|
|
|
By default, connections use `tls=preferred`, which enables SSL/TLS if the server
|
|
supports it and falls back to unencrypted otherwise.
|
|
|
|
```yaml
|
|
kind: source
|
|
name: my-singlestore-source
|
|
type: singlestore
|
|
host: 127.0.0.1
|
|
port: 3306
|
|
database: my_db
|
|
user: ${USER_NAME}
|
|
password: ${PASSWORD}
|
|
queryTimeout: 30s # Optional: query timeout duration
|
|
```
|
|
|
|
### With SSL required
|
|
|
|
```yaml
|
|
kind: sources
|
|
name: my-singlestore-source
|
|
type: singlestore
|
|
host: svc-abc123.svc.singlestore.com
|
|
port: 3306
|
|
database: my_db
|
|
user: ${USER_NAME}
|
|
password: ${PASSWORD}
|
|
connectionParams:
|
|
tls: "true" # Require TLS and verify the server certificate
|
|
```
|
|
|
|
### With SSL verification disabled
|
|
|
|
```yaml
|
|
kind: sources
|
|
name: my-singlestore-source
|
|
type: singlestore
|
|
host: svc-abc123.svc.singlestore.com
|
|
port: 3306
|
|
database: my_db
|
|
user: ${USER_NAME}
|
|
password: ${PASSWORD}
|
|
connectionParams:
|
|
tls: "skip-verify" # Require TLS but skip server certificate verification
|
|
```
|
|
|
|
### Without SSL
|
|
|
|
```yaml
|
|
kind: sources
|
|
name: my-singlestore-source
|
|
type: singlestore
|
|
host: 127.0.0.1
|
|
port: 3306
|
|
database: my_db
|
|
user: ${USER_NAME}
|
|
password: ${PASSWORD}
|
|
connectionParams:
|
|
tls: "false" # Disable TLS
|
|
```
|
|
|
|
{{< notice tip >}}
|
|
Use environment variable replacement with the format ${ENV_NAME}
|
|
instead of hardcoding your secrets into the configuration file.
|
|
{{< /notice >}}
|
|
|
|
## Reference
|
|
|
|
| **field** | **type** | **required** | **description** |
|
|
|------------------|:-----------------:|:------------:|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|
| type | string | true | Must be "singlestore". |
|
|
| host | string | true | IP address or hostname to connect to (e.g. "127.0.0.1"). |
|
|
| port | string | true | Port to connect to (e.g. "3306"). |
|
|
| database | string | true | Name of the SingleStore database to connect to (e.g. "my_db"). |
|
|
| user | string | true | Name of the SingleStore database user to connect as (e.g. "admin"). |
|
|
| password | string | true | Password of the SingleStore database user. |
|
|
| queryTimeout | string | false | Maximum time to wait for query execution (e.g. "30s", "2m"). By default, no timeout is applied. |
|
|
| connectionParams | map[string]string | false | Additional driver parameters appended to the DSN. Supports any [go-sql-driver/mysql DSN parameter](https://github.com/go-sql-driver/mysql#dsn-data-source-name). Commonly used for SSL configuration (see `tls` values below). |
|