Tlink 소개
로 컬 에서 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 버 전 은 다음 과 같은 기능 을 지원 합 니 다.
매개 변수 설명
매개 변수
기본 값
속뜻
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 구문
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.