Documentation
¶
Index ¶
- Constants
- func IsSameClustering(meta *bigquery.TableMetadata, asset *pipeline.Asset) bool
- func IsSamePartitioning(meta *bigquery.TableMetadata, asset *pipeline.Asset) bool
- func NewMaterializer(fullRefresh bool) *pipeline.Materializer
- type ADCCredentialError
- type AcceptedValuesCheck
- type BasicOperator
- type Client
- func (d *Client) BuildTableExistsQuery(tableName string) (string, error)
- func (d *Client) CreateDataSetIfNotExist(asset *pipeline.Asset, ctx context.Context) error
- func (d *Client) DropTableOnMismatch(ctx context.Context, tableName string, asset *pipeline.Asset) error
- func (d *Client) GetColumns(ctx context.Context, databaseName, tableName string) ([]*ansisql.DBColumn, error)
- func (d *Client) GetDatabaseSummary(ctx context.Context) (*ansisql.DBDatabase, error)
- func (d *Client) GetDatabases(ctx context.Context) ([]string, error)
- func (d *Client) GetIngestrURI() (string, error)
- func (d *Client) GetTableSummary(ctx context.Context, tableName string, schemaOnly bool) (*diff.TableSummaryResult, error)
- func (d *Client) GetTables(ctx context.Context, databaseName string) ([]string, error)
- func (d *Client) IsMaterializationTypeMismatch(ctx context.Context, meta *bigquery.TableMetadata, asset *pipeline.Asset) bool
- func (d *Client) IsPartitioningOrClusteringMismatch(ctx context.Context, meta *bigquery.TableMetadata, asset *pipeline.Asset) bool
- func (d *Client) IsValid(ctx context.Context, query *query.Query) (bool, error)
- func (d *Client) Location() string
- func (d *Client) NewDataTransferClient(ctx context.Context) (*datatransfer.Client, error)
- func (d *Client) Ping(ctx context.Context) error
- func (d *Client) ProjectID() string
- func (d *Client) QueryDryRun(ctx context.Context, queryObj *query.Query) (*bigquery.QueryStatistics, error)
- func (d *Client) RunQueryWithoutResult(ctx context.Context, query *query.Query) error
- func (d *Client) Select(ctx context.Context, query *query.Query) ([][]interface{}, error)
- func (d *Client) SelectWithSchema(ctx context.Context, queryObj *query.Query) (*query.QueryResult, error)
- func (d *Client) UpdateTableMetadataIfNotExist(ctx context.Context, asset *pipeline.Asset) error
- type ColumnCheckOperator
- type Config
- type DB
- type DryRunner
- type DryRunnerQuerier
- type MetadataPushOperator
- type MetadataUpdater
- type NoMetadataUpdatedError
- type PatternCheck
- type Querier
- type QuerySensor
- type Selector
- type TableManager
- type TableSensor
Constants ¶
const CharacterLimit = 10000
Variables ¶
This section is empty.
Functions ¶
func IsSameClustering ¶ added in v0.11.129
func IsSameClustering(meta *bigquery.TableMetadata, asset *pipeline.Asset) bool
func IsSamePartitioning ¶ added in v0.11.129
func IsSamePartitioning(meta *bigquery.TableMetadata, asset *pipeline.Asset) bool
func NewMaterializer ¶ added in v0.5.0
func NewMaterializer(fullRefresh bool) *pipeline.Materializer
Types ¶
type ADCCredentialError ¶ added in v0.11.327
type ADCCredentialError struct {
ClientType string // e.g., "BigQuery client" or "Data Transfer client"
OriginalErr error
}
ADCCredentialError represents an error when Application Default Credentials cannot be found or are invalid.
func (*ADCCredentialError) Error ¶ added in v0.11.327
func (e *ADCCredentialError) Error() string
func (*ADCCredentialError) Unwrap ¶ added in v0.11.327
func (e *ADCCredentialError) Unwrap() error
type AcceptedValuesCheck ¶
type AcceptedValuesCheck struct {
// contains filtered or unexported fields
}
func (*AcceptedValuesCheck) Check ¶
func (c *AcceptedValuesCheck) Check(ctx context.Context, ti *scheduler.ColumnCheckInstance) error
type BasicOperator ¶
type BasicOperator struct {
// contains filtered or unexported fields
}
func NewBasicOperator ¶
func NewBasicOperator(conn config.ConnectionGetter, extractor query.QueryExtractor, materializer materializer, parser *sqlparser.SQLParser) *BasicOperator
func (BasicOperator) Run ¶
func (o BasicOperator) Run(ctx context.Context, ti scheduler.TaskInstance) error
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
func (*Client) BuildTableExistsQuery ¶ added in v0.11.172
func (*Client) CreateDataSetIfNotExist ¶ added in v0.11.129
func (*Client) DropTableOnMismatch ¶ added in v0.11.132
func (*Client) GetColumns ¶ added in v0.11.247
func (d *Client) GetColumns(ctx context.Context, databaseName, tableName string) ([]*ansisql.DBColumn, error)
GetColumns retrieves column information for a specific table in a BigQuery dataset. It takes a context, dataset name, and table name as parameters and returns a slice of column information. The method handles errors appropriately and returns an error if the table doesn't exist.
func (*Client) GetDatabaseSummary ¶ added in v0.11.242
func (*Client) GetDatabases ¶ added in v0.11.247
func (*Client) GetIngestrURI ¶ added in v0.7.0
func (*Client) GetTableSummary ¶ added in v0.11.224
func (*Client) GetTables ¶ added in v0.11.247
GetTables retrieves all table names from a BigQuery dataset (database). It takes a context and dataset name as parameters and returns a slice of table names. The method handles errors appropriately and returns an empty slice if the dataset has no tables.
func (*Client) IsMaterializationTypeMismatch ¶ added in v0.11.132
func (*Client) IsPartitioningOrClusteringMismatch ¶ added in v0.11.132
func (*Client) NewDataTransferClient ¶ added in v0.11.280
func (*Client) Ping ¶ added in v0.11.106
Test runs a simple query (SELECT 1) to validate the connection.
func (*Client) QueryDryRun ¶ added in v0.11.281
func (*Client) RunQueryWithoutResult ¶
func (*Client) SelectWithSchema ¶ added in v0.11.53
type ColumnCheckOperator ¶
type ColumnCheckOperator struct {
// contains filtered or unexported fields
}
func NewColumnCheckOperator ¶
func NewColumnCheckOperator(manager config.ConnectionGetter) (*ColumnCheckOperator, error)
func (ColumnCheckOperator) Run ¶
func (o ColumnCheckOperator) Run(ctx context.Context, ti scheduler.TaskInstance) error
type Config ¶
type Config struct {
ProjectID string `envconfig:"BIGQUERY_PROJECT"`
CredentialsFilePath string `envconfig:"BIGQUERY_CREDENTIALS_FILE"`
CredentialsJSON string
Credentials *google.Credentials
Location string `envconfig:"BIGQUERY_LOCATION"`
// Add support for Application Default Credentials
UseApplicationDefaultCredentials bool `envconfig:"BIGQUERY_USE_ADC"`
}
func (Config) GetConnectionURI ¶ added in v0.6.13
func (Config) GetIngestrURI ¶ added in v0.7.0
type DB ¶
type DB interface {
Querier
Selector
MetadataUpdater
TableManager
}
type DryRunner ¶ added in v0.11.281
type DryRunner struct {
ConnectionGetter connectionGetter
QueryExtractor queryExtractor
}
type DryRunnerQuerier ¶ added in v0.11.281
type MetadataPushOperator ¶ added in v0.9.0
type MetadataPushOperator struct {
// contains filtered or unexported fields
}
func NewMetadataPushOperator ¶ added in v0.9.0
func NewMetadataPushOperator(conn config.ConnectionGetter) *MetadataPushOperator
func (*MetadataPushOperator) Run ¶ added in v0.9.0
func (o *MetadataPushOperator) Run(ctx context.Context, ti scheduler.TaskInstance) error
type MetadataUpdater ¶ added in v0.9.0
type NoMetadataUpdatedError ¶ added in v0.9.0
type NoMetadataUpdatedError struct{}
func (NoMetadataUpdatedError) Error ¶ added in v0.9.0
func (m NoMetadataUpdatedError) Error() string
type PatternCheck ¶ added in v0.10.1
type PatternCheck struct {
// contains filtered or unexported fields
}
func (*PatternCheck) Check ¶ added in v0.10.1
func (c *PatternCheck) Check(ctx context.Context, ti *scheduler.ColumnCheckInstance) error
type QuerySensor ¶ added in v0.11.171
type QuerySensor struct {
// contains filtered or unexported fields
}
func NewQuerySensor ¶ added in v0.11.171
func NewQuerySensor(conn config.ConnectionGetter, extractor query.QueryExtractor, sensorMode string) *QuerySensor
func (*QuerySensor) Run ¶ added in v0.11.171
func (o *QuerySensor) Run(ctx context.Context, ti scheduler.TaskInstance) error
type TableManager ¶ added in v0.11.129
type TableManager interface {
IsPartitioningOrClusteringMismatch(ctx context.Context, meta *bigquery.TableMetadata, asset *pipeline.Asset) bool
CreateDataSetIfNotExist(asset *pipeline.Asset, ctx context.Context) error
IsMaterializationTypeMismatch(ctx context.Context, meta *bigquery.TableMetadata, asset *pipeline.Asset) bool
DropTableOnMismatch(ctx context.Context, tableName string, asset *pipeline.Asset) error
BuildTableExistsQuery(tableName string) (string, error)
}
type TableSensor ¶ added in v0.11.172
type TableSensor struct {
// contains filtered or unexported fields
}
func NewTableSensor ¶ added in v0.11.172
func NewTableSensor(conn config.ConnectionGetter, sensorMode string, extractor query.QueryExtractor) *TableSensor
func (*TableSensor) Run ¶ added in v0.11.172
func (ts *TableSensor) Run(ctx context.Context, ti scheduler.TaskInstance) error