[알리 윤] 실시간 데이터웨어 하우스 Hologres Demo01 실시간 계산 및 Hologres에 실시간 데이터 쓰기

콘텐츠의 일부는 알리의 공식 웹 사이트에서 배경 및 개요로 직접 추출되었습니다.

배경

실시간 데이터 비즈니스 시나리오에서 가장 일반적인 링크는 실시간 계산을 통해 실시간으로 수집 된 데이터를 처음에 정리하고, 실시간으로 데이터베이스에 데이터를 작성한 다음 BI 도구와 연결하여 시각적 분석을 실현하는 것입니다. 데이터의. 데이터 처리 흐름은 아래 그림과 같습니다.

전체 비즈니스 링크에서 데이터베이스는 고성능 컴퓨팅 서비스를 제공하고 대량의 데이터를 저장하며 동시에 여러 BI 분석 도구를 연결하는 데 필요합니다. 단일 데이터베이스로 위의 모든 기능을 수행하기는 어렵고 다른 데이터베이스의 관련 기능을 사용하여 비즈니스 프로세스를 완료해야합니다.
데이터를 가져오고 내보낼 때 중복 스토리지가 생성되고 스토리지 리소스가 낭비됩니다. 동시에 여러 시스템을 유지 관리해야하므로 개발, 운영 및 유지 관리에 어느 정도의 어려움이 추가됩니다.
개요
실시간 시나리오에서 비즈니스 문제를 해결하기 위해 Hologres는 실시간 데이터 API 인터페이스를 제공합니다. 비즈니스 데이터 및 로그 데이터는 실시간 데이터 API 인터페이스를 직접 호출하고 실시간으로 데이터를 작성할 수 있으며 Hologres는 고성능 컴퓨팅 서비스와 대용량 데이터 저장 서비스를 제공합니다. 데이터 처리 흐름은 아래 그림과 같습니다.

전체 비즈니스 링크에서 데이터를 가져오고 내보낼 필요가 없으며 작성된 데이터는 중복 스토리지없이 Hologres에 균일하게 저장되어 컴퓨팅 및 스토리지 리소스를 절약합니다. 시스템 세트는 여러 요구 사항을 충족하여 개발 및 운영 및 유지 관리 비용을 절약 할 수 있습니다.
Blink는 실시간으로 데이터를 씁니다.

请确保开通的实时计算与Hologres地域一致,以免连接失败。(不是跨Region的服务)
Blink 3.6之前的版本未内置Hologres Connector(注意版本),实时写入数据至Hologres需要引用JAR文件,您可以提交工单或通过Hologres交流群(钉钉群号:32314975)获取。
当Hologres中接收数据的表已设置主键,默认按照主键更新实时写入的数据。(按照PK的update time写入)
如果使用批处理方式导入数据,则需要设置BatchSize并使用HoloHub的Endpoint。

blink-3.4.4 (기본) 버전 사용 ~

단계

이 사례는 실시간 계산에서 난수를 무작위로 생성하고 대화 형 분석에서 실시간으로 데이터를 쿼리하는 방법을 보여줍니다. (이 데모의 모든 내용은 문서를 참조 할 수 있습니다. 실시간 데이터 쓰기 쿼리)
사용 플랫폼 : 실시간 컴퓨팅 플랫폼, HoloStudio
참고 :이 사례는 작업 단계, 데이터의 데모에 중점을 둡니다. 무작위로 생성 된 데이터, 실제 사업은 실제 장면 데이터에 따라 처리하십시오)

1. 대화 형 분석 및 테이블 구축

HoloStudio에 로그인하여 데이터 수신을위한 내부 테이블을 생성합니다. 테이블 생성 명령문의 예는 다음과 같습니다.

create table test(a int, b text, c text, d float8, e int8);

2. 실시간 연산 준비가 된 실시간 계산

실시간 컴퓨팅 플랫폼에 로그인하고 새로운 직업 개발을 만들고 직업을 채우십시오. 주요 작업은 실시간 계산과 대화 형 분석 간의 연결을 설정하고 데이터를 가져 오는 것입니다. 샘플 SQL은 다음과 같습니다.
// 데이터를 무작위로 생성하도록 메시지 대기열을 시뮬레이션합니다.

create table randomSource (a int, b VARCHAR , c VARCHAR , d DOUBLE, e BIGINT) with (type = 'random');

// 실시간 계산 및 대화 형 분석을위한 연결 테이블 정보를 설정합니다. 다음 연결 문자열 정보가 필요합니다.

create table blink_test_demo (
a INT ,
b VARCHAR ,
c VARCHAR ,
d DOUBLE,
e BIGINT,
PRIMARY KEY (a)
) with (
type = 'custom',
tableFactoryClass = 'com.alibaba.blink.connectors.hologres.HologresTableFactory',
`endpoint` = '交互式分析实例VPC网络地址:交互式分析实例VPC网络端口',
`userName` = '当前账号的Access ID',
`password` = '当前账号的Access Key',
`dbName` = '要连接的交互式分析数据库名',
`tableName` = '交互式分析中用于接收数据的表'
);

// 연결 테이블로 데이터 가져 오기

insert
into blink_test_demo
select
a,b,c,d,e
from
randomSource;


문법 검사 중에 오류가 발생합니다. 이는 hologres 연결 jar 패키지에 대한 참조가 부족하기 때문이며 jar 패키지 (blink-connector-hologres-07-demo.jar)를 아래에서 가져옵니다.


할당을 완료 한 후 실시간 계산의 왼쪽 메뉴 모음에서 리소스 참조를 선택하고 리소스 패키지 (리소스 패키지 : http://docs-aliyun.cn-hangzhou.oss.aliyun-inc.com/assets/)를 참조하십시오. attach / 170591 /cn_en/1591698479126/blink-connector-hologres-07-demo%281%29.jar?spm=a2c4g.11186623.2.23.ff644333ZjOaJX&file=blink-connector-hologres-07-demo%281%29.jar)

그런 다음 다른 구문 검사를 저장하고 수행합니다.


다음 단계는 온라인으로 실시간 작업을 시작하는 것입니다. 온라인으로 전환 :

작업 시작 : 실행할 작업을 프로덕션 환경에 제출합니다. 작업을 수동으로 시작하려면 왼쪽 상단 모서리에있는 O & M을 클릭하십시오. (작업이 시작되고 정보가 출력되는 데 1 ~ 2 분 정도 소요됩니다. 잠시 기다려주세요.)

실시간으로 데이터를 읽는 대화 형 분석

실시간 계산에 출력 데이터가 있으면 HoloStudio로 이동하여 실시간 데이터 쿼리를 수행
할 수 있으며 TPS가 2 Blocks / s임을 알 수 있으며 bathSize를 조정할 수도 있습니다.

두 가지 SQL 테스트를 무작위로 실행합니다.

SELECT * FROM test;

SELECT COUNT (*) FROM test;

끝난!

추천

출처blog.csdn.net/u010478127/article/details/108971090