Documentation ¶
Index ¶
- Constants
- Variables
- func CaptureRegexGroup(r *regexp.Regexp, pattern string) (groups map[string]string, err error)
- func CreateAWSSessionConfig(destination *backendconfig.DestinationT, serviceName string) (*awsutil.SessionConfig, error)
- func CtxWithUploadID(ctx context.Context, uid int64) context.Context
- func DestStat(statType, statName, id string) stats.Measurement
- func DoubleQuoteAndJoinByComma(elems []string) string
- func ExtractTunnelInfoFromDestinationConfig(config map[string]interface{}) *tunnelling.TunnelInfo
- func GetAzureBlobLocation(location string) string
- func GetAzureBlobLocationFolder(location string) string
- func GetColumnsFromTableSchema(schema model.TableSchema) []string
- func GetConfigValue(key string, warehouse model.Warehouse) (val string)
- func GetConfigValueAsMap(key string, config map[string]interface{}) map[string]interface{}
- func GetConfigValueBoolString(key string, warehouse model.Warehouse) string
- func GetConnectionTimeout(destType, destID string) time.Duration
- func GetDateRangeList(start, end time.Time, dateFormat string) (dateRange []string)
- func GetGCSLocation(location string, options GCSLocationOptions) string
- func GetGCSLocationFolder(location string, options GCSLocationOptions) string
- func GetGCSLocations(loadFiles []LoadFile, options GCSLocationOptions) (gcsLocations []string)
- func GetLoadFileFormat(loadFileType string) string
- func GetLoadFileType(destType string) string
- func GetObjectFolder(provider, location string) (folder string)
- func GetObjectFolderForDeltalake(provider, location string) (folder string)
- func GetObjectLocation(provider, location string) (objectLocation string)
- func GetObjectName(location string, providerConfig interface{}, objectProvider string) (objectName string, err error)
- func GetQueryType(query string) (string, bool)
- func GetS3Location(location string) (s3Location, region string)
- func GetS3LocationFolder(location string) string
- func GetSSLKeyDirPath(destinationID string) (whSSLRootDir string)
- func GetTablePathInObjectStorage(namespace, tableName string) string
- func GetTempFileExtension(destType string) string
- func GetTemporaryS3Cred(destination *backendconfig.DestinationT) (string, string, string, error)
- func GetTimeWindow(ts time.Time) time.Time
- func GetWarehouseIdentifier(destType, sourceID, destinationID string) string
- func IDResolutionEnabled() bool
- func IdentityMappingsTableName(warehouse model.Warehouse) string
- func IdentityMappingsUniqueMappingConstraintName(warehouse model.Warehouse) string
- func IdentityMappingsWarehouseTableName(provider string) string
- func IdentityMergeRulesTableName(warehouse model.Warehouse) string
- func IdentityMergeRulesWarehouseTableName(provider string) string
- func Init()
- func JSONSchemaToMap(rawMsg json.RawMessage) model.Schema
- func JoinWithFormatting(keys []string, format func(idx int, str string) string, separator string) string
- func NewCounterStat(name string, extraTags ...Tag) stats.Measurement
- func NewTimerStat(name string, extraTags ...Tag) stats.Measurement
- func ObjectStorageType(destType string, config interface{}, useRudderStorage bool) string
- func RandHex() string
- func ReadAsBool(key string, config map[string]interface{}) bool
- func SanitizeJSON(input json.RawMessage) json.RawMessage
- func SanitizeString(input string) string
- func SnowflakeCloudProvider(config interface{}) string
- func SortColumnKeysFromColumnMap(columnMap model.TableSchema) []string
- func StagingTableName(provider, tableName string, tableNameLimit int) string
- func StagingTablePrefix(provider string) string
- func TimingFromJSONString(str sql.NullString) (status string, recordedTime time.Time)
- func ToProviderCase(provider, str string) string
- func ToSafeNamespace(provider, name string) string
- func UploadIDFromCtx(ctx context.Context) (int64, bool)
- func WHCounterStat(name string, warehouse *model.Warehouse, extraTags ...Tag) stats.Measurement
- type ColumnInfo
- type DeleteByMetaData
- type DeleteByParams
- type Destination
- type FetchTableInfo
- type FilterBy
- type GCSLocationOptions
- type GetLoadFilesOptions
- type KeyValue
- type LoadFile
- type QueryResult
- type Schema
- type SourceIDDestinationID
- type TableSchemaDiff
- type Tag
- type Uploader
- type WriteSSLKeyError
Constants ¶
const ( RS = "RS" BQ = "BQ" SNOWFLAKE = "SNOWFLAKE" POSTGRES = "POSTGRES" CLICKHOUSE = "CLICKHOUSE" MSSQL = "MSSQL" AzureSynapse = "AZURE_SYNAPSE" DELTALAKE = "DELTALAKE" S3Datalake = "S3_DATALAKE" GCSDatalake = "GCS_DATALAKE" AzureDatalake = "AZURE_DATALAKE" )
const ( StagingFileSucceededState = "succeeded" StagingFileFailedState = "failed" StagingFileExecutingState = "executing" StagingFileAbortedState = "aborted" StagingFileWaitingState = "waiting" )
const ( WarehouseStagingFilesTable = "wh_staging_files" WarehouseLoadFilesTable = "wh_load_files" WarehouseUploadsTable = "wh_uploads" WarehouseTableUploadsTable = "wh_table_uploads" WarehouseSchemasTable = "wh_schemas" WarehouseAsyncJobTable = "wh_async_jobs" )
warehouse table names
const ( DiscardsTable = "rudder_discards" IdentityMergeRulesTable = "rudder_identity_merge_rules" IdentityMappingsTable = "rudder_identity_mappings" SyncFrequency = "syncFrequency" SyncStartAt = "syncStartAt" ExcludeWindow = "excludeWindow" ExcludeWindowStartTime = "excludeWindowStartTime" ExcludeWindowEndTime = "excludeWindowEndTime" )
const ( UsersTable = "users" UsersView = "users_view" IdentifiesTable = "identifies" )
const ( WAREHOUSE = "warehouse" RudderMissingDatatype = "warehouse_rudder_missing_datatype" MissingDatatype = "<missing_datatype>" )
const ( S3 = "S3" AzureBlob = "AZURE_BLOB" GCS = "GCS" MINIO = "MINIO" )
Object storages
const ( AWS = "AWS" GCP = "GCP" AZURE = "AZURE" )
Cloud providers
const ( AWSAccessKey = "accessKey" AWSAccessSecret = "accessKeyID" AWSBucketNameConfig = "bucketName" AWSS3Prefix = "prefix" MinioAccessKeyID = "accessKeyID" MinioSecretAccessKey = "secretAccessKey" )
const ( LoadFileTypeCsv = "csv" LoadFileTypeJson = "json" LoadFileTypeParquet = "parquet" TestConnectionTimeout = 15 * time.Second )
const (
CTStagingTablePrefix = "setup_test_staging"
)
const (
DatalakeTimeWindowFormat = "2006/01/02/15"
)
const (
NotImplementedErrorCode = "not implemented"
)
Variables ¶
var ( AWSCredsExpiryInS int64 TimeWindowDestinations = []string{S3Datalake, GCSDatalake, AzureDatalake} WarehouseDestinations = []string{RS, BQ, SNOWFLAKE, POSTGRES, CLICKHOUSE, MSSQL, AzureSynapse, S3Datalake, GCSDatalake, AzureDatalake, DELTALAKE} IdentityEnabledWarehouses = []string{SNOWFLAKE, BQ} S3PathStyleRegex = regexp.MustCompile(`https?://s3([.-](?P<region>[^.]+))?.amazonaws\.com/(?P<bucket>[^/]+)/(?P<keyname>.*)`) S3VirtualHostedRegex = regexp.MustCompile(`https?://(?P<bucket>[^/]+).s3([.-](?P<region>[^.]+))?.amazonaws\.com/(?P<keyname>.*)`) WarehouseDestinationMap = lo.SliceToMap(WarehouseDestinations, func(destination string) (string, struct{}) { return destination, struct{}{} }) )
var DiscardsSchema = map[string]string{
"table_name": "string",
"row_id": "string",
"column_name": "string",
"column_value": "string",
"received_at": "datetime",
"uuid_ts": "datetime",
}
var ObjectStorageMap = map[string]string{ RS: S3, S3Datalake: S3, BQ: GCS, GCSDatalake: GCS, AzureDatalake: AzureBlob, }
var ReservedKeywords = map[string]map[string]bool{ "SNOWFLAKE": { "ACCOUNT": true, "ALL": true, "ALTER": true, "AND": true, "ANY": true, "AS": true, "BETWEEN": true, "BY": true, "CASE": true, "CAST": true, "CHECK": true, "COLUMN": true, "CONNECT": true, "CONNECTION": true, "CONSTRAINT": true, "CREATE": true, "CROSS": true, "CURRENT": true, "CURRENT_DATE": true, "CURRENT_TIME": true, "CURRENT_TIMESTAMP": true, "CURRENT_USER": true, "DATABASE": true, "DELETE": true, "DISTINCT": true, "DROP": true, "ELSE": true, "EXISTS": true, "FALSE": true, "FOLLOWING": true, "FOR": true, "FROM": true, "FULL": true, "GRANT": true, "GROUP": true, "GSCLUSTER": true, "HAVING": true, "ILIKE": true, "IN": true, "INCREMENT": true, "INNER": true, "INSERT": true, "INTERSECT": true, "INTO": true, "IS": true, "ISSUE": true, "JOIN": true, "LATERAL": true, "LEFT": true, "LIKE": true, "LOCALTIME": true, "LOCALTIMESTAMP": true, "MINUS": true, "NATURAL": true, "NOT": true, "NULL": true, "OF": true, "ON": true, "OR": true, "ORDER": true, "ORGANIZATION": true, "QUALIFY": true, "REGEXP": true, "REVOKE": true, "RIGHT": true, "RLIKE": true, "ROW": true, "ROWS": true, "SAMPLE": true, "SCHEMA": true, "SELECT": true, "SET": true, "SOME": true, "START": true, "TABLE": true, "TABLESAMPLE": true, "THEN": true, "TO": true, "TRIGGER": true, "TRUE": true, "TRY_CAST": true, "UNION": true, "UNIQUE": true, "UPDATE": true, "USING": true, "VALUES": true, "VIEW": true, "WHEN": true, "WHENEVER": true, "WHERE": true, "WITH": true, }, "RS": { "AES128": true, "AES256": true, "ALL": true, "ALLOWOVERWRITE": true, "ANALYSE": true, "ANALYZE": true, "AND": true, "ANY": true, "ARRAY": true, "AS": true, "ASC": true, "AUTHORIZATION": true, "AZ64": true, "BACKUP": true, "BETWEEN": true, "BINARY": true, "BLANKSASNULL": true, "BOTH": true, "BYTEDICT": true, "BZIP2": true, "CASE": true, "CAST": true, "CHECK": true, "COLLATE": true, "COLUMN": true, "CONSTRAINT": true, "CREATE": true, "CREDENTIALS": true, "CROSS": true, "CURRENT_DATE": true, "CURRENT_TIME": true, "CURRENT_TIMESTAMP": true, "CURRENT_USER": true, "CURRENT_USER_ID": true, "DEFAULT": true, "DEFERRABLE": true, "DEFLATE": true, "DEFRAG": true, "DELTA": true, "DELTA32K": true, "DESC": true, "DISABLE": true, "DISTINCT": true, "DO": true, "ELSE": true, "EMPTYASNULL": true, "ENABLE": true, "ENCODE": true, "ENCRYPT ": true, "ENCRYPTION": true, "END": true, "EXCEPT": true, "EXPLICIT": true, "FALSE": true, "FOR": true, "FOREIGN": true, "FREEZE": true, "FROM": true, "FULL": true, "GLOBALDICT256": true, "GLOBALDICT64K": true, "GRANT": true, "GROUP": true, "GZIP": true, "HAVING": true, "IDENTITY": true, "IGNORE": true, "ILIKE": true, "IN": true, "INITIALLY": true, "INNER": true, "INTERSECT": true, "INTO": true, "IS": true, "ISNULL": true, "JOIN": true, "LANGUAGE": true, "LEADING": true, "LEFT": true, "LIKE": true, "LIMIT": true, "LOCALTIME": true, "LOCALTIMESTAMP": true, "LUN": true, "LUNS": true, "LZO": true, "LZOP": true, "MINUS": true, "MOSTLY13": true, "MOSTLY32": true, "MOSTLY8": true, "NATURAL": true, "NEW": true, "NOT": true, "NOTNULL": true, "NULL": true, "NULLS": true, "OFF": true, "OFFLINE": true, "OFFSET": true, "OID": true, "OLD": true, "ON": true, "ONLY": true, "OPEN": true, "OR": true, "ORDER": true, "OUTER": true, "OVERLAPS": true, "PARALLEL": true, "PARTITION": true, "PERCENT": true, "PERMISSIONS": true, "PLACING": true, "PRIMARY": true, "RAW": true, "READRATIO": true, "RECOVER": true, "REFERENCES": true, "RESPECT": true, "REJECTLOG": true, "RESORT": true, "RESTORE": true, "RIGHT": true, "SELECT": true, "SESSION_USER": true, "SIMILAR": true, "SNAPSHOT ": true, "SOME": true, "SYSDATE": true, "SYSTEM": true, "TABLE": true, "TAG": true, "TDES": true, "TEXT255": true, "TEXT32K": true, "THEN": true, "TIMESTAMP": true, "TO": true, "TOP": true, "TRAILING": true, "TRUE": true, "TRUNCATECOLUMNS": true, "UNION": true, "UNIQUE": true, "USER": true, "USING": true, "VERBOSE": true, "WALLET": true, "WHEN": true, "WHERE": true, "WITH": true, "WITHOUT": true, }, "DELTALAKE": { "ALL": true, "ALTER": true, "AND": true, "ANTI": true, "ANY": true, "ARRAY": true, "AS": true, "AT": true, "AUTHORIZATION": true, "BETWEEN": true, "BOTH": true, "BY": true, "CASE": true, "CAST": true, "CHECK": true, "COLLATE": true, "COLUMN": true, "COMMIT": true, "CONSTRAINT": true, "CREATE": true, "CROSS": true, "CUBE": true, "CURRENT": true, "CURRENT_DATE": true, "CURRENT_TIME": true, "CURRENT_TIMESTAMP": true, "CURRENT_USER": true, "DELETE": true, "DESCRIBE": true, "DISTINCT": true, "DROP": true, "ELSE": true, "END": true, "ESCAPE": true, "EXCEPT": true, "EVENT_DATE": true, "EXISTS": true, "EXTERNAL": true, "EXTRACT": true, "FALSE": true, "FETCH": true, "FILTER": true, "FOR": true, "FOREIGN": true, "FROM": true, "FULL": true, "FUNCTION": true, "GLOBAL": true, "GRANT": true, "GROUP": true, "GROUPING": true, "HAVING": true, "IN": true, "INNER": true, "INSERT": true, "INTERSECT": true, "INTERVAL": true, "INTO": true, "IS": true, "JOIN": true, "LATERAL": true, "LEADING": true, "LEFT": true, "LIKE": true, "LOCAL": true, "MINUS": true, "NATURAL": true, "NO": true, "NOT": true, "NULL": true, "OF": true, "ON": true, "ONLY": true, "OR": true, "ORDER": true, "OUT": true, "OUTER": true, "OVERLAPS": true, "PARTITION": true, "POSITION": true, "PRIMARY": true, "RANGE": true, "REFERENCES": true, "REVOKE": true, "RIGHT": true, "ROLLBACK": true, "ROLLUP": true, "ROW": true, "ROWS": true, "SELECT": true, "SEMI": true, "SESSION_USER": true, "SET": true, "SOME": true, "START": true, "TABLE": true, "TABLESAMPLE": true, "THEN": true, "TIME": true, "TO": true, "TRAILING": true, "TRUE": true, "TRUNCATE": true, "UNION": true, "UNIQUE": true, "UNKNOWN": true, "UPDATE": true, "USER": true, "USING": true, "VALUES": true, "WHEN": true, "WHERE": true, "WINDOW": true, "WITH": true, }, "POSTGRES": { "ALL": true, "ANALYSE": true, "ANALYZE": true, "AND": true, "ANY": true, "ARRAY": true, "AS": true, "ASC": true, "ASYMMETRIC": true, "AUTHORIZATION": true, "BETWEEN": true, "BINARY": true, "BOTH": true, "CASE": true, "CAST": true, "CHECK": true, "COLLATE": true, "COLUMN": true, "CONSTRAINT": true, "CREATE": true, "CROSS": true, "CURRENT_DATE": true, "CURRENT_ROLE": true, "CURRENT_TIME": true, "CURRENT_TIMESTAMP": true, "CURRENT_USER": true, "DEFAULT": true, "DEFERRABLE": true, "DESC": true, "DISTINCT": true, "DO": true, "ELSE": true, "END": true, "EXCEPT": true, "FALSE": true, "FOR": true, "FOREIGN": true, "FREEZE": true, "FROM": true, "FULL": true, "GRANT": true, "GROUP": true, "HAVING": true, "ILIKE": true, "IN": true, "INITIALLY": true, "INNER": true, "INTERSECT": true, "INTO": true, "IS": true, "ISNULL": true, "JOIN": true, "LEADING": true, "LEFT": true, "LIKE": true, "LIMIT": true, "LOCALTIME": true, "LOCALTIMESTAMP": true, "NATURAL": true, "NEW": true, "NOT": true, "NOTNULL": true, "NULL": true, "OFF": true, "OFFSET": true, "OLD": true, "ON": true, "ONLY": true, "OR": true, "ORDER": true, "OUTER": true, "OVERLAPS": true, "PLACING": true, "PRIMARY": true, "REFERENCES": true, "RIGHT": true, "SELECT": true, "SESSION_USER": true, "SIMILAR": true, "SOME": true, "SYMMETRIC": true, "TABLE": true, "THEN": true, "TRAILING": true, "TRUE": true, "UNION": true, "UNIQUE": true, "USER": true, "USING": true, "VERBOSE": true, "WHEN": true, "WHERE": true, }, "BQ": { "ALL": true, "AND": true, "ANY": true, "ARRAY": true, "AS": true, "ASC": true, "ASSERT_ROWS_MODIFIED": true, "AT": true, "BETWEEN": true, "BY": true, "CASE": true, "CAST": true, "COLLATE": true, "CONTAINS": true, "CREATE": true, "CROSS": true, "CUBE": true, "CURRENT": true, "DEFAULT": true, "DEFINE": true, "DESC": true, "DISTINCT": true, "ELSE": true, "END": true, "ENUM": true, "ESCAPE": true, "EXCEPT": true, "EXCLUDE": true, "EXISTS": true, "EXTRACT": true, "FALSE": true, "FETCH": true, "FOLLOWING": true, "FOR": true, "FROM": true, "FULL": true, "GROUP": true, "GROUPING": true, "GROUPS": true, "HASH": true, "HAVING": true, "IF": true, "IGNORE": true, "IN": true, "INNER": true, "INTERSECT": true, "INTERVAL": true, "INTO": true, "IS": true, "JOIN": true, "LATERAL": true, "LEFT": true, "LIKE": true, "LIMIT": true, "LOOKUP": true, "MERGE": true, "NATURAL": true, "NEW": true, "NO": true, "NOT": true, "NULL": true, "NULLS": true, "OF": true, "ON": true, "OR": true, "ORDER": true, "OUTER": true, "OVER": true, "PARTITION": true, "PRECEDING": true, "PROTO": true, "RANGE": true, "RECURSIVE": true, "RESPECT": true, "RIGHT": true, "ROLLUP": true, "ROWS": true, "SELECT": true, "SET": true, "SOME": true, "STRUCT": true, "TABLESAMPLE": true, "THEN": true, "TO": true, "TREAT": true, "TRUE": true, "UNBOUNDED": true, "UNION": true, "UNNEST": true, "USING": true, "WHEN": true, "WHERE": true, "WINDOW": true, "WITH": true, "WITHIN": true, }, "S3_DATALAKE": { "ALL": true, "ALTER": true, "AND": true, "ARRAY": true, "AS": true, "AUTHORIZATION": true, "BETWEEN": true, "BIGINT": true, "BINARY": true, "BOOLEAN": true, "BOTH": true, "BY": true, "CASE": true, "CASHE": true, "CAST": true, "CHAR": true, "COLUMN": true, "CONF": true, "CONSTRAINT": true, "COMMIT": true, "CREATE": true, "CROSS": true, "CUBE": true, "CURRENT": true, "CURRENT_DATE": true, "CURRENT_TIMESTAMP": true, "CURSOR": true, "DATABASE": true, "DATE": true, "DAYOFWEEK": true, "DECIMAL": true, "DELETE": true, "DESCRIBE": true, "DISTINCT": true, "DOUBLE": true, "DROP": true, "ELSE": true, "END": true, "EXCHANGE": true, "EXISTS": true, "EXTENDED": true, "EXTERNAL": true, "EXTRACT": true, "FALSE": true, "FETCH": true, "FLOAT": true, "FLOOR": true, "FOLLOWING": true, "FOR": true, "FOREIGN": true, "FROM": true, "FULL": true, "FUNCTION": true, "GRANT": true, "GROUP": true, "GROUPING": true, "HAVING": true, "IF": true, "IMPORT": true, "IN": true, "INNER": true, "INSERT": true, "INT": true, "INTEGER": true, "INTERSECT": true, "INTERVAL": true, "INTO": true, "IS": true, "JOIN": true, "LATERAL": true, "LEFT": true, "LESS": true, "LIKE": true, "LOCAL": true, "MACRO": true, "MAP": true, "MORE": true, "NONE": true, "NOT": true, "NULL": true, "NUMERIC": true, "OF": true, "ON": true, "ONLY": true, "OR": true, "ORDER": true, "OUT": true, "OUTER": true, "OVER": true, "PARTIALSCAN": true, "PARTITION": true, "PERCENT": true, "PRECEDING": true, "PRECISION": true, "PRESERVE": true, "PRIMARY": true, "PROCEDURE": true, "RANGE": true, "READS": true, "REDUCE": true, "REGEXP": true, "REFERENCES": true, "REVOKE": true, "RIGHT": true, "RLIKE": true, "ROLLBACK": true, "ROLLUP": true, "ROW": true, "ROWS": true, "SELECT": true, "SET": true, "SMALLINT": true, "START": true, "TABLE": true, "TABLESAMPLE": true, "THEN": true, "TIME": true, "TIMESTAMP": true, "TO": true, "TRANSFORM": true, "TRIGGER": true, "TRUE": true, "TRUNCATE": true, "UNBOUNDED": true, "UNION": true, "UNIQUEJOIN": true, "UPDATE": true, "USER": true, "USING": true, "UTC_TIMESTAMP": true, "VALUES": true, "VARCHAR": true, "VIEWS": true, "WHEN": true, "WHERE": true, "WINDOW": true, "WITH": true, }, "GCS_DATALAKE": { "ALL": true, "AND": true, "ANY": true, "ARRAY": true, "AS": true, "ASC": true, "ASSERT_ROWS_MODIFIED": true, "AT": true, "BETWEEN": true, "BY": true, "CASE": true, "CAST": true, "COLLATE": true, "CONTAINS": true, "CREATE": true, "CROSS": true, "CUBE": true, "CURRENT": true, "DEFAULT": true, "DEFINE": true, "DESC": true, "DISTINCT": true, "ELSE": true, "END": true, "ENUM": true, "ESCAPE": true, "EXCEPT": true, "EXCLUDE": true, "EXISTS": true, "EXTRACT": true, "FALSE": true, "FETCH": true, "FOLLOWING": true, "FOR": true, "FROM": true, "FULL": true, "GROUP": true, "GROUPING": true, "GROUPS": true, "HASH": true, "HAVING": true, "IF": true, "IGNORE": true, "IN": true, "INNER": true, "INTERSECT": true, "INTERVAL": true, "INTO": true, "IS": true, "JOIN": true, "LATERAL": true, "LEFT": true, "LIKE": true, "LIMIT": true, "LOOKUP": true, "MERGE": true, "NATURAL": true, "NEW": true, "NO": true, "NOT": true, "NULL": true, "NULLS": true, "OF": true, "ON": true, "OR": true, "ORDER": true, "OUTER": true, "OVER": true, "PARTITION": true, "PRECEDING": true, "PROTO": true, "RANGE": true, "RECURSIVE": true, "RESPECT": true, "RIGHT": true, "ROLLUP": true, "ROWS": true, "SELECT": true, "SET": true, "SOME": true, "STRUCT": true, "TABLESAMPLE": true, "THEN": true, "TO": true, "TREAT": true, "TRUE": true, "UNBOUNDED": true, "UNION": true, "UNNEST": true, "USING": true, "WHEN": true, "WHERE": true, "WINDOW": true, "WITH": true, "WITHIN": true, }, "AZURE_DATALAKE": { "ABSOLUTE": true, "ACTION": true, "ADA": true, "ADD": true, "ADMIN": true, "AFTER": true, "AGGREGATE": true, "ALIAS": true, "ALL": true, "ALLOCATE": true, "ALTER": true, "AND": true, "ANY": true, "ARE": true, "ARRAY": true, "AS": true, "ASC": true, "ASENSITIVE": true, "ASSERTION": true, "ASYMMETRIC": true, "AT": true, "ATOMIC": true, "AUTHORIZATION": true, "AVG": true, "BACKUP": true, "BEFORE": true, "BEGIN": true, "BETWEEN": true, "BINARY": true, "BIT": true, "BIT_LENGTH": true, "BLOB": true, "BOOLEAN": true, "BOTH": true, "BREADTH": true, "BREAK": true, "BROWSE": true, "BULK": true, "BY": true, "CALL": true, "CALLED": true, "CARDINALITY": true, "CASCADE": true, "CASCADED": true, "CASE": true, "CAST": true, "CATALOG": true, "CHAR": true, "CHAR_LENGTH": true, "CHARACTER": true, "CHARACTER_LENGTH": true, "CHECK": true, "CHECKPOINT": true, "CLASS": true, "CLOB": true, "CLOSE": true, "CLUSTERED": true, "COALESCE": true, "COLLATE": true, "COLLATION": true, "COLLECT": true, "COLUMN": true, "COMMIT": true, "COMPLETION": true, "COMPUTE": true, "CONDITION": true, "CONNECT": true, "CONNECTION": true, "CONSTRAINT": true, "CONSTRAINTS": true, "CONTAINS": true, "CONTAINSTABLE": true, "CONTINUE": true, "CONVERT": true, "CORR": true, "CORRESPONDING": true, "COUNT": true, "COVAR_POP": true, "COVAR_SAMP": true, "CREATE": true, "CROSS": true, "CUBE": true, "CUME_DIST": true, "CURRENT": true, "CURRENT_CATALOG": true, "CURRENT_DATE": true, "CURRENT_DEFAULT_TRANSFORM_GROUP": true, "CURRENT_PATH": true, "CURRENT_ROLE": true, "CURRENT_SCHEMA": true, "CURRENT_TIME": true, "CURRENT_TIMESTAMP": true, "CURRENT_TRANSFORM_GROUP_FOR_TYPE": true, "CURRENT_USER": true, "CURSOR": true, "CYCLE": true, "DATA": true, "DATABASE": true, "DATE": true, "DAY": true, "DBCC": true, "DEALLOCATE": true, "DEC": true, "DECIMAL": true, "DECLARE": true, "DEFAULT": true, "DEFERRABLE": true, "DEFERRED": true, "DELETE": true, "DENY": true, "DEPTH": true, "DEREF": true, "DESC": true, "DESCRIBE": true, "DESCRIPTOR": true, "DESTROY": true, "DESTRUCTOR": true, "DETERMINISTIC": true, "DIAGNOSTICS": true, "DICTIONARY": true, "DISCONNECT": true, "DISK": true, "DISTINCT": true, "DISTRIBUTED": true, "DOMAIN": true, "DOUBLE": true, "DROP": true, "DUMP": true, "DYNAMIC": true, "EACH": true, "ELEMENT": true, "ELSE": true, "END": true, "END-EXEC": true, "EQUALS": true, "ERRLVL": true, "ESCAPE": true, "EVERY": true, "EXCEPT": true, "EXCEPTION": true, "EXEC": true, "EXECUTE": true, "EXISTS": true, "EXIT": true, "EXTERNAL": true, "EXTRACT": true, "FALSE": true, "FETCH": true, "FILE": true, "FILLFACTOR": true, "FILTER": true, "FIRST": true, "FLOAT": true, "FOR": true, "FOREIGN": true, "FORTRAN": true, "FOUND": true, "FREE": true, "FREETEXT": true, "FREETEXTTABLE": true, "FROM": true, "FULL": true, "FULLTEXTTABLE": true, "FUNCTION": true, "FUSION": true, "GENERAL": true, "GET": true, "GLOBAL": true, "GO": true, "GOTO": true, "GRANT": true, "GROUP": true, "GROUPING": true, "HAVING": true, "HOLD": true, "HOLDLOCK": true, "HOST": true, "HOUR": true, "IDENTITY": true, "IDENTITY_INSERT": true, "IDENTITYCOL": true, "IF": true, "IGNORE": true, "IMMEDIATE": true, "IN": true, "INCLUDE": true, "INDEX": true, "INDICATOR": true, "INITIALIZE": true, "INITIALLY": true, "INNER": true, "INOUT": true, "INPUT": true, "INSENSITIVE": true, "INSERT": true, "INT": true, "INTEGER": true, "INTERSECT": true, "INTERSECTION": true, "INTERVAL": true, "INTO": true, "IS": true, "ISOLATION": true, "ITERATE": true, "JOIN": true, "KEY": true, "KILL": true, "LANGUAGE": true, "LARGE": true, "LAST": true, "LATERAL": true, "LEADING": true, "LEFT": true, "LESS": true, "LEVEL": true, "LIKE": true, "LIKE_REGEX": true, "LIMIT": true, "LINENO": true, "LN": true, "LOAD": true, "LOCAL": true, "LOCALTIME": true, "LOCALTIMESTAMP": true, "LOCATOR": true, "LOWER": true, "MAP": true, "MATCH": true, "MAX": true, "MEMBER": true, "MERGE": true, "METHOD": true, "MIN": true, "MINUTE": true, "MOD": true, "MODIFIES": true, "MODIFY": true, "MODULE": true, "MONTH": true, "MULTISET": true, "NAMES": true, "NATIONAL": true, "NATURAL": true, "NCHAR": true, "NCLOB": true, "NEW": true, "NEXT": true, "NO": true, "NOCHECK": true, "NONCLUSTERED": true, "NONE": true, "NORMALIZE": true, "NOT": true, "NULL": true, "NULLIF": true, "NUMERIC": true, "OBJECT": true, "OCCURRENCES_REGEX": true, "OCTET_LENGTH": true, "OF": true, "OFF": true, "OFFSETS": true, "OLD": true, "ON": true, "ONLY": true, "OPEN": true, "OPENDATASOURCE": true, "OPENQUERY": true, "OPENROWSET": true, "OPENXML": true, "OPERATION": true, "OPTION": true, "OR": true, "ORDER": true, "ORDINALITY": true, "OUT": true, "OUTER": true, "OUTPUT": true, "OVER": true, "OVERLAPS": true, "OVERLAY": true, "PAD": true, "PARAMETER": true, "PARAMETERS": true, "PARTIAL": true, "PARTITION": true, "PASCAL": true, "PERCENT": true, "PERCENT_RANK": true, "PERCENTILE_CONT": true, "PERCENTILE_DISC": true, "PIVOT": true, "PLAN": true, "POSITION": true, "POSITION_REGEX": true, "POSTFIX": true, "PRECISION": true, "PREFIX": true, "PREORDER": true, "PREPARE": true, "PRESERVE": true, "PRIMARY": true, "PRINT": true, "PRIOR": true, "PRIVILEGES": true, "PROC": true, "PROCEDURE": true, "PUBLIC": true, "RAISERROR": true, "RANGE": true, "READ": true, "READS": true, "READTEXT": true, "REAL": true, "RECONFIGURE": true, "RECURSIVE": true, "REF": true, "REFERENCES": true, "REFERENCING": true, "REGR_AVGX": true, "REGR_AVGY": true, "REGR_COUNT": true, "REGR_INTERCEPT": true, "REGR_R2": true, "REGR_SLOPE": true, "REGR_SXX": true, "REGR_SXY": true, "REGR_SYY": true, "RELATIVE": true, "RELEASE": true, "REPLICATION": true, "RESTORE": true, "RESTRICT": true, "RESULT": true, "RETURN": true, "RETURNS": true, "REVERT": true, "REVOKE": true, "RIGHT": true, "ROLE": true, "ROLLBACK": true, "ROLLUP": true, "ROUTINE": true, "ROW": true, "ROWCOUNT": true, "ROWGUIDCOL": true, "ROWS": true, "RULE": true, "SAVE": true, "SAVEPOINT": true, "SCHEMA": true, "SCOPE": true, "SCROLL": true, "SEARCH": true, "SECOND": true, "SECTION": true, "SECURITYAUDIT": true, "SELECT": true, "SEMANTICKEYPHRASETABLE": true, "SEMANTICSIMILARITYDETAILSTABLE": true, "SEMANTICSIMILARITYTABLE": true, "SENSITIVE": true, "SEQUENCE": true, "SESSION": true, "SESSION_USER": true, "SET": true, "SETS": true, "SETUSER": true, "SHUTDOWN": true, "SIMILAR": true, "SIZE": true, "SMALLINT": true, "SOME": true, "SPACE": true, "SPECIFIC": true, "SPECIFICTYPE": true, "SQL": true, "SQLCA": true, "SQLCODE": true, "SQLERROR": true, "SQLEXCEPTION": true, "SQLSTATE": true, "SQLWARNING": true, "START": true, "STATE": true, "STATEMENT": true, "STATIC": true, "STATISTICS": true, "STDDEV_POP": true, "STDDEV_SAMP": true, "STRUCTURE": true, "SUBMULTISET": true, "SUBSTRING": true, "SUBSTRING_REGEX": true, "SUM": true, "SYMMETRIC": true, "SYSTEM": true, "SYSTEM_USER": true, "TABLE": true, "TABLESAMPLE": true, "TEMPORARY": true, "TERMINATE": true, "TEXTSIZE": true, "THAN": true, "THEN": true, "TIME": true, "TIMEZONE_HOUR": true, "TIMEZONE_MINUTE": true, "TO": true, "TOP": true, "TRAILING": true, "TRAN": true, "TRANSACTION": true, "TRANSLATE": true, "TRANSLATE_REGEX": true, "TRANSLATION": true, "TREAT": true, "TRIGGER": true, "TRIM": true, "TRUE": true, "TRUNCATE": true, "TRY_CONVERT": true, "TSEQUAL": true, "UESCAPE": true, "UNDER": true, "UNION": true, "UNIQUE": true, "UNKNOWN": true, "UNNEST": true, "UNPIVOT": true, "UPDATE": true, "UPDATETEXT": true, "UPPER": true, "USAGE": true, "USE": true, "USER": true, "USING": true, "VALUE": true, "VALUES": true, "VAR_POP": true, "VAR_SAMP": true, "VARCHAR": true, "VARIABLE": true, "VARYING": true, "VIEW": true, "WAITFOR": true, "WHEN": true, "WHENEVER": true, "WHERE": true, "WHILE": true, "WIDTH_BUCKET": true, "WINDOW": true, "WITH": true, "WITHIN": true, "WITHINGROUP": true, "WITHOUT": true, "WORK": true, "WRITE": true, "WRITETEXT": true, "XMLAGG": true, "XMLATTRIBUTES": true, "XMLBINARY": true, "XMLCAST": true, "XMLCOMMENT": true, "XMLCONCAT": true, "XMLDOCUMENT": true, "XMLELEMENT": true, "XMLEXISTS": true, "XMLFOREST": true, "XMLITERATE": true, "XMLNAMESPACES": true, "XMLPARSE": true, "XMLPI": true, "XMLQUERY": true, "XMLSERIALIZE": true, "XMLTABLE": true, "XMLTEXT": true, "XMLVALIDATE": true, "YEAR": true, "ZONE": true, }, "MSSQL": { "ABSOLUTE": true, "ACTION": true, "ADA": true, "ADD": true, "ADMIN": true, "AFTER": true, "AGGREGATE": true, "ALIAS": true, "ALL": true, "ALLOCATE": true, "ALTER": true, "AND": true, "ANY": true, "ARE": true, "ARRAY": true, "AS": true, "ASC": true, "ASENSITIVE": true, "ASSERTION": true, "ASYMMETRIC": true, "AT": true, "ATOMIC": true, "AUTHORIZATION": true, "AVG": true, "BACKUP": true, "BEFORE": true, "BEGIN": true, "BETWEEN": true, "BINARY": true, "BIT": true, "BIT_LENGTH": true, "BLOB": true, "BOOLEAN": true, "BOTH": true, "BREADTH": true, "BREAK": true, "BROWSE": true, "BULK": true, "BY": true, "CALL": true, "CALLED": true, "CARDINALITY": true, "CASCADE": true, "CASCADED": true, "CASE": true, "CAST": true, "CATALOG": true, "CHAR": true, "CHAR_LENGTH": true, "CHARACTER": true, "CHARACTER_LENGTH": true, "CHECK": true, "CHECKPOINT": true, "CLASS": true, "CLOB": true, "CLOSE": true, "CLUSTERED": true, "COALESCE": true, "COLLATE": true, "COLLATION": true, "COLLECT": true, "COLUMN": true, "COMMIT": true, "COMPLETION": true, "COMPUTE": true, "CONDITION": true, "CONNECT": true, "CONNECTION": true, "CONSTRAINT": true, "CONSTRAINTS": true, "CONTAINS": true, "CONTAINSTABLE": true, "CONTINUE": true, "CONVERT": true, "CORR": true, "CORRESPONDING": true, "COUNT": true, "COVAR_POP": true, "COVAR_SAMP": true, "CREATE": true, "CROSS": true, "CUBE": true, "CUME_DIST": true, "CURRENT": true, "CURRENT_CATALOG": true, "CURRENT_DATE": true, "CURRENT_DEFAULT_TRANSFORM_GROUP": true, "CURRENT_PATH": true, "CURRENT_ROLE": true, "CURRENT_SCHEMA": true, "CURRENT_TIME": true, "CURRENT_TIMESTAMP": true, "CURRENT_TRANSFORM_GROUP_FOR_TYPE": true, "CURRENT_USER": true, "CURSOR": true, "CYCLE": true, "DATA": true, "DATABASE": true, "DATE": true, "DAY": true, "DBCC": true, "DEALLOCATE": true, "DEC": true, "DECIMAL": true, "DECLARE": true, "DEFAULT": true, "DEFERRABLE": true, "DEFERRED": true, "DELETE": true, "DENY": true, "DEPTH": true, "DEREF": true, "DESC": true, "DESCRIBE": true, "DESCRIPTOR": true, "DESTROY": true, "DESTRUCTOR": true, "DETERMINISTIC": true, "DIAGNOSTICS": true, "DICTIONARY": true, "DISCONNECT": true, "DISK": true, "DISTINCT": true, "DISTRIBUTED": true, "DOMAIN": true, "DOUBLE": true, "DROP": true, "DUMP": true, "DYNAMIC": true, "EACH": true, "ELEMENT": true, "ELSE": true, "END": true, "END-EXEC": true, "EQUALS": true, "ERRLVL": true, "ESCAPE": true, "EVERY": true, "EXCEPT": true, "EXCEPTION": true, "EXEC": true, "EXECUTE": true, "EXISTS": true, "EXIT": true, "EXTERNAL": true, "EXTRACT": true, "FALSE": true, "FETCH": true, "FILE": true, "FILLFACTOR": true, "FILTER": true, "FIRST": true, "FLOAT": true, "FOR": true, "FOREIGN": true, "FORTRAN": true, "FOUND": true, "FREE": true, "FREETEXT": true, "FREETEXTTABLE": true, "FROM": true, "FULL": true, "FULLTEXTTABLE": true, "FUNCTION": true, "FUSION": true, "GENERAL": true, "GET": true, "GLOBAL": true, "GO": true, "GOTO": true, "GRANT": true, "GROUP": true, "GROUPING": true, "HAVING": true, "HOLD": true, "HOLDLOCK": true, "HOST": true, "HOUR": true, "IDENTITY": true, "IDENTITY_INSERT": true, "IDENTITYCOL": true, "IF": true, "IGNORE": true, "IMMEDIATE": true, "IN": true, "INCLUDE": true, "INDEX": true, "INDICATOR": true, "INITIALIZE": true, "INITIALLY": true, "INNER": true, "INOUT": true, "INPUT": true, "INSENSITIVE": true, "INSERT": true, "INT": true, "INTEGER": true, "INTERSECT": true, "INTERSECTION": true, "INTERVAL": true, "INTO": true, "IS": true, "ISOLATION": true, "ITERATE": true, "JOIN": true, "KEY": true, "KILL": true, "LANGUAGE": true, "LARGE": true, "LAST": true, "LATERAL": true, "LEADING": true, "LEFT": true, "LESS": true, "LEVEL": true, "LIKE": true, "LIKE_REGEX": true, "LIMIT": true, "LINENO": true, "LN": true, "LOAD": true, "LOCAL": true, "LOCALTIME": true, "LOCALTIMESTAMP": true, "LOCATOR": true, "LOWER": true, "MAP": true, "MATCH": true, "MAX": true, "MEMBER": true, "MERGE": true, "METHOD": true, "MIN": true, "MINUTE": true, "MOD": true, "MODIFIES": true, "MODIFY": true, "MODULE": true, "MONTH": true, "MULTISET": true, "NAMES": true, "NATIONAL": true, "NATURAL": true, "NCHAR": true, "NCLOB": true, "NEW": true, "NEXT": true, "NO": true, "NOCHECK": true, "NONCLUSTERED": true, "NONE": true, "NORMALIZE": true, "NOT": true, "NULL": true, "NULLIF": true, "NUMERIC": true, "OBJECT": true, "OCCURRENCES_REGEX": true, "OCTET_LENGTH": true, "OF": true, "OFF": true, "OFFSETS": true, "OLD": true, "ON": true, "ONLY": true, "OPEN": true, "OPENDATASOURCE": true, "OPENQUERY": true, "OPENROWSET": true, "OPENXML": true, "OPERATION": true, "OPTION": true, "OR": true, "ORDER": true, "ORDINALITY": true, "OUT": true, "OUTER": true, "OUTPUT": true, "OVER": true, "OVERLAPS": true, "OVERLAY": true, "PAD": true, "PARAMETER": true, "PARAMETERS": true, "PARTIAL": true, "PARTITION": true, "PASCAL": true, "PERCENT": true, "PERCENT_RANK": true, "PERCENTILE_CONT": true, "PERCENTILE_DISC": true, "PIVOT": true, "PLAN": true, "POSITION": true, "POSITION_REGEX": true, "POSTFIX": true, "PRECISION": true, "PREFIX": true, "PREORDER": true, "PREPARE": true, "PRESERVE": true, "PRIMARY": true, "PRINT": true, "PRIOR": true, "PRIVILEGES": true, "PROC": true, "PROCEDURE": true, "PUBLIC": true, "RAISERROR": true, "RANGE": true, "READ": true, "READS": true, "READTEXT": true, "REAL": true, "RECONFIGURE": true, "RECURSIVE": true, "REF": true, "REFERENCES": true, "REFERENCING": true, "REGR_AVGX": true, "REGR_AVGY": true, "REGR_COUNT": true, "REGR_INTERCEPT": true, "REGR_R2": true, "REGR_SLOPE": true, "REGR_SXX": true, "REGR_SXY": true, "REGR_SYY": true, "RELATIVE": true, "RELEASE": true, "REPLICATION": true, "RESTORE": true, "RESTRICT": true, "RESULT": true, "RETURN": true, "RETURNS": true, "REVERT": true, "REVOKE": true, "RIGHT": true, "ROLE": true, "ROLLBACK": true, "ROLLUP": true, "ROUTINE": true, "ROW": true, "ROWCOUNT": true, "ROWGUIDCOL": true, "ROWS": true, "RULE": true, "SAVE": true, "SAVEPOINT": true, "SCHEMA": true, "SCOPE": true, "SCROLL": true, "SEARCH": true, "SECOND": true, "SECTION": true, "SECURITYAUDIT": true, "SELECT": true, "SEMANTICKEYPHRASETABLE": true, "SEMANTICSIMILARITYDETAILSTABLE": true, "SEMANTICSIMILARITYTABLE": true, "SENSITIVE": true, "SEQUENCE": true, "SESSION": true, "SESSION_USER": true, "SET": true, "SETS": true, "SETUSER": true, "SHUTDOWN": true, "SIMILAR": true, "SIZE": true, "SMALLINT": true, "SOME": true, "SPACE": true, "SPECIFIC": true, "SPECIFICTYPE": true, "SQL": true, "SQLCA": true, "SQLCODE": true, "SQLERROR": true, "SQLEXCEPTION": true, "SQLSTATE": true, "SQLWARNING": true, "START": true, "STATE": true, "STATEMENT": true, "STATIC": true, "STATISTICS": true, "STDDEV_POP": true, "STDDEV_SAMP": true, "STRUCTURE": true, "SUBMULTISET": true, "SUBSTRING": true, "SUBSTRING_REGEX": true, "SUM": true, "SYMMETRIC": true, "SYSTEM": true, "SYSTEM_USER": true, "TABLE": true, "TABLESAMPLE": true, "TEMPORARY": true, "TERMINATE": true, "TEXTSIZE": true, "THAN": true, "THEN": true, "TIME": true, "TIMEZONE_HOUR": true, "TIMEZONE_MINUTE": true, "TO": true, "TOP": true, "TRAILING": true, "TRAN": true, "TRANSACTION": true, "TRANSLATE": true, "TRANSLATE_REGEX": true, "TRANSLATION": true, "TREAT": true, "TRIGGER": true, "TRIM": true, "TRUE": true, "TRUNCATE": true, "TRY_CONVERT": true, "TSEQUAL": true, "UESCAPE": true, "UNDER": true, "UNION": true, "UNIQUE": true, "UNKNOWN": true, "UNNEST": true, "UNPIVOT": true, "UPDATE": true, "UPDATETEXT": true, "UPPER": true, "USAGE": true, "USE": true, "USER": true, "USING": true, "VALUE": true, "VALUES": true, "VAR_POP": true, "VAR_SAMP": true, "VARCHAR": true, "VARIABLE": true, "VARYING": true, "VIEW": true, "WAITFOR": true, "WHEN": true, "WHENEVER": true, "WHERE": true, "WHILE": true, "WIDTH_BUCKET": true, "WINDOW": true, "WITH": true, "WITHIN": true, "WITHINGROUP": true, "WITHOUT": true, "WORK": true, "WRITE": true, "WRITETEXT": true, "XMLAGG": true, "XMLATTRIBUTES": true, "XMLBINARY": true, "XMLCAST": true, "XMLCOMMENT": true, "XMLCONCAT": true, "XMLDOCUMENT": true, "XMLELEMENT": true, "XMLEXISTS": true, "XMLFOREST": true, "XMLITERATE": true, "XMLNAMESPACES": true, "XMLPARSE": true, "XMLPI": true, "XMLQUERY": true, "XMLSERIALIZE": true, "XMLTABLE": true, "XMLTEXT": true, "XMLVALIDATE": true, "YEAR": true, "ZONE": true, }, "AZURE_SYNAPSE": { "ABSOLUTE": true, "ACTION": true, "ADA": true, "ADD": true, "ADMIN": true, "AFTER": true, "AGGREGATE": true, "ALIAS": true, "ALL": true, "ALLOCATE": true, "ALTER": true, "AND": true, "ANY": true, "ARE": true, "ARRAY": true, "AS": true, "ASC": true, "ASENSITIVE": true, "ASSERTION": true, "ASYMMETRIC": true, "AT": true, "ATOMIC": true, "AUTHORIZATION": true, "AVG": true, "BACKUP": true, "BEFORE": true, "BEGIN": true, "BETWEEN": true, "BINARY": true, "BIT": true, "BIT_LENGTH": true, "BLOB": true, "BOOLEAN": true, "BOTH": true, "BREADTH": true, "BREAK": true, "BROWSE": true, "BULK": true, "BY": true, "CALL": true, "CALLED": true, "CARDINALITY": true, "CASCADE": true, "CASCADED": true, "CASE": true, "CAST": true, "CATALOG": true, "CHAR": true, "CHAR_LENGTH": true, "CHARACTER": true, "CHARACTER_LENGTH": true, "CHECK": true, "CHECKPOINT": true, "CLASS": true, "CLOB": true, "CLOSE": true, "CLUSTERED": true, "COALESCE": true, "COLLATE": true, "COLLATION": true, "COLLECT": true, "COLUMN": true, "COMMIT": true, "COMPLETION": true, "COMPUTE": true, "CONDITION": true, "CONNECT": true, "CONNECTION": true, "CONSTRAINT": true, "CONSTRAINTS": true, "CONTAINS": true, "CONTAINSTABLE": true, "CONTINUE": true, "CONVERT": true, "CORR": true, "CORRESPONDING": true, "COUNT": true, "COVAR_POP": true, "COVAR_SAMP": true, "CREATE": true, "CROSS": true, "CUBE": true, "CUME_DIST": true, "CURRENT": true, "CURRENT_CATALOG": true, "CURRENT_DATE": true, "CURRENT_DEFAULT_TRANSFORM_GROUP": true, "CURRENT_PATH": true, "CURRENT_ROLE": true, "CURRENT_SCHEMA": true, "CURRENT_TIME": true, "CURRENT_TIMESTAMP": true, "CURRENT_TRANSFORM_GROUP_FOR_TYPE": true, "CURRENT_USER": true, "CURSOR": true, "CYCLE": true, "DATA": true, "DATABASE": true, "DATE": true, "DAY": true, "DBCC": true, "DEALLOCATE": true, "DEC": true, "DECIMAL": true, "DECLARE": true, "DEFAULT": true, "DEFERRABLE": true, "DEFERRED": true, "DELETE": true, "DENY": true, "DEPTH": true, "DEREF": true, "DESC": true, "DESCRIBE": true, "DESCRIPTOR": true, "DESTROY": true, "DESTRUCTOR": true, "DETERMINISTIC": true, "DIAGNOSTICS": true, "DICTIONARY": true, "DISCONNECT": true, "DISK": true, "DISTINCT": true, "DISTRIBUTED": true, "DOMAIN": true, "DOUBLE": true, "DROP": true, "DUMP": true, "DYNAMIC": true, "EACH": true, "ELEMENT": true, "ELSE": true, "END": true, "END-EXEC": true, "EQUALS": true, "ERRLVL": true, "ESCAPE": true, "EVERY": true, "EXCEPT": true, "EXCEPTION": true, "EXEC": true, "EXECUTE": true, "EXISTS": true, "EXIT": true, "EXTERNAL": true, "EXTRACT": true, "FALSE": true, "FETCH": true, "FILE": true, "FILLFACTOR": true, "FILTER": true, "FIRST": true, "FLOAT": true, "FOR": true, "FOREIGN": true, "FORTRAN": true, "FOUND": true, "FREE": true, "FREETEXT": true, "FREETEXTTABLE": true, "FROM": true, "FULL": true, "FULLTEXTTABLE": true, "FUNCTION": true, "FUSION": true, "GENERAL": true, "GET": true, "GLOBAL": true, "GO": true, "GOTO": true, "GRANT": true, "GROUP": true, "GROUPING": true, "HAVING": true, "HOLD": true, "HOLDLOCK": true, "HOST": true, "HOUR": true, "IDENTITY": true, "IDENTITY_INSERT": true, "IDENTITYCOL": true, "IF": true, "IGNORE": true, "IMMEDIATE": true, "IN": true, "INCLUDE": true, "INDEX": true, "INDICATOR": true, "INITIALIZE": true, "INITIALLY": true, "INNER": true, "INOUT": true, "INPUT": true, "INSENSITIVE": true, "INSERT": true, "INT": true, "INTEGER": true, "INTERSECT": true, "INTERSECTION": true, "INTERVAL": true, "INTO": true, "IS": true, "ISOLATION": true, "ITERATE": true, "JOIN": true, "KEY": true, "KILL": true, "LANGUAGE": true, "LARGE": true, "LAST": true, "LATERAL": true, "LEADING": true, "LEFT": true, "LESS": true, "LEVEL": true, "LIKE": true, "LIKE_REGEX": true, "LIMIT": true, "LINENO": true, "LN": true, "LOAD": true, "LOCAL": true, "LOCALTIME": true, "LOCALTIMESTAMP": true, "LOCATOR": true, "LOWER": true, "MAP": true, "MATCH": true, "MAX": true, "MEMBER": true, "MERGE": true, "METHOD": true, "MIN": true, "MINUTE": true, "MOD": true, "MODIFIES": true, "MODIFY": true, "MODULE": true, "MONTH": true, "MULTISET": true, "NAMES": true, "NATIONAL": true, "NATURAL": true, "NCHAR": true, "NCLOB": true, "NEW": true, "NEXT": true, "NO": true, "NOCHECK": true, "NONCLUSTERED": true, "NONE": true, "NORMALIZE": true, "NOT": true, "NULL": true, "NULLIF": true, "NUMERIC": true, "OBJECT": true, "OCCURRENCES_REGEX": true, "OCTET_LENGTH": true, "OF": true, "OFF": true, "OFFSETS": true, "OLD": true, "ON": true, "ONLY": true, "OPEN": true, "OPENDATASOURCE": true, "OPENQUERY": true, "OPENROWSET": true, "OPENXML": true, "OPERATION": true, "OPTION": true, "OR": true, "ORDER": true, "ORDINALITY": true, "OUT": true, "OUTER": true, "OUTPUT": true, "OVER": true, "OVERLAPS": true, "OVERLAY": true, "PAD": true, "PARAMETER": true, "PARAMETERS": true, "PARTIAL": true, "PARTITION": true, "PASCAL": true, "PERCENT": true, "PERCENT_RANK": true, "PERCENTILE_CONT": true, "PERCENTILE_DISC": true, "PIVOT": true, "PLAN": true, "POSITION": true, "POSITION_REGEX": true, "POSTFIX": true, "PRECISION": true, "PREFIX": true, "PREORDER": true, "PREPARE": true, "PRESERVE": true, "PRIMARY": true, "PRINT": true, "PRIOR": true, "PRIVILEGES": true, "PROC": true, "PROCEDURE": true, "PUBLIC": true, "RAISERROR": true, "RANGE": true, "READ": true, "READS": true, "READTEXT": true, "REAL": true, "RECONFIGURE": true, "RECURSIVE": true, "REF": true, "REFERENCES": true, "REFERENCING": true, "REGR_AVGX": true, "REGR_AVGY": true, "REGR_COUNT": true, "REGR_INTERCEPT": true, "REGR_R2": true, "REGR_SLOPE": true, "REGR_SXX": true, "REGR_SXY": true, "REGR_SYY": true, "RELATIVE": true, "RELEASE": true, "REPLICATION": true, "RESTORE": true, "RESTRICT": true, "RESULT": true, "RETURN": true, "RETURNS": true, "REVERT": true, "REVOKE": true, "RIGHT": true, "ROLE": true, "ROLLBACK": true, "ROLLUP": true, "ROUTINE": true, "ROW": true, "ROWCOUNT": true, "ROWGUIDCOL": true, "ROWS": true, "RULE": true, "SAVE": true, "SAVEPOINT": true, "SCHEMA": true, "SCOPE": true, "SCROLL": true, "SEARCH": true, "SECOND": true, "SECTION": true, "SECURITYAUDIT": true, "SELECT": true, "SEMANTICKEYPHRASETABLE": true, "SEMANTICSIMILARITYDETAILSTABLE": true, "SEMANTICSIMILARITYTABLE": true, "SENSITIVE": true, "SEQUENCE": true, "SESSION": true, "SESSION_USER": true, "SET": true, "SETS": true, "SETUSER": true, "SHUTDOWN": true, "SIMILAR": true, "SIZE": true, "SMALLINT": true, "SOME": true, "SPACE": true, "SPECIFIC": true, "SPECIFICTYPE": true, "SQL": true, "SQLCA": true, "SQLCODE": true, "SQLERROR": true, "SQLEXCEPTION": true, "SQLSTATE": true, "SQLWARNING": true, "START": true, "STATE": true, "STATEMENT": true, "STATIC": true, "STATISTICS": true, "STDDEV_POP": true, "STDDEV_SAMP": true, "STRUCTURE": true, "SUBMULTISET": true, "SUBSTRING": true, "SUBSTRING_REGEX": true, "SUM": true, "SYMMETRIC": true, "SYSTEM": true, "SYSTEM_USER": true, "TABLE": true, "TABLESAMPLE": true, "TEMPORARY": true, "TERMINATE": true, "TEXTSIZE": true, "THAN": true, "THEN": true, "TIME": true, "TIMEZONE_HOUR": true, "TIMEZONE_MINUTE": true, "TO": true, "TOP": true, "TRAILING": true, "TRAN": true, "TRANSACTION": true, "TRANSLATE": true, "TRANSLATE_REGEX": true, "TRANSLATION": true, "TREAT": true, "TRIGGER": true, "TRIM": true, "TRUE": true, "TRUNCATE": true, "TRY_CONVERT": true, "TSEQUAL": true, "UESCAPE": true, "UNDER": true, "UNION": true, "UNIQUE": true, "UNKNOWN": true, "UNNEST": true, "UNPIVOT": true, "UPDATE": true, "UPDATETEXT": true, "UPPER": true, "USAGE": true, "USE": true, "USER": true, "USING": true, "VALUE": true, "VALUES": true, "VAR_POP": true, "VAR_SAMP": true, "VARCHAR": true, "VARIABLE": true, "VARYING": true, "VIEW": true, "WAITFOR": true, "WHEN": true, "WHENEVER": true, "WHERE": true, "WHILE": true, "WIDTH_BUCKET": true, "WINDOW": true, "WITH": true, "WITHIN": true, "WITHINGROUP": true, "WITHOUT": true, "WORK": true, "WRITE": true, "WRITETEXT": true, "XMLAGG": true, "XMLATTRIBUTES": true, "XMLBINARY": true, "XMLCAST": true, "XMLCOMMENT": true, "XMLCONCAT": true, "XMLDOCUMENT": true, "XMLELEMENT": true, "XMLEXISTS": true, "XMLFOREST": true, "XMLITERATE": true, "XMLNAMESPACES": true, "XMLPARSE": true, "XMLPI": true, "XMLQUERY": true, "XMLSERIALIZE": true, "XMLTABLE": true, "XMLTEXT": true, "XMLVALIDATE": true, "YEAR": true, "ZONE": true, }, "CLICKHOUSE": {}, }
var WHDestNameMap = map[string]string{ BQ: "bigquery", RS: "redshift", MSSQL: "mssql", POSTGRES: "postgres", SNOWFLAKE: "snowflake", CLICKHOUSE: "clickhouse", DELTALAKE: "deltalake", S3Datalake: "s3_datalake", GCSDatalake: "gcs_datalake", AzureDatalake: "azure_datalake", AzureSynapse: "azure_synapse", }
Functions ¶
func CaptureRegexGroup ¶ added in v1.0.2
CaptureRegexGroup returns capture as per the regex provided
func CreateAWSSessionConfig ¶ added in v1.2.0
func CreateAWSSessionConfig(destination *backendconfig.DestinationT, serviceName string) (*awsutil.SessionConfig, error)
func DestStat ¶
func DestStat(statType, statName, id string) stats.Measurement
func DoubleQuoteAndJoinByComma ¶ added in v0.1.10
func ExtractTunnelInfoFromDestinationConfig ¶ added in v1.5.0
func ExtractTunnelInfoFromDestinationConfig(config map[string]interface{}) *tunnelling.TunnelInfo
func GetAzureBlobLocation ¶
GetAzureBlobLocation parses path-style location http url to return in azure:// format https://myproject.blob.core.windows.net/test-bucket/test-object.csv --> azure://myproject.blob.core.windows.net/test-bucket/test-object.csv
func GetAzureBlobLocationFolder ¶
GetAzureBlobLocationFolder returns the folder path for an azure storage object https://myproject.blob.core.windows.net/test-bucket/myfolder/test-object.csv --> azure://myproject.blob.core.windows.net/myfolder
func GetColumnsFromTableSchema ¶ added in v1.2.0
func GetColumnsFromTableSchema(schema model.TableSchema) []string
func GetConfigValueAsMap ¶ added in v0.1.10
func GetConfigValueBoolString ¶ added in v0.1.10
func GetConnectionTimeout ¶ added in v1.10.0
func GetDateRangeList ¶ added in v1.0.2
func GetGCSLocation ¶
func GetGCSLocation(location string, options GCSLocationOptions) string
GetGCSLocation parses path-style location http url to return in gcs:// format https://storage.googleapis.com/test-bucket/test-object.csv --> gcs://test-bucket/test-object.csv tldFormat is used to set return format "<tldFormat>://..."
func GetGCSLocationFolder ¶
func GetGCSLocationFolder(location string, options GCSLocationOptions) string
GetGCSLocationFolder returns the folder path for a gcs object https://storage.googleapis.com/test-bucket/myfolder/test-object.csv --> gcs://test-bucket/myfolder
func GetGCSLocations ¶
func GetGCSLocations(loadFiles []LoadFile, options GCSLocationOptions) (gcsLocations []string)
func GetLoadFileFormat ¶ added in v0.1.10
func GetLoadFileType ¶ added in v0.1.10
func GetObjectFolder ¶
GetObjectFolder returns the folder path for the storage object based on the storage provider eg. For provider as S3: https://test-bucket.s3.amazonaws.com/test-object.csv --> s3://test-bucket/test-object.csv
func GetObjectFolderForDeltalake ¶ added in v0.1.10
GetObjectFolderForDeltalake returns the folder path for the storage object based on the storage provider for delta lake eg. For provider as S3: https://<bucket-name>.s3.amazonaws.com/<directory-name> --> s3://<bucket-name>/<directory-name> eg. For provider as GCS: https://storage.cloud.google.com/<bucket-name>/<directory-name> --> gs://<bucket-name>/<directory-name> eg. For provider as AZURE_BLOB: https://<storage-account-name>.blob.core.windows.net/<container-name>/<directory-name> --> wasbs://<container-name>@<storage-account-name>.blob.core.windows.net/<directory-name>
func GetObjectLocation ¶ added in v0.1.10
GetObjectLocation returns the folder path for the storage object based on the storage provider e.g. For provider as S3: https://test-bucket.s3.amazonaws.com/test-object.csv --> s3://test-bucket/test-object.csv
func GetObjectName ¶ added in v0.1.10
func GetObjectName(location string, providerConfig interface{}, objectProvider string) (objectName string, err error)
GetObjectName extracts object/key objectName from different buckets locations ex: https://bucket-endpoint/bucket-name/object -> object
func GetQueryType ¶ added in v1.12.0
GetQueryType returns the type of the query.
func GetS3Location ¶
GetS3Location parses path-style location http url to return in s3:// format [Path-style access] https://s3.amazonaws.com/test-bucket/test-object.csv --> s3://test-bucket/test-object.csv [Virtual-hosted–style access] https://test-bucket.s3.amazonaws.com/test-object.csv --> s3://test-bucket/test-object.csv TODO: Handle non regex matches.
func GetS3LocationFolder ¶
GetS3LocationFolder returns the folder path for a s3 object https://test-bucket.s3.amazonaws.com/myfolder/test-object.csv --> s3://test-bucket/myfolder
func GetSSLKeyDirPath ¶ added in v0.1.10
func GetTablePathInObjectStorage ¶ added in v0.1.10
GetTablePathInObjectStorage returns the path of the table relative to the object storage bucket <$WAREHOUSE_DATALAKE_FOLDER_NAME>/<namespace>/tableName
func GetTempFileExtension ¶ added in v0.1.10
func GetTemporaryS3Cred ¶ added in v0.1.10
func GetTemporaryS3Cred(destination *backendconfig.DestinationT) (string, string, string, error)
func GetWarehouseIdentifier ¶ added in v0.1.10
func IDResolutionEnabled ¶ added in v0.1.10
func IDResolutionEnabled() bool
func IdentityMappingsTableName ¶ added in v0.1.10
func IdentityMappingsUniqueMappingConstraintName ¶ added in v0.1.10
func IdentityMappingsWarehouseTableName ¶ added in v0.1.10
func IdentityMergeRulesTableName ¶ added in v0.1.10
func IdentityMergeRulesWarehouseTableName ¶ added in v0.1.10
func JSONSchemaToMap ¶
func JSONSchemaToMap(rawMsg json.RawMessage) model.Schema
func JoinWithFormatting ¶ added in v0.1.10
func JoinWithFormatting(keys []string, format func(idx int, str string) string, separator string) string
JoinWithFormatting returns joined string for keys with the provided formatting function.
func NewCounterStat ¶ added in v0.1.10
func NewCounterStat(name string, extraTags ...Tag) stats.Measurement
func NewTimerStat ¶ added in v0.1.10
func NewTimerStat(name string, extraTags ...Tag) stats.Measurement
func ObjectStorageType ¶
func RandHex ¶ added in v1.4.0
func RandHex() string
RandHex returns a random hex string of length 32
func ReadAsBool ¶ added in v1.5.0
func SanitizeJSON ¶ added in v1.8.0
func SanitizeJSON(input json.RawMessage) json.RawMessage
func SanitizeString ¶ added in v1.8.0
func SnowflakeCloudProvider ¶
func SnowflakeCloudProvider(config interface{}) string
func SortColumnKeysFromColumnMap ¶ added in v0.1.10
func SortColumnKeysFromColumnMap(columnMap model.TableSchema) []string
func StagingTableName ¶ added in v1.2.0
func StagingTablePrefix ¶ added in v1.2.0
func TimingFromJSONString ¶ added in v0.1.10
func TimingFromJSONString(str sql.NullString) (status string, recordedTime time.Time)
func ToProviderCase ¶ added in v0.1.10
ToProviderCase converts string provided to case generally accepted in the warehouse for table, column, schema names etc. e.g. columns are uppercase in SNOWFLAKE and lowercase etc. in REDSHIFT, BIGQUERY etc
func ToSafeNamespace ¶ added in v0.1.10
ToSafeNamespace convert name of the namespace to one acceptable by warehouse 1. Remove symbols and joins continuous letters and numbers with single underscore and if first char is a number will append an underscore before the first number 2. adds an underscore if the name is a reserved keyword in the warehouse 3. truncate the length of namespace to 127 characters 4. return "stringempty" if name is empty after conversion examples: omega to omega omega v2 to omega_v2 9mega to _9mega mega& to mega ome$ga to ome_ga omega$ to omega ome_ ga to ome_ga 9mega________-________90 to _9mega_90 Cízǔ to C_z
func WHCounterStat ¶ added in v1.0.2
Types ¶
type ColumnInfo ¶ added in v1.3.0
type DeleteByMetaData ¶ added in v1.2.0
type DeleteByParams ¶ added in v1.2.0
type Destination ¶ added in v1.7.0
type Destination struct { Source backendconfig.SourceT Destination backendconfig.DestinationT }
type FetchTableInfo ¶ added in v1.9.0
type GCSLocationOptions ¶ added in v1.7.0
type GCSLocationOptions struct {
TLDFormat string
}
type GetLoadFilesOptions ¶ added in v1.7.0
type LoadFile ¶ added in v1.7.0
type LoadFile struct { Location string Metadata json.RawMessage }
func GetS3Locations ¶
type QueryResult ¶ added in v0.1.10
type SourceIDDestinationID ¶ added in v1.9.0
type TableSchemaDiff ¶ added in v1.7.0
type TableSchemaDiff struct { Exists bool TableToBeCreated bool ColumnMap model.TableSchema UpdatedSchema model.TableSchema AlteredColumnMap model.TableSchema }
type Uploader ¶ added in v1.7.0
type Uploader interface { GetSchemaInWarehouse() model.Schema GetLocalSchema(ctx context.Context) (model.Schema, error) UpdateLocalSchema(ctx context.Context, schema model.Schema) error GetTableSchemaInWarehouse(tableName string) model.TableSchema GetTableSchemaInUpload(tableName string) model.TableSchema GetLoadFilesMetadata(ctx context.Context, options GetLoadFilesOptions) []LoadFile GetSampleLoadFileLocation(ctx context.Context, tableName string) (string, error) GetSingleLoadFile(ctx context.Context, tableName string) (LoadFile, error) ShouldOnDedupUseNewRecord() bool UseRudderStorage() bool GetLoadFileGenStartTIme() time.Time GetLoadFileType() string GetFirstLastEvent() (time.Time, time.Time) }
type WriteSSLKeyError ¶ added in v0.1.10
type WriteSSLKeyError struct {
// contains filtered or unexported fields
}
func WriteSSLKeys ¶ added in v0.1.10
func WriteSSLKeys(destination backendconfig.DestinationT) WriteSSLKeyError
WriteSSLKeys writes the ssl key(s) present in the destination config to the file system, this function checks whether a given config is already written to the file system, writes to the file system if the content is not already written
func (*WriteSSLKeyError) Error ¶ added in v0.1.10
func (err *WriteSSLKeyError) Error() string
func (*WriteSSLKeyError) GetErrTag ¶ added in v0.1.10
func (err *WriteSSLKeyError) GetErrTag() string
func (*WriteSSLKeyError) IsError ¶ added in v0.1.10
func (err *WriteSSLKeyError) IsError() bool