menu
Is this helpful?

# TaCustomTableWriter 플러그인

# 1. 소개

TACustomTableWriter는 Ta 시스템에 커스텀 테이블을 생성할 수 있습니다. 때때로 유저 또는 이벤트 형식으로 표시되지 않는 매핑 테이블이나 외부 데이터와 같은 데이터를 사용해야 할 경우가 있습니다. 이 데이터를 사용하려면 TACustomTableWriter 플러그인을 사용하여 TA 시스템에 커스텀 데이터를 가져와야 합니다.

# 2. 기능 및 제한 사항

TA 시스템의 사용자 정의 테이블 기능만 지원됩니다.

# 3. 기능 설명

# 3.1 샘플 구성

{
  "job": {
    "setting": {
      "speed": {
        "channel": 1
      }
    },
    "content": [
      {
        "reader": {
          "name": "streamreader",
          "parameter": {
            "column": [
              {
                "value": 123456,
                "type": "long"
              },
              {
                "value": "123123",
                "type": "string"
              },
              {
                "value": "pay",
                "type": "string"
              },
              {
                "value": "2020-01-01 08:08:08",
                "type": "date"
              },
              {
                "value": "2020-01-01 08:08:08",
                "type": "date"
              },
              {
                "value": "2222",
                "type": "string"
              },
              {
                "value": "2020-01-01 08:08:08",
                "type": "date"
              },
              {
                "value": "test",
                "type": "string"
              },
              {
                "value": true,
                "type": "bool"
              }
            ],
            "sliceRecordCount": 10
          }
        },
        "writer": {
          "name": "ta-custom-table-writer",
          "parameter": {
            "appid": "6f9e64da5bc74792b9e9c1db4e3e3822",
            "table": "ta_custom_table",
            "tableDesc": "test table",
            "partitionValue": "2020-01-01",
            "writeMode": "overwrite",
            "column": [
              {
                "type": "double",
                "name": "id"
              },
              {
                "type": "string",
                "name": "distinct_id"
              },
              {
                "type": "string",
                "name": "event_name"
              },
              {
                "type": "string",
                "name": "time"
              },
              {
                "name": "event_time",
                "type": "string"
              },
              {
                "type": "string",
                "name": "account_id"
              },
              {
                "type": "string",
                "name": "testDate"
              },
              {
                "type": "string",
                "name": "timetest2"
              },
              {
                "type": "string",
                "name": "os_1"
              }
            ]
          }
        }
      }
    ]
  }
}

# 3.2 파라미터 설명

  • appid
    • 설명: 가져오기 테이블에 해당하는 프로젝트 appid는 TA 시스템의 백그라운드에서 찾을 수 있습니다. 시스템에 존재해야 하며, 프로젝트가 오프라인 상태가 아니어야 합니다.
    • 유형: 문자열
    • 필수: 예
    • 기본값: 없음
  • table
    • 설명: TA 시스템에 가져올 테이블 이름입니다. 테이블 이름은 전역적으로 중복될 수 없습니다. 프로젝트마다 구분 가능한 접두사나 접미사를 추가하는 것이 좋습니다. 테이블 이름은 숫자, 문자, 밑줄의 조합만 사용할 수 있습니다.
    • 유형: 문자열
    • 필수: 예
    • 기본값: 없음
  • tableDesc
    • 설명: 테이블의 주석을 가져옵니다. 나중에 테이블을 조회하고 의미를 명확히 하기 위해 이 매개변수를 구성하는 것이 좋습니다.
    • 유형: 문자열
    • 필수: 아니요
    • 기본값: 없음
  • partitionValue
    • 설명: 가져올 파티션 값입니다. TA 시스템에 의해 가져온 사용자 정의 테이블은 기본적으로 파티션 필드 $pt를 포함하므로, 가져올 때 파티션 값을 지정해야 합니다. 일반적으로 가져온 데이터 날짜로 설정할 수 있으며 예: 20180701, 시간 매크로 치환도 지원합니다. 예: @[{yyyMMdd} - {1day}]. 섹션 XXXX에서 구체적인 사용 방법을 소개합니다.
    • 유형: 문자열
    • 필수: 예
    • 기본값: 없음
  • writeMode
    • 설명: TACustomTableWriter의 데이터 쓰기 전 처리 모드:
      • append: partitionValue 파티션처럼 데이터를 누적하여 씁니다.
      • overwrite: 기존 partitionValue 파티션 아래의 파일을 삭제한 다음 이번에 가져온 데이터를 씁니다.
    • 필수: 예
    • 기본값: 없음
  • column
    • 설명: 데이터를 쓸 필드
    • 필수: 예
    • 기본값: 없음
      • name은 필드 이름을 지정하고, type은 필드 유형을 지정합니다.

사용자는 다음과 같이 Column 필드 정보를 지정할 수 있습니다:

"column":
         [
             {
                "name": "userName",
                "type": "string"
             },
             {
                "name": "age",
                "type": "long"
             }
         ]

# 3.3 유형 변환

현재 TACustomTableWriter는 HIVE 유형을 지원합니다. 자신의 유형을 확인하십시오.

다음은 HIVE 데이터 유형에 대한 TACustomTableWriter 변환 목록입니다:

DataX 내부 유형

HIVE 데이터 유형

Long

TINYINT,SMALLINT,INT,BIGINT

Double

FLOAT,DOUBLE

String

STRING,VARCHAR,CHAR

Boolean

BOOLEAN

Date

DATE,TIMESTAMP