日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

文檔

OSS數(shù)據(jù)源

OSS數(shù)據(jù)源為您提供讀取和寫入OSS的雙向通道,本文為您介紹DataWorks的OSS數(shù)據(jù)同步的能力支持情況。

支持的字段類型與使用限制

離線讀

OSS Reader實(shí)現(xiàn)了從OSS讀取數(shù)據(jù)并轉(zhuǎn)為數(shù)據(jù)集成協(xié)議的功能,OSS本身是無結(jié)構(gòu)化數(shù)據(jù)存儲。對于數(shù)據(jù)集成而言,OSS Reader支持的功能如下。

支持

不支持

  • 支持且僅支持讀取TXT格式的文件,且要求TXT中schema為一張二維表。

  • 支持類CSV格式文件,自定義分隔符。

  • 支持ORC、PARQUET格式.

  • 支持多種類型數(shù)據(jù)讀取(使用String表示),支持列裁剪、列常量。

  • 支持遞歸讀取、支持文件名過濾。

  • 支持文本壓縮,現(xiàn)有壓縮格式為gzipbzip2zip

    說明

    一個(gè)壓縮包不允許多文件打包壓縮。

  • 多個(gè)Object可以支持并發(fā)讀取。

  • 單個(gè)Object(File)不支持多線程并發(fā)讀取。

  • 單個(gè)Object在壓縮情況下,從技術(shù)上無法支持多線程并發(fā)讀取。

  • 單個(gè)Object(File)不超過100 GB。

重要

