redshift

package
v1.12.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 16, 2023 License: AGPL-3.0 Imports: 26 Imported by: 0

Documentation

Index

Constants

View Source
const (
	RSHost     = "host"
	RSPort     = "port"
	RSDbName   = "database"
	RSUserName = "user"
	RSPassword = "password"
)

String constants for redshift destination config

Variables

This section is empty.

Functions

func CheckAndIgnoreColumnAlreadyExistError added in v1.7.0

func CheckAndIgnoreColumnAlreadyExistError(err error) bool

func ColumnsWithDataTypes

func ColumnsWithDataTypes(columns model.TableSchema, prefix string) string

Types

type Redshift

type Redshift struct {
	DB        *sqlmiddleware.DB
	Namespace string
	Warehouse model.Warehouse
	Uploader  warehouseutils.Uploader
	// contains filtered or unexported fields
}

func New added in v1.8.0

func New(conf *config.Config, log logger.Logger, stat stats.Stats) *Redshift

func (*Redshift) AddColumns

func (rs *Redshift) AddColumns(ctx context.Context, tableName string, columnsInfo []warehouseutils.ColumnInfo) error

func (*Redshift) AlterColumn

func (rs *Redshift) AlterColumn(ctx context.Context, tableName, columnName, columnType string) (model.AlterTableResponse, error)

func (*Redshift) Cleanup

func (rs *Redshift) Cleanup(ctx context.Context)

func (*Redshift) Connect

func (rs *Redshift) Connect(ctx context.Context, warehouse model.Warehouse) (client.Client, error)

func (*Redshift) CrashRecover

func (rs *Redshift) CrashRecover(ctx context.Context)

func (*Redshift) CreateSchema

func (rs *Redshift) CreateSchema(ctx context.Context) (err error)

func (*Redshift) CreateTable

func (rs *Redshift) CreateTable(ctx context.Context, tableName string, columns model.TableSchema) (err error)

func (*Redshift) DeleteBy

func (rs *Redshift) DeleteBy(ctx context.Context, tableNames []string, params warehouseutils.DeleteByParams) (err error)

func (*Redshift) DownloadIdentityRules

func (*Redshift) DownloadIdentityRules(context.Context, *misc.GZipWriter) (err error)

func (*Redshift) DropTable

func (rs *Redshift) DropTable(ctx context.Context, tableName string) (err error)

func (*Redshift) ErrorMappings

func (*Redshift) ErrorMappings() []model.JobError

func (*Redshift) FetchSchema

func (rs *Redshift) FetchSchema(ctx context.Context) (model.Schema, model.Schema, error)

FetchSchema queries redshift and returns the schema associated with provided namespace

func (*Redshift) GetTotalCountInTable

func (rs *Redshift) GetTotalCountInTable(ctx context.Context, tableName string) (int64, error)

func (*Redshift) IsEmpty

func (*Redshift) IsEmpty(context.Context, model.Warehouse) (empty bool, err error)

func (*Redshift) LoadIdentityMappingsTable

func (*Redshift) LoadIdentityMappingsTable(context.Context) (err error)

func (*Redshift) LoadIdentityMergeRulesTable

func (*Redshift) LoadIdentityMergeRulesTable(context.Context) (err error)

func (*Redshift) LoadTable

func (rs *Redshift) LoadTable(ctx context.Context, tableName string) error

func (*Redshift) LoadTestTable

func (rs *Redshift) LoadTestTable(ctx context.Context, location, tableName string, _ map[string]interface{}, format string) (err error)

func (*Redshift) LoadUserTables

func (rs *Redshift) LoadUserTables(ctx context.Context) map[string]error

func (*Redshift) SetConnectionTimeout

func (rs *Redshift) SetConnectionTimeout(timeout time.Duration)

func (*Redshift) Setup

func (rs *Redshift) Setup(ctx context.Context, warehouse model.Warehouse, uploader warehouseutils.Uploader) (err error)

func (*Redshift) TestConnection

func (rs *Redshift) TestConnection(ctx context.Context, _ model.Warehouse) error

type RedshiftCredentials

type RedshiftCredentials struct {
	Host     string
	Port     string
	DbName   string
	Username string
	Password string

	TunnelInfo *tunnelling.TunnelInfo
	// contains filtered or unexported fields
}

type S3Manifest

type S3Manifest struct {
	Entries []S3ManifestEntry `json:"entries"`
}

type S3ManifestEntry

type S3ManifestEntry struct {
	Url       string                  `json:"url"`
	Mandatory bool                    `json:"mandatory"`
	Metadata  S3ManifestEntryMetadata `json:"meta"`
}

type S3ManifestEntryMetadata

type S3ManifestEntryMetadata struct {
	ContentLength int64 `json:"content_length"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL