Tlink 소개

Test Flink Streaming SQL
로 컬 에서 flink streaming SQL 을 실행 하여 추가 구성 요소 에 의존 하지 않 고 업무 자 들 이 SQL 개발 효율 을 향상 시 킬 수 있 도록 도 와 줍 니 다.프로젝트 주 소 는 github 에서 tlink 를 검색 하 십시오.코드 전송 도 어
빠 른 속도 로 착수 하 다.
tlink. properties 내용 은 다음 과 같 습 니 다. sql 설정 이 필요 한 최소 집합 을 실행 하 는 것 입 니 다. 기본 데이터 필드 는 user,product,amount 입 니 다.
tlink.streaming.sql.statement=SELECT user, product, SUM(amount) as amounts FROM Orders GROUP BY user, product
tlink.sink.table.fieldNames=user,product,amounts
tlink.sink.table.fieldTypes=LONG,STRING,INT
tlink.sink.table.type=Retract

컴 파일 sh build.sh 을 실행 하면 build 폴 더 아래 에 tlink 디 렉 터 리 를 생 성 합 니 다.
tlink 디 렉 터 리 에 들 어가 다음 명령 을 실행 합 니 다
sh bin/tlink /opt/tlink/conf/tlink.properties

콘 솔 에서 다음 과 같은 출력 을 볼 수 있 습 니 다. 보 낸 데이터 와 sql 실행 결 과 를 표시 합 니 다.
sand data:3,foo,2
Result:(true,3,foo,2)
sand data:9,baz,4
Result:(true,9,baz,4)
sand data:9,foo,7
Result:(true,9,foo,7)
sand data:6,baz,6
Result:(true,6,baz,6)
sand data:2,foo,8
Result:(true,2,foo,8)
sand data:3,foo,8
Result:(false,3,foo,2)

Event time 창 을 기반 으로 한 SQL 은 아래 설정 을 참조 할 수 있 습 니 다.
tlink.streaming.sql.statement=SELECT user, TUMBLE_START(rowtime, INTERVAL '5' SECOND) as wStart,  SUM(amount)  FROM Orders GROUP BY TUMBLE(rowtime, INTERVAL '5' SECOND), user

tlink.source.table.fieldNames=user,product,amount,rowtime.rowtime
tlink.source.table.fieldTypes=LONG,STRING,INT,LONG
tlink.source.eventTime.index=3
tlink.streaming.sql.env.timeCharacteristic=EVENT
tlink.sink.table.fieldNames=user,wStart,amounts
tlink.sink.table.fieldTypes=LONG,SQL_TIMESTAMP,INT
tlink.sink.table.type=Append