準(zhǔn)備OSS數(shù)據(jù)時(shí),如果數(shù)據(jù)為CSV文件,則必須為標(biāo)準(zhǔn)格式的CSV文件。例如,如果列內(nèi)容在半角引號(")內(nèi),需要替換成兩個(gè)半角引號(""),否則會(huì)造成文件被錯(cuò)誤分割。

離線寫

OSS Writer實(shí)現(xiàn)了從數(shù)據(jù)同步協(xié)議轉(zhuǎn)為OSS中的文本文件功能,OSS本身是無結(jié)構(gòu)化數(shù)據(jù)存儲,目前OSS Writer支持的功能如下。

支持

不支持

  • 支持且僅支持寫入文本類型(不支持BLOB,如視頻和圖片)的文件,并要求文本文件中的Schema為一張二維表。

  • 支持類CSV格式文件,自定義分隔符。

  • 支持ORC、PARQUET格式。

  • 支持多線程寫入,每個(gè)線程寫入不同的子文件。

  • 文件支持滾動(dòng),當(dāng)文件大于某個(gè)size值時(shí),支持文件切換。

  • 單個(gè)文件不能支持并發(fā)寫入。

  • OSS本身不提供數(shù)據(jù)類型,OSS Writer均以STRING類型寫入OSS對象。

  • 如果OSS的Bucket存儲類型為冷歸檔存儲,則不支持寫入。

類型分類

數(shù)據(jù)集成column配置類型

整數(shù)類

LONG

字符串類

STRING

浮點(diǎn)類

DOUBLE

布爾類

BOOLEAN

日期時(shí)間類

DATE

實(shí)時(shí)寫

  • 支持實(shí)時(shí)寫入的能力。

  • 支持實(shí)時(shí)寫入Hudi格式版本:0.12.x。

數(shù)據(jù)同步任務(wù)開發(fā)

OSS數(shù)據(jù)同步任務(wù)的配置入口和通用配置流程指導(dǎo)可參見下文的配置指導(dǎo),詳細(xì)的配置參數(shù)解釋可在配置界面查看對應(yīng)參數(shù)的文案提示。

創(chuàng)建數(shù)據(jù)源

在進(jìn)行數(shù)據(jù)同步任務(wù)開發(fā)時(shí),您需要在DataWorks上創(chuàng)建一個(gè)對應(yīng)的數(shù)據(jù)源,操作流程請參見創(chuàng)建并管理數(shù)據(jù)源

單表離線同步任務(wù)配置指導(dǎo)

單表實(shí)時(shí)同步任務(wù)配置指導(dǎo)

操作流程請參見配置單表增量數(shù)據(jù)實(shí)時(shí)同步DataStudio側(cè)實(shí)時(shí)同步任務(wù)配置

整庫(實(shí)時(shí))全增量同步配置指導(dǎo)

操作流程請參見數(shù)據(jù)集成側(cè)同步任務(wù)配置

常見問題

附錄:腳本Demo與參數(shù)說明

附錄:離線任務(wù)腳本配置方式

如果您配置離線任務(wù)時(shí)使用腳本模式的方式進(jìn)行配置,您需要在任務(wù)腳本中按照腳本的統(tǒng)一格式要求編寫腳本中的reader參數(shù)和writer參數(shù),腳本模式的統(tǒng)一要求請參見通過腳本模式配置離線同步任務(wù),以下為您介紹腳本模式下的數(shù)據(jù)源的Reader參數(shù)和Writer參數(shù)的指導(dǎo)詳情。

OSS Reader腳本Demo:通用示例

{
    "type":"job",
    "version":"2.0",//版本號。
    "steps":[
        {
            "stepType":"oss",//插件名。
            "parameter":{
                "nullFormat":"",//定義可以表示為null的字符串。
                "compress":"",//文本壓縮類型。
                "datasource":"",//數(shù)據(jù)源。
                "column":[//字段。
                    {
                        "index":0,//列序號。
                        "type":"string"http://數(shù)據(jù)類型。
                    },
                    {
                        "index":1,
                        "type":"long"
                    },
                    {
                        "index":2,
                        "type":"double"
                    },
                    {
                        "index":3,
                        "type":"boolean"
                    },
                    {
                        "format":"yyyy-MM-dd HH:mm:ss", //時(shí)間格式。
                        "index":4,
                        "type":"date"
                    }
                ],
                "skipHeader":"",//類CSV格式文件可能存在表頭為標(biāo)題情況,需要跳過。
                "encoding":"",//編碼格式。
                "fieldDelimiter":",",//字段分隔符。
                "fileFormat": "",//文本類型。
                "object":[]//object前綴。
            },
            "name":"Reader",
            "category":"reader"
        },
        {
            "stepType":"stream",
            "parameter":{},
            "name":"Writer",
            "category":"writer"
        }
    ],
    "setting":{
        "errorLimit":{
            "record":""http://錯(cuò)誤記錄數(shù)。
        },
        "speed":{
            "throttle":true,//當(dāng)throttle值為false時(shí),mbps參數(shù)不生效,表示不限流;當(dāng)throttle值為true時(shí),表示限流。
            "concurrent":1 //作業(yè)并發(fā)數(shù)。
            "mbps":"12",//限流,此處1mbps = 1MB/s。
        }
    },
    "order":{
        "hops":[
            {
                "from":"Reader",
                "to":"Writer"
            }
        ]
    }
}

OSS Reader腳本Demo:ORC或Parquet文件讀取OSS

目前通過復(fù)用HDFS Reader的方式完成OSS讀取ORC或Parquet格式的文件,在OSS Reader已有參數(shù)的基礎(chǔ)上,增加了PathFileFormat等擴(kuò)展配置參數(shù),參數(shù)含義請參見HDFS Reader

  • 以O(shè)RC文件格式讀取OSS,示例如下。

    {
    "stepType": "oss",
    "parameter": {
    "datasource": "",
    "fileFormat": "orc",
    "path": "/tests/case61/orc__691b6815_9260_4037_9899_****",
    "column": [
    {
    "index": 0,
    "type": "long"
    },
    {
    "index": "1",
    "type": "string"
    },
    {
    "index": "2",
    "type": "string"
    }
    ]
    }
    }
  • 以Parquet文件格式讀取OSS,示例如下。

    {
      "type":"job",
        "version":"2.0",
        "steps":[
        {
          "stepType":"oss",
          "parameter":{
            "nullFormat":"",
            "compress":"",
            "fileFormat":"parquet",
            "path":"/*",
            "parquetSchema":"message m { optional BINARY registration_dttm (UTF8); optional Int64 id; optional BINARY first_name (UTF8); optional BINARY last_name (UTF8); optional BINARY email (UTF8); optional BINARY gender (UTF8); optional BINARY ip_address (UTF8); optional BINARY cc (UTF8); optional BINARY country (UTF8); optional BINARY birthdate (UTF8); optional DOUBLE salary; optional BINARY title (UTF8); optional BINARY comments (UTF8); }",
            "column":[
              {
                "index":"0",
                "type":"string"
              },
              {
                "index":"1",
                "type":"long"
              },
              {
                "index":"2",
                "type":"string"
              },
              {
                "index":"3",
                "type":"string"
              },
              {
                "index":"4",
                "type":"string"
              },
              {
                "index":"5",
                "type":"string"
              },
              {
                "index":"6",
                "type":"string"
              },
              {
                "index":"7",
                "type":"string"
              },
              {
                "index":"8",
                "type":"string"
              },
              {
                "index":"9",
                "type":"string"
              },
              {
                "index":"10",
                "type":"double"
              },
              {
                "index":"11",
                "type":"string"
              },
              {
                "index":"12",
                "type":"string"
              }
            ],
            "skipHeader":"false",
            "encoding":"UTF-8",
            "fieldDelimiter":",",
            "fieldDelimiterOrigin":",",
            "datasource":"wpw_demotest_oss",
            "envType":0,
            "object":[
              "wpw_demo/userdata1.parquet"
            ]
          },
          "name":"Reader",
          "category":"reader"
        },
        {
          "stepType":"odps",
          "parameter":{
            "partition":"dt=${bizdate}",
            "truncate":true,
            "datasource":"0_odps_wpw_demotest",
            "envType":0,
            "column":[
              "id"
            ],
            "emptyAsNull":false,
            "table":"wpw_0827"
          },
          "name":"Writer",
          "category":"writer"
        }
      ],
        "setting":{
        "errorLimit":{
          "record":""
        },
        "locale":"zh_CN",
          "speed":{
          "throttle":false,
            "concurrent":2
        }
      },
      "order":{
        "hops":[
          {
            "from":"Reader",
            "to":"Writer"
          }
        ]
      }
    }

OSS Reader腳本參數(shù)

參數(shù)

描述

是否必選

默認(rèn)值

datasource

數(shù)據(jù)源名稱,腳本模式支持添加數(shù)據(jù)源,此配置項(xiàng)填寫的內(nèi)容必須要與添加的數(shù)據(jù)源名稱保持一致。

Object

OSS的Object信息,此處可以支持填寫多個(gè)Object。例如xxx的bucket中有yunshi文件夾,文件夾中有l(wèi)l.txt文件,則Object直接填yunshi/ll.txt。 支持使用調(diào)度參數(shù)并配合調(diào)度,靈活生成Object文件名稱與路徑。

  • 當(dāng)指定單個(gè)OSS Object時(shí),OSS Reader暫時(shí)只能使用單線程進(jìn)行數(shù)據(jù)抽取。后期將考慮在非壓縮文件情況下針對單個(gè)Object可以進(jìn)行多線程并發(fā)讀取。

  • 當(dāng)指定多個(gè)OSS Object時(shí),OSS Reader支持使用多線程進(jìn)行數(shù)據(jù)抽取。可以根據(jù)具體要求配置線程并發(fā)數(shù)。

  • 當(dāng)指定通配符時(shí),OSS Reader嘗試遍歷出多個(gè)Object信息。例如配置為abc*[0-9]時(shí),可以匹配到abc0abc1abc2abc3等;配置為abc?.txt時(shí),可以匹配到以abc開頭、 .txt結(jié)尾、中間有1個(gè)任意字符的文件。

    配置通配符會(huì)導(dǎo)致內(nèi)存溢出,通常不建議您進(jìn)行配置。詳情請參見OSS產(chǎn)品概述

說明
  • 數(shù)據(jù)同步系統(tǒng)會(huì)將一個(gè)作業(yè)下同步的所有Object視作同一張數(shù)據(jù)表。您必須保證所有的Object能夠適配同一套Schema信息。

  • 請注意控制單個(gè)目錄下的文件個(gè)數(shù),否則可能會(huì)觸發(fā)系統(tǒng)OutOfMemoryError報(bào)錯(cuò)。如果遇到此情況,請將文件拆分到不同目錄后再嘗試進(jìn)行同步。

parquetSchema

以Parquet文件格式讀取OSS時(shí)配置,當(dāng)且僅當(dāng)fileFormatparquet時(shí)生效,具體表示parquet存儲的類型說明。您需要確保填寫parquetSchema后,整體配置符合JSON語法。

message MessageType名 {
是否必填, 數(shù)據(jù)類型, 列名;
......................;
}

parquetSchema的配置格式說明如下:

  • MessageType名:填寫名稱。

  • 是否必填:required表示非空,optional表示可為空。推薦全填optional。

  • 數(shù)據(jù)類型:Parquet文件支持BOOLEAN、Int32、Int64、Int96、FLOAT、DOUBLE、BINARY(如果是字符串類型,請?zhí)頑INARY)和fixed_len_byte_array類型。

  • 每行列設(shè)置必須以分號結(jié)尾,最后一行也要寫上分號。

