airflow.providers.google.cloud.transfers.cassandra_to_gcs
¶
此模块包含用于将数据从 Cassandra 以 JSON 格式复制到 Google Cloud Storage 的操作符。
模块内容¶
类¶
以 JSON 格式将数据从 Cassandra 复制到 Google Cloud Storage。 |
属性¶
- class airflow.providers.google.cloud.transfers.cassandra_to_gcs.CassandraToGCSOperator(*, cql, bucket, filename, schema_filename=None, approx_max_file_size_bytes=1900000000, gzip=False, cassandra_conn_id='cassandra_default', gcp_conn_id='google_cloud_default', impersonation_chain=None, query_timeout=NOT_SET, encode_uuid=True, **kwargs)[源代码]¶
基类:
airflow.models.BaseOperator
以 JSON 格式将数据从 Cassandra 复制到 Google Cloud Storage。
注意:不支持数组的数组。
- 参数
cql (str) – 要在 Cassandra 表上执行的 CQL。
bucket (str) – 要上传到的存储桶。
filename (str) – 上传到 Google Cloud Storage 时用作对象名称的文件名。应在文件名中指定 {},以便在文件因大小而拆分的情况下,操作符可以注入文件编号。
schema_filename (str | None) – 如果设置,则用作对象名称的文件名,当上传一个 .json 文件时,该文件包含从 MySQL 转储的表的 BigQuery 模式字段。
approx_max_file_size_bytes (int) – 此操作符支持将大型表转储拆分为多个文件的功能(请参阅上面文件名参数文档中的说明)。此参数允许开发人员指定拆分的文件大小。请查看 https://cloud.google.com/storage/quotas 以查看单个对象允许的最大文件大小。
cassandra_conn_id (str) – 对特定 Cassandra hook 的引用。
gzip (bool) – 用于上传的压缩文件选项
gcp_conn_id (str) – (可选) 用于连接到 Google Cloud 的连接 ID。
impersonation_chain (str | collections.abc.Sequence[str] | None) – 可选的服务帐户,用于使用短期凭据模拟,或者用于获取列表中最后一个帐户的 access_token 的链接帐户列表,该帐户将在请求中被模拟。如果设置为字符串,则该帐户必须授予原始帐户“服务帐户令牌创建者”IAM 角色。如果设置为序列,则列表中的身份必须向直接前面的身份授予“服务帐户令牌创建者”IAM 角色,列表中的第一个帐户将此角色授予原始帐户(已模板化)。
query_timeout (float | None | NotSetType) – (可选) 执行 Cassandra 查询所用的时间量,以秒为单位。如果未设置,超时值将由 Cassandra 驱动程序在 Session.execute() 中设置。如果设置为 None,则没有超时。
encode_uuid (bool) – (可选) 当从 Cassandra 上传到 GCS 时是否编码 UUID 的选项。默认是编码 UUID。
- template_fields: collections.abc.Sequence[str] = ('cql', 'bucket', 'filename', 'schema_filename', 'impersonation_chain')[源代码]¶
- template_ext: collections.abc.Sequence[str] = ('.cql',)[源代码]¶
- convert_user_type(value)[源代码]¶
将用户类型转换为包含 n 个字段的 RECORD,其中 n 是属性的数量。
用户类型类中的每个元素都将转换为其在 BQ 中对应的数据类型。