blink planner 를 사용 하려 면 tlink - topN. properties 설정 을 참조 하 십시오.
다 중 스 트림 join 을 사용 하려 면 tlink - join. properties 설정 을 참고 하 십시오.
특성
현재 1.0.0 버 전 은 다음 과 같은 기능 을 지원 합 니 다.
  • 이벤트 타임 과 processing time 기반 창 지원
  • 무 작위 데이터 생 성 지원
  • 지정 한 파일 의 방식 으로 데 이 터 를 만 드 는 것 을 지원 합 니 다
  • blink planer 지원
  • 2 개의 스 트림 join, UnionAll 등 sql
  • 지원
  • ddl 방식 으로 데이터 원본 을 만 드 는 것 을 지원 합 니 다. 현재 connector. type 만 filesystem
  • 을 지원 합 니 다.
    매개 변수 설명
    매개 변수
    기본 값
    속뜻
    tlink.source.table.names
    필수, 기본 값 Orders
    데이터 원본 에 등 록 된 표 이름 은 최대 2 개의 표를 지원 하고 표 이름 은 쉼표 로 분할 합 니 다.
    tlink.source.table.fieldNames
    필수, 기본 값 user, product, amount
    데이터 원본 필드 이름
    tlink.source.table.fieldTypes
    필수, 기본 값 LONG, STRING, INT
    데이터 원본 필드 형식
    tlink.source.eventTime.index
    이벤트 타임 을 사용 하면 필수
    이벤트 타임 필드 의 모든 필드 위치
    tlink.source.watermark.maxOutOfOrderness
    이벤트 타임 을 사용 하면 기본 값 10000 mm 입 니 다.
    최대 허용 지연 시간
    tlink.source.producer.mode
    필수, 기본 값 random
    데이터 생 성 방식, random 또는 file 또는 DDL 선택 가능
    tlink.source.producer.sql.statement
    필수, 기본 값 random
    데이터 생 성 SQL 구문
    tlink.source.producer.file.path
    위의 매개 변수 설정 file, 필수
    데이터 파일 절대 경로
    tlink.source.producer.total
    필수
    무 작위 모드 에서 총 발생 하 는 데이터 양
    tlink.source.producer.interval.ms
    필수, 기본 1000 밀리초
    데이터 의 고정 시간 간격 을 만 듭 니 다. 설정 하지 않 으 면 아래 의 무 작위 시간 간격 을 사용 합 니 다.
    tlink.source.producer.interval.random.startInclusive
    필수, 기본 값 1
    기본 의 미 는 RandomUtils. nextLong (1, 5) * 1000 입 니 다.
    tlink.source.producer.interval.random.endExclusive
    필수, 기본 값 5
    기본 의 미 는 RandomUtils. nextLong (1, 5) * 1000 입 니 다.
    tlink.source.producer.interval.random.factor
    필수, 기본 값 1000
    기본 의 미 는 RandomUtils. nextLong (1, 5) * 1000 입 니 다.
    tlink.source.producer.string.values
    필수, 기본 값 foo, bar, baz
    문자열 필드 후보 데이터 세트, string 형식 필드 의 값 을 무 작위 로 선택 하 십시오.
    tlink.source.producer.long.random.startInclusive
    필수, 기본 값 1
    기본 의 미 는 RandomUtils. nextLong (1, 10) * 1 입 니 다.
    tlink.source.producer.long.random.endExclusive
    필수, 기본 값 10
    기본 의 미 는 RandomUtils. nextLong (1, 10) * 1 입 니 다.
    tlink.source.producer.long.random.factor
    필수, 기본 값 1
    기본 의 미 는 RandomUtils. nextLong (1, 10) * 1 입 니 다.
    tlink.source.producer.int.random.startInclusive
    필수, 기본 값 1
    기본 의 미 는 RandomUtils. nextInt (1, 10) * 1 입 니 다.
    tlink.source.producer.int.random.endExclusive
    필수, 기본 값 10
    기본 의 미 는 RandomUtils. nextInt (1, 10) * 1 입 니 다.
    tlink.source.producer.int.random.factor
    필수, 기본 값 1
    기본 의 미 는 RandomUtils. nextInt (1, 10) * 1 입 니 다.
    tlink.source.producer.timestamp.random.startInclusive
    필수, 기본 값 1
    기본적으로 RandomUtils. nextLong (1, 10) * 1000 을 통 해 무 작위 수 를 생 성 합 니 다. 짝수 현재 시간 스탬프 에서 이 무 작위 수 를 이벤트 타임 으로 빼 면 홀수 현재 시간 스탬프 에 이 무 작위 수 를 이벤트 타임 으로 추가 합 니 다.
    tlink.source.producer.timestamp.random.endExclusive
    필수, 기본 값 10
    기본적으로 RandomUtils. nextLong (1, 10) * 1000 을 통 해 무 작위 수 를 생 성 합 니 다. 짝수 현재 시간 스탬프 에서 이 무 작위 수 를 이벤트 타임 으로 빼 면 홀수 현재 시간 스탬프 에 이 무 작위 수 를 이벤트 타임 으로 추가 합 니 다.
    tlink.source.producer.timestamp.random.factor
    필수, 기본 값 1000 밀리초
    기본적으로 RandomUtils. nextLong (1, 10) * 1000 을 통 해 무 작위 수 를 생 성 합 니 다. 짝수 현재 시간 스탬프 에서 이 무 작위 수 를 이벤트 타임 으로 빼 면 홀수 현재 시간 스탬프 에 이 무 작위 수 를 이벤트 타임 으로 추가 합 니 다.
    tlink.sink.table.name
    필수, 기본 값 출력
    출력 표 이름
    tlink.sink.table.fieldNames
    필수, 기본 값 없 음
    출력 필드
    tlink.sink.table.fieldTypes
    필수, 기본 값 없 음
    출력 필드 형식
    tlink.sink.table.type
    필수, 기본 값 없 음
    출력 표 의 형식, Append 또는 Retract 로 선택 할 수 있 습 니 다.
    tlink.streaming.sql.env.parallelism
    필수, 기본 값 1
    병행 도
    tlink.streaming.sql.env.timeCharacteristic
    필수, 기본 값 PROCESSING
    이벤트 나 PROCESSING 으로 선택 할 수 있 는 시간 체 제 를 설정 합 니 다.
    tlink.streaming.sql.env.planner
    필수, 기본 값 old
    planner 를 설정 합 니 다. old 또는 blink 로 선택 할 수 있 습 니 다.
    tlink.streaming.sql.statement
    필수, 기본 값 없 음
    실행 할 sql 구문

    좋은 웹페이지 즐겨찾기