配置示例如下所示。

"parquetSchema": "message m { optional int32 minute_id; optional int32 dsp_id; optional int32 adx_pid; optional int64 req; optional int64 res; optional int64 suc; optional int64 imp; optional double revenue; }"

column

讀取字段列表,type指定源數(shù)據(jù)的類型,index指定當(dāng)前列來自于文本第幾列(以0開始),value指定當(dāng)前類型為常量,不是從源頭文件讀取數(shù)據(jù),而是根據(jù)value值自動(dòng)生成對應(yīng)的列。

默認(rèn)情況下,您可以全部按照String類型讀取數(shù)據(jù),配置如下。

"column": ["*"]

您可以指定column字段信息,配置如下。

"column":
    {
       "type": "long",
       "index": 0    //從OSS文本第一列獲取int字段。
    },
    {
       "type": "string",
       "value": "alibaba"  //從OSSReader內(nèi)部生成alibaba的字符串字段作為當(dāng)前字段。
    }
說明

對于您指定的column信息,type必須填寫,index/value必須選擇其一。

全部按照STRING類型讀取。

fileFormat

文本類型。源頭OSS的文件類型。例如csv、text,兩種格式均支持自定義分隔符。

csv

fieldDelimiter

讀取的字段分隔符。

說明

OSS Reader在讀取數(shù)據(jù)時(shí),需要指定字段分割符,如果不指定默認(rèn)為(,),界面配置中也會(huì)默認(rèn)填寫為(,)。

