Talend 입문(3)~ 데이터베이스 입출력~
12469 단어 Talend
전체 목적
Talend는 ETL 작업 개발에 필요한 기술을 배우기 위해 초간단한 샘플 작업을 제작한다.
대상
ETL/EAI 기술자
컨디션
사용 환경
릴리즈
OS
Windows10
Talend
7.1.1
PostgreSQL
9.6
견본 일람표
다음 순서대로 공부하다
#
컨텐트
1
처음의 Talend
2
파일 입출력
3
데이터베이스 I/O(이번)
4
tMap
5
이퀄라이저
6
메타데이터
7
Context 변수
8
Global Map
9
tHashInput/tHashOutput
10
오류 처리
11
Logging
12
하위 작업(작업 중첩)
13-1
프로필 원본 불러오기
13-2
구성 파일 읽기 사본
14
tJava
샘플 코드(Talend 프로젝트 데이터)
이번 목적
데이터베이스 입력과 출력을 이해하다.
샘플 프로그램 개요
특정 테이블을 다른 테이블로 로드하는 프로그램을 만들어 봅니다.
DB 읽기
먼저 DB의 데이터를 입력 소스로 읽으십시오.
이번에는 로컬 환경의postgresql를 읽어야 합니다.다음 DB를 사용할 수 있는 상태로 시작합니다.
이름:
시험을 준비하다
DB 이름
qiitadb
사전 준비
주인
koda
사전 준비
테이블 이름
testuser
다음 쿼리 준비 중
e.g.cygwin의 psql
$ psql -l -U koda -h localhost
ユーザ koda のパスワード:
データベース一覧
名前 | 所有者 | エンコーディング | 照合順序 | Ctype(変換演算子) | アクセス権限
-----------+----------+------------------+--------------------+--------------------+-----------------------
postgres | postgres | UTF8 | Japanese_Japan.932 | Japanese_Japan.932 |
qiitadb | koda | UTF8 | Japanese_Japan.932 | Japanese_Japan.932 |
template0 | postgres | UTF8 | Japanese_Japan.932 | Japanese_Japan.932 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | Japanese_Japan.932 | Japanese_Japan.932 | =c/postgres +
| | | | | postgres=CTc/postgres
(4 行)
입력 소스 생성
테스트 사용자라는 표와 데이터를 준비합니다.
testdata.sql
create table testuser (
id integer primary key,
name varchar(32) not null,
gender varchar(32) not null
);
insert into testuser values (1,'kouda','男');
insert into testuser values (2,'mori','男');
insert into testuser values (3,'kubo','男');
insert into testuser values (4,'shimizu','男');
insert into testuser values (5,'aya','女');
testdata.sql로 표를 준비하는 상태qiitadb=# \d
リレーション一覧
スキーマ | 名前 | 型 | 所有者
----------+----------+----------+--------
public | testuser | テーブル | koda
(1 行)
qiitadb=# \d testuser
テーブル "public.testuser"
列 | 型 | 照合順序 | Null 値を許容 | デフォルト
--------+-----------------------+----------+---------------+------------
id | integer | | not null |
name | character varying(32) | | not null |
gender | character varying(32) | | not null |
インデックス:
"testuser_pkey" PRIMARY KEY, btree (id)
qiitadb=# select * from testuser ;
id | name | gender
----+---------+--------
1 | kouda | 男
2 | mori | 男
3 | kubo | 男
4 | shimizu | 男
5 | aya | 女
(5 行)
테이블 데이터 읽기
그럼 샘플 작업이나 해.
창고에서 [작업]을 마우스 오른쪽 버튼으로 클릭하고 [작업 만들기]를 선택합니다.
[이름]에 "dbio"를 입력하고 [Finish] 버튼을 클릭합니다.
[tPostgresqlInput] 구성 요소를 사용하여postgre의 표 데이터를 읽습니다.
[tPostgresqlInput]를 설정하고 데이터 읽기에 사용할 [tLogRow]를 확인합니다.
※ 디자인 작업공간에서는 데이터베이스가 PostgreSQL을 선택한 [tDBInput]로 표시됩니다.
[tDBInput]의 [기본 설정]에 있는 연결 정보를 다음과 같이 설정합니다.
프로젝트 이름
컨텐트 설정
호스트
localhost
포트
5432
데이터베이스
qiitadb
패턴
public
사용자 이름
koda
비밀 번호
환경별 설정
다음은 패턴을 정의합니다.
모드 편집 버튼을 클릭하여 열 이름과 유형을 다음과 같이 설정합니다.
열수
열수
타입
첫줄
id
int
제2행
name
String
제3행
gender
String
마지막으로 실제 데이터를 얻는 데 사용할 조회를 설정합니다.
질의 오른쪽에 있는 버튼을 클릭합니다.
연결 설정과 SQL 설정이 정확하면 결과를 얻을 수 있음을 확인할 수 있습니다.
① SQL 작성
컨텐트 설정
select id, name, gender from testuser
② 실행 아이콘을 클릭합니다.
③ 결과를 확인할 수 있다.
촛불로 [tDBInput]과 [tLog Row]를 연결합니다.
[tLog Row]의 [기본 설정] 중의 [모드]도 책상 위에 올려주세요.
이렇게 설정하면 완성됩니다. 제가 한번 실행해 보겠습니다.
테스트 사용자 테이블이 설정에 따라 읽히는지 확인할 수 있습니다.
데이터베이스 출력 설정
다음에 실제 데이터베이스의 표에 데이터를 출력해 봅시다.
[tPostgresql Output]라는 DB 출력용 구성 요소를 구성합니다.
※ 디자인 작업공간에서는 데이터베이스가 PostgreSQL을 선택한 [tDBOutput]로 표시됩니다.
[tLog Row]와 [tDBOutpu]를 촛불로 연결합니다.
[tDBOutput]의 [기본 설정]에 있는 연결 정보는 다음과 같습니다.
※ tDBConnection 또는 메타데이터를 사용하면 설정을 사용할 수 있습니다.이 방면에 대한 해설은 또 다른 것이 있습니다^^
프로젝트 이름
컨텐트 설정
호스트
localhost
포트
5432
데이터베이스
qiitadb
패턴
public
사용자 이름
koda
비밀 번호
환경별 설정
테이블
out1
테이블 작업
양식이 없는 경우 양식 만들기
다음은 패턴을 정의합니다.
[열 동기화] 버튼을 클릭하여 촛불을 통해 흐르는 열을 자동으로 설정합니다.
모드 편집 버튼을 클릭하여 열 이름과 유형이 자동으로 설정되어 있는지 확인합니다.
열수
열수
타입
첫줄
id
int
제2행
name
String
제3행
gender
String
이렇게 준비하면 완성된다.실행해 보세요.
out1이라는 표를 만들어서 데이터를 등록했는지 확인할 수 있습니다.
qiitadb=# \d
リレーション一覧
スキーマ | 名前 | 型 | 所有者
----------+----------+----------+--------
public | out1 | テーブル | koda
public | testuser | テーブル | koda
(2 行)
qiitadb=# \d out1
テーブル "public.out1"
列 | 型 | 照合順序 | Null 値を許容 | デフォルト
--------+-------------------+----------+---------------+------------
id | integer | | |
name | character varying | | |
gender | character varying | | |
qiitadb=# select * from out1;
id | name | gender
----+---------+--------
1 | kouda | 男
2 | mori | 男
3 | kubo | 男
4 | shimizu | 男
5 | aya | 女
(5 行)
총결산
이번에 데이터베이스 입력과 출력을 확인했다.
SQL도 샘플로 할 수 있는 등급표 복제이지만 읽기와 시작은 구성 요소의 설정만 있으면 된다는 것을 확인했다고 생각합니다.
새로 사용한 구성 요소와 용도를 미리 복습하다.
다음
다음에는 강력한 ETL 처리를 실현하는 주요 구성 요소라고 할 수 있는 tmap이 드디어 진행될 것이다.
Reference
이 문제에 관하여(Talend 입문(3)~ 데이터베이스 입출력~), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/airkoda/items/bc807c920c3adebad837텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)