plugin

package
v0.0.0-...-8561271 Latest Latest
Warning

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

Go to latest
Published: Feb 22, 2025 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var BaseGetNextPk = `
select a.%s as nextId
from (
	select %s
	from %s.%s
	where %s > %d
	limit %d
) as a
order by %s desc
limit 1
`
View Source
var BaseGetTrinoNextPk = `
select a.%s as nextId
from (
	select %s
	from %s.%s
	where %s > %d and %s
	limit %d
) as a
order by %s desc
limit 1
`
View Source
var BaseInsertSql = `
INSERT INTO %s.%s (%s) VALUES %s
`
View Source
var BaseQuery = `
select *
from %s.%s
where %s>? and %s<=?
`
View Source
var BaseQueryMinMax = `
select min(%s)-1 as minId,max(%s) as maxId
from %s.%s
`
View Source
var BaseQueryTrino = `
select *
from %s.%s
where %s>? and %s<=? and %s
`
View Source
var BaseQueryTrinoMinMax = `
select min(%s)-1 as minId,max(%s) as maxId
from %s.%s
where %s
`
View Source
var Readers = make(map[string]func() Reader, 0)
View Source
var Writers = make(map[string]func() Writer, 0)

Functions

func RegisterReader

func RegisterReader(readerType string, factory func() Reader) error

func RegisterWriter

func RegisterWriter(writerType string, factory func() Writer) error

Types

type MysqlReader

type MysqlReader struct {
	// contains filtered or unexported fields
}

func (*MysqlReader) Close

func (m *MysqlReader) Close()

func (*MysqlReader) Connect

func (m *MysqlReader) Connect(config map[string]interface{}) error

func (*MysqlReader) ExecContext

func (m *MysqlReader) ExecContext(ctx context.Context, query string, args ...interface{}) (sql.Result, error)

func (*MysqlReader) ExecuteContext

func (m *MysqlReader) ExecuteContext(ctx context.Context, sql string, args ...interface{}) (int64, error)

func (*MysqlReader) QueryContext

func (m *MysqlReader) QueryContext(ctx context.Context, query string, args ...interface{}) ([]map[string]interface{}, []string, error)

func (*MysqlReader) Read

func (m *MysqlReader) Read(ctx context.Context, wid int, j *job.Job, finishedChan chan int, tm *job.TaskMeta, writer Writer) *job.JobResult

func (*MysqlReader) SplitJobParams

func (m *MysqlReader) SplitJobParams(ctx context.Context, tm *job.TaskMeta) (Splits []*job.JobParam)

func (*MysqlReader) Write

func (m *MysqlReader) Write(ctx context.Context, wid int, j *job.Job, datas []map[string]interface{}, tm *job.TaskMeta) *job.JobResult

type Reader

type Reader interface {
	Connect(config map[string]interface{}) error
	SplitJobParams(ctx context.Context, tm *job.TaskMeta) []*job.JobParam
	Read(ctx context.Context, wid int, job *job.Job, finishedChan chan int, tm *job.TaskMeta, writer Writer) *job.JobResult
	Close()
}

func GetReader

func GetReader(readerType string) (Reader, error)

func NewMysqlReader

func NewMysqlReader() Reader

func NewTrinoReader

func NewTrinoReader() Reader

type TrinoReader

type TrinoReader struct {
	MysqlReader
	// contains filtered or unexported fields
}

func (*TrinoReader) Close

func (t *TrinoReader) Close()

func (*TrinoReader) Connect

func (t *TrinoReader) Connect(config map[string]interface{}) error

func (*TrinoReader) Read

func (t *TrinoReader) Read(ctx context.Context, wid int, j *job.Job, finishedChan chan int, tm *job.TaskMeta, writer Writer) *job.JobResult

func (*TrinoReader) SplitJobParams

func (t *TrinoReader) SplitJobParams(ctx context.Context, tm *job.TaskMeta) (Splits []*job.JobParam)

type Writer

type Writer interface {
	Connect(config map[string]interface{}) error
	Write(ctx context.Context, wod int, job *job.Job, datas []map[string]interface{}, tm *job.TaskMeta) *job.JobResult
	Close()
}

func GetWriter

func GetWriter(writerType string) (Writer, error)

func NewMysqlWriter

func NewMysqlWriter() Writer

Jump to

Keyboard shortcuts

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