如果分隔符不可見,請?zhí)顚慤nicode編碼。例如,\u001b\u007c

,

lineDelimiter

讀取的行分隔符。

說明

當(dāng)fileFormat取值為text時(shí),本參數(shù)有效。

compress

文本壓縮類型,默認(rèn)不填寫(即不壓縮)。支持壓縮類型為gzipbzip2zip

不壓縮

encoding

讀取文件的編碼配置。

utf-8

nullFormat

文本文件中無法使用標(biāo)準(zhǔn)字符串定義null(空指針),數(shù)據(jù)同步提供nullFormat定義哪些字符串可以表示為null。 例如:

  • 配置nullFormat:"null",等同于“可見字符”,如果源頭數(shù)據(jù)是null,則數(shù)據(jù)同步視作null字段。

  • 配置nullFormat:"\u0001",等同于“不可見字符”,如果源頭數(shù)據(jù)是字符串"\u0001",則數(shù)據(jù)同步視作null字段。

  • 不寫"nullFormat"這個(gè)參數(shù),等同于“未配置”,代表來源是什么數(shù)據(jù)就直接按照什么數(shù)據(jù)寫入目標(biāo)端,不做任何轉(zhuǎn)換。

skipHeader

類CSV格式文件可能存在表頭為標(biāo)題情況,需要跳過。默認(rèn)不跳過,壓縮文件模式下不支持skipHeader

false

csvReaderConfig

讀取CSV類型文件參數(shù)配置,Map類型。讀取CSV類型文件使用的CsvReader進(jìn)行讀取,會(huì)有很多配置,不配置則使用默認(rèn)值。

OSS Writer腳本Demo:通用示例

{
    "type":"job",
    "version":"2.0",
    "steps":[
        {
            "stepType":"stream",
            "parameter":{},
            "name":"Reader",
            "category":"reader"
        },
        {
            "stepType":"oss",//插件名。
            "parameter":{
                "nullFormat":"",//數(shù)據(jù)同步系統(tǒng)提供nullFormat,定義哪些字符串可以表示為null。
                "dateFormat":"",//日期格式。
                "datasource":"",//數(shù)據(jù)源。
                "writeMode":"",//寫入模式。
                "writeSingleObject":"false", //表示是否將同步數(shù)據(jù)寫入單個(gè)oss文件。
                "encoding":"",//編碼格式。
                "fieldDelimiter":","http://字段分隔符。
                "fileFormat":"",//文本類型。
                "object":""http://Object前綴。
            },
            "name":"Writer",
            "category":"writer"
        }
    ],
    "setting":{
        "errorLimit":{
            "record":"0"http://錯(cuò)誤記錄數(shù)。
        },
        "speed":{
            "throttle":true,//當(dāng)throttle值為false時(shí),mbps參數(shù)不生效,表示不限流;當(dāng)throttle值為true時(shí),表示限流。
            "concurrent":1, //作業(yè)并發(fā)數(shù)。
            "mbps":"12"http://限流,此處1mbps = 1MB/s。
        }
    },
    "order":{
        "hops":[
            {
                "from":"Reader",
                "to":"Writer"
            }
        ]
    }
}

OSS Writer腳本Demo:ORC或Parquet文件寫入OSS腳本配置demo

目前通過復(fù)用HDFS Writer的方式完成OSS寫ORC或Parquet格式的文件。在OSS Writer已有參數(shù)的基礎(chǔ)上,增加了PathFileFormat等擴(kuò)展配置參數(shù),參數(shù)含義請參見HDFS Writer

ORC或Parquet文件寫入OSS的示例如下:

重要

以下僅為示例,請根據(jù)您自己具體的列名稱和類型修改對應(yīng)的參數(shù),請勿直接復(fù)制使用。

  • 以O(shè)RC文件格式寫入OSS

    寫ORC文件,當(dāng)前僅支持腳本模式,您需要轉(zhuǎn)腳本模式配置,其中fileFormat需要配置為orcpath需要配置為寫入文件的路徑,column配置格式為 {"name":"your column name","type": "your column type"}

    當(dāng)前支持寫入的ORC類型如下:

    字段類型

    離線寫OSS(ORC格式)

    TINYINT

    支持

    SMALLINT

    支持

    INT

    支持

    BIGINT

    支持

    FLOAT

    支持

    DOUBLE

    支持

    TIMESTAMP

    支持

    DATE

    支持

    VARCHAR

    支持

    STRING

    支持

    CHAR

    支持

    BOOLEAN

    支持

    DECIMAL

    支持

    BINARY

    支持

    {
    "stepType": "oss",
    "parameter": {
    "datasource": "",
    "fileFormat": "orc",
    "path": "/tests/case61",
    "fileName": "orc",
    "writeMode": "append",
    "column": [
    {
    "name": "col1",
    "type": "BIGINT"
    },
    {
    "name": "col2",
    "type": "DOUBLE"
    },
    {
    "name": "col3",
    "type": "STRING"
    }
    ],
    "writeMode": "append",
    "fieldDelimiter": "\t",
    "compress": "NONE",
    "encoding": "UTF-8"
    }
    }
  • 以Parquet文件格式寫入OSS

    {
    "stepType": "oss",
    "parameter": {
    "datasource": "",
    "fileFormat": "parquet",
    "path": "/tests/case61",
    "fileName": "test",
    "writeMode": "append",
    "fieldDelimiter": "\t",
    "compress": "SNAPPY",
    "encoding": "UTF-8",
    "parquetSchema": "message test { required int64 int64_col;\n required binary str_col (UTF8);\nrequired group params (MAP) {\nrepeated group key_value {\nrequired binary key (UTF8);\nrequired binary value (UTF8);\n}\n}\nrequired group params_arr (LIST) {\nrepeated group list {\nrequired binary element (UTF8);\n}\n}\nrequired group params_struct {\nrequired int64 id;\n required binary name (UTF8);\n }\nrequired group params_arr_complex (LIST) {\nrepeated group list {\nrequired group element {\n required int64 id;\n required binary name (UTF8);\n}\n}\n}\nrequired group params_complex (MAP) {\nrepeated group key_value {\nrequired binary key (UTF8);\nrequired group value {\nrequired int64 id;\n required binary name (UTF8);\n}\n}\n}\nrequired group params_struct_complex {\nrequired int64 id;\n required group detail {\nrequired int64 id;\n required binary name (UTF8);\n}\n}\n}",
    "dataxParquetMode": "fields"
    }
    }

OSS Writer腳本參數(shù)

參數(shù)

描述

是否必選

默認(rèn)值

datasource

數(shù)據(jù)源名稱,腳本模式支持添加數(shù)據(jù)源,該配置項(xiàng)填寫的內(nèi)容必須與添加的數(shù)據(jù)源名稱保持一致。

object

OSS Writer寫入的文件名,OSS使用文件名模擬目錄的實(shí)現(xiàn)。OSS對于Object的名稱有以下限制:

  • 使用"object": "datax",寫入的Object以datax開頭,后綴添加隨機(jī)字符串。

  • 使用"object": "cdo/datax",寫入的Object以/cdo/datax開頭,后綴隨機(jī)添加字符串,OSS模擬目錄的分隔符為(/)。

如果您不需要后綴隨機(jī)UUID,建議您配置"writeSingleObject" : "true",詳情請參見writeSingleObject說明。

writeMode

OSS Writer寫入前,數(shù)據(jù)的處理:

  • truncate:寫入前清理Object名稱前綴匹配的所有Object。例如"object":"abc",將清理所有abc開頭的Object。

  • append:寫入前不進(jìn)行任何處理,數(shù)據(jù)集成OSS Writer直接使用Object名稱寫入,并使用隨機(jī)UUID的后綴名來保證文件名不沖突。例如您指定的Object名為數(shù)據(jù)集成,實(shí)際寫入為DI_****_****_****

  • nonConflict:如果指定路徑出現(xiàn)前綴匹配的Object,直接報(bào)錯(cuò)。例如"object":"abc",如果存在abc123的Object,將直接報(bào)錯(cuò)。

writeSingleObject

OSS寫數(shù)據(jù)時(shí),是否寫單個(gè)文件:

  • true:表示寫單個(gè)文件,當(dāng)讀不到任何數(shù)據(jù)時(shí), 不會(huì)產(chǎn)生空文件。

  • false:表示寫多個(gè)文件,當(dāng)讀不到任何數(shù)據(jù)時(shí),若配置文件頭,會(huì)輸出空文件只包含文件頭,否則只輸出空文件。

說明

當(dāng)寫入ORC、parquet類型數(shù)據(jù)時(shí),writeSingleObject參數(shù)不生效,即使用該參數(shù)無法在多并發(fā)場景下,寫入單個(gè)ORC或parquet文件。若要寫入單個(gè)文件,您可以將并發(fā)設(shè)置為1,但文件名會(huì)添加隨機(jī)后綴,并且設(shè)置并發(fā)為1時(shí),將影響同步任務(wù)的速度。

false

fileFormat

文件寫出的格式,支持以下幾種格式:

  • csv:僅支持嚴(yán)格的csv格式。如果待寫數(shù)據(jù)包括列分隔符,則會(huì)根據(jù)csv的轉(zhuǎn)義語法轉(zhuǎn)義,轉(zhuǎn)義符號為雙引號(")。

  • text:使用列分隔符簡單分割待寫數(shù)據(jù),對于待寫數(shù)據(jù)包括列分隔符情況下不進(jìn)行轉(zhuǎn)義。

  • parquet:若使用此文件類型,必須增加parquetschema參數(shù)定義數(shù)據(jù)類型。

    重要
  • ORC:若使用此種格式,需要轉(zhuǎn)腳本模式。

text

compress

寫入OSS的數(shù)據(jù)文件的壓縮格式(需使用腳本模式任務(wù)配置)。

說明

csv、text文本類型不支持壓縮,parquet/orc文件支持gzip、snappy等壓縮。

fieldDelimiter

寫入的字段分隔符。

,

encoding

寫出文件的編碼配置。

utf-8

parquetSchema

以Parquet文件格式寫入OSS的必填項(xiàng),用來描述目標(biāo)文件的結(jié)構(gòu),所以此項(xiàng)當(dāng)且僅當(dāng)fileFormatparquet時(shí)生效,格式如下。

message MessageType名 {
是否必填, 數(shù)據(jù)類型, 列名;
......................;
}

配置項(xiàng)說明如下:

  • MessageType名:填寫名稱。

  • 是否必填:required表示非空,optional表示可為空。推薦全填optional。

  • 數(shù)據(jù)類型:Parquet文件支持BOOLEAN、INT32、INT64、INT96、FLOAT、DOUBLE、BINARY(如果是字符串類型,請?zhí)頑INARY)和FIXED_LEN_BYTE_ARRAY等類型。

說明

每行列設(shè)置必須以分號結(jié)尾,最后一行也要寫上分號。

示例如下。

message m {
optional int64 id;
optional int64 date_id;
optional binary datetimestring;
optional int32 dspId;
optional int32 advertiserId;
optional int32 status;
optional int64 bidding_req_num;
optional int64 imp;
optional int64 click_num;
}

nullFormat

文本文件中無法使用標(biāo)準(zhǔn)字符串定義null(空指針),數(shù)據(jù)同步系統(tǒng)提供nullFormat定義可以表示為null的字符串。例如,您配置nullFormat="null",如果源頭數(shù)據(jù)是null,數(shù)據(jù)同步系統(tǒng)會(huì)視作null字段。

header

OSS寫出時(shí)的表頭,例如,["id", "name", "age"]

maxFileSize(高級配置,向?qū)J讲恢С郑?/p>

OSS寫出時(shí)單個(gè)Object文件的最大值,默認(rèn)為10,000*10MB,類似于在打印log4j日志時(shí),控制日志文件的大小。OSS分塊上傳時(shí),每個(gè)分塊大小為10MB(也是日志輪轉(zhuǎn)文件最小粒度,即小于10MB的maxFileSize會(huì)被作為10MB),每個(gè)OSS InitiateMultipartUploadRequest支持的分塊最大數(shù)量為10,000。

輪轉(zhuǎn)發(fā)生時(shí),Object名字規(guī)則是在原有Object前綴加UUID隨機(jī)數(shù)的基礎(chǔ)上,拼接_1,_2,_3等后綴。

說明

默認(rèn)單位為MB。

配置示例:"maxFileSize":300, 表示設(shè)置單個(gè)文件大小為300M。

100,000

suffix(高級配置,向?qū)J讲恢С郑?/p>

數(shù)據(jù)同步寫出時(shí),生成的文件名后綴。例如,配置suffix.csv,則最終寫出的文件名為fileName****.csv

附錄2:parquet類型數(shù)據(jù)的轉(zhuǎn)化策略

如果您沒有配置parquetSchema,那么DataWorks側(cè)會(huì)根據(jù)源端字段類型,按照一定的策略進(jìn)行相應(yīng)數(shù)據(jù)類型轉(zhuǎn)換,轉(zhuǎn)換策略如下。

轉(zhuǎn)換后的數(shù)據(jù)類型

Parquet type

Parquet logical type

CHAR / VARCHAR / STRING

BINARY

UTF8

BOOLEAN

BOOLEAN

不涉及

BINARY / VARBINARY

BINARY

不涉及

DECIMAL

FIXED_LEN_BYTE_ARRAY

DECIMAL

TINYINT

INT32

INT_8

SMALLINT

INT32

INT_16

INT/INTEGER

INT32

不涉及

BIGINT

INT64

不涉及

FLOAT

FLOAT

不涉及

DOUBLE

DOUBLE

不涉及

DATE

INT32

DATE

TIME

INT32

TIME_MILLIS

TIMESTAMP/DATETIME

INT96

不涉及