All about Oracle Technologies

Friday 30 October 2015

Oracle Data Integrator 11g - Nạp dữ liệu từ Flat File vào Oracle Database

Bài viết này sẽ giới thiệu cách nạp dữ liệu từ Flat File (Delimited Text File) vào trong Oracle Database.

(Hình 1)
Kịch bản thực hiện: dùng ODI để nạp dữ liệu từ 1 file text vào 1 bảng trong Oracle Database.

1. Chẩn bị:
- Đầu vào: file Regions.txt có nội dung như sau
region_id|region_name
1|Europe
2|Americas
3|Asia
4|Middle East and Africa
- Đầu ra: dữ liệu trong file Regions.txt được nạp vào bảng REGIONS trong Oracle Database. Bảng REGIONS có cấu trúc như sau:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
CREATE TABLE regions
(
    region_id     NUMBER,
    region_name   VARCHAR2 (25 BYTE)
);

ALTER TABLE regions
ADD CONSTRAINT reg_id_pk PRIMARY KEY (region_id);

ALTER TABLE regions
ADD CONSTRAINT region_id_nn CHECK ("REGION_ID" IS NOT NULL);
- Công cụ: ODI Studio

2. Các bước thực hiện
(Hình 2)
2.1 Cấu hình TOPOLOGY
2.1.1 Cấu hình Physical Architecture
Bước 1: khai báo Physical Arichitecture cho Flat File
- Tạo New Data Server
(Hình 3) 

- Thẻ Definition: khai báo Name
(Hình 4) 
- Thẻ JDBC: khai báo JDBC Driver và JDBC Url
(Hình 5) 
- Sau khi khai báo xong bấm Test Connection để kiểm tra kết nối.
(Hình 6)
- Tạo New Physical Schema
(Hình 7) 
- Thẻ Definition: khai báo Directory (Schema) và Directory (Work Schema)
(Hình 8)

Bước 2: khai báo Physical Architecture cho Oracle Database
- Tạo New Data Server
(Hình 9) 
- Thẻ Definition: khai báo Name; User và Password kết nối đến Oracle Database
(Hình 10)  
- Thẻ JDBC: khai báo JDBC Driver và JDBC Url
(Hình 11)  
- Sau khi khai báo xong bấm Test Connection để kiểm tra kết nối.
(Hình 12)
- Tạo New Physical Schema
(Hình 13) 
- Thẻ Definition: khai báo Directory (Schema) và Directory (Work Schema)
(Hình 14)

2.1.2 Cấu hình Logical Architecture
Bước 1: khai báo Logical Architecture cho Flat File
- Tạo New Logical Schema
(Hình 15) 
- Thẻ Definition: khai báo Name
(Hình 16)

Bước 2:  khai báo Logical Architecture cho Oracle Database
* Lưu ý: ở bước này nếu như tùy chọn Oracle không hiển thị thì ta bỏ chọn Hide Unused Technologies như hình để hiện thị mục này.
(Hình 17)
- Tạo New Logical Schema
 (Hình 18)
- Thẻ Definition: khai báo Name
(Hình 19)

2.1.3 Cấu hình Contexts
- Tạo New Context
(Hình 20) 
- Thẻ Definition: khai báo Name
(Hình 21)  
- Thẻ Schemas: chọn Physical Schemas tương ứng với Logical Schemas như hình
(Hình 22) 

2.2 Cấu hình DESIGNER
2.2.1 Cấu hình Models
Bước 1: Cấu hình Model cho Flat File
- Tạo New Model
(Hình 23) 
- Thẻ Definition: khai báo Name, Code, Technology, Logical Schema
(Hình 24)
- Tạo New Datastore
(Hình 25) 
- Thẻ Definition: khai báo Name và chọn file text
(Hình 26) 
- Thẻ Files: khai báo File Format, Heading (Number of Lines), Record Separator, Field Separator
(Hình 27) 
- Chọn Reverse Engineer
(Hình 28) 
- Kết quả: ODI phân tích cấu trúc text file
(Hình 29)

Bước 2: Cấu hình Model cho Database
- Tạo New Model
(Hình 30)
- Thẻ Definition: khai báo Name, Code, Technology, Logical Schema
(Hình 31) 
- Thẻ Reverse Engineer: chọn Standard và Context
(Hình 32) 
- Thẻ Selective Reverse-Engineering: chọn như hình. ODI sẽ hiển thị tất cả các bảng trong DB. Ở bước này chúng ta chỉ quan tâm đến bảng REGIONS nên chỉ chọn bảng này.
(Hình 33)

2.2.1 Cấu hình Projects
Bước 1: Tạo Project
- Tạo Project: chọn New Project
(Hình 34) 
- Thẻ Definition: khai báo Name
(Hình 35)

Bước 2: cấu hình Knowledge Modules
- Chọn Import Knowledge Modules ...
(Hình 36) 
- Chọn 2 Knowledge Module có tên IKM Oracle Incremental Update (MERGE) và LKM File to Oracle (EXTERNAL TABLE)
(Hình 37)

Bước 3: Cấu hình Interfaces
- Chọn New Interface
(Hình 38) 
- Thẻ Definition: khai báo Name
(Hình 39) 
- Chọn thẻ Mapping
(Hình 40) 
- Kéo thả Source Model vào vùng Source; Target Model vào vùng Target. Chọn No (Automatic Mapping)
(Hình 41) 
- Kéo từng trường bên Source để map tương ứng với từng trường bên Target
(Hình 42) 
- Chọn thẻ Flow
(Hình 43) 
- Chọn vùng Target, thay đổi tham số FLOW_CONTROL thành false
(Hình 44) 
- Chọn Execute để thực thi việc import dữ liệu từ file text vào bảng REGIONS trong Oracle Database
(Hình 45) 
- Chọn OK
 (Hình 46)
- Query bảng REGIONS để kiểm tra kết quả
(Hình 47)

** Chúng ta có thể kiểm tra các bước ODI đã thực hiện như hình sau:
(Hình 48)

Tuesday 27 October 2015

Hướng dẫn cách tạo Master Repository và Work Repository trong Oracle Data Integrator 11g

Bài viết này sẽ hướng dẫn cách tạo Master Repository và Work Repository trong Oracle Data Integrator 11g.

1. Các yêu cầu cần phải có trước khi cài đặt
- Đã cài đặt Oracle Database 12c
- Đã cài đặt 1 PDB tên là pdbfmw
- PDB tên pdbfmw phải được mở (nếu chưa mở có thể chạy câu lệnh alter pluggable database pdbfmw open write)
- Đã cài đặt Oracle Fusion Middleware (xem bài Hướng dẫn cài đặt Fusion Middleware)

2. Các bước cài đặt:
2.1 Tạo user:
(Hình 1)
Ở bước này chúng ta sẽ tạo 2 user:
  • odi_master: lưu các thông tin của Master Repository
  • odi_work: lưu các thông tin của Work Repository
Sau khi tạo xong, chúng ta thử kiểm tra thông tin có trong 2 user này.
 (Hình 2)
(Hình 3)
Cả 2 user này không có bất cứ bảng nào có tiền tố là SNP.

2.2 Tạo Master Repository
- Bước 1: chọn New
(Hình 4)

- Bước 2: chọn ODI, sau đó chọn Master Repository Creation Wizard
(Hình 5)

- Bước 3: nhập các thông số:
  • Technology: loại Database lưu thông tin Master Repository
  • JDBC Driver: driver kết nối Database
  • JDBC Url: Url kết nối với Database. Ở bước này chúng ta lưu ý trước SID có thể là dấu "/" hoặc dấu ":" tùy thuộc vào phiên bản của Oracle Database
  • User: tài khoản master đã tạo ở bước 2.1
  • Password: mật khẩu tài khoản master
  • DBA User: tài khoản system
  • DBA Password: mật khẩu tài khoản system
(Hình 6)
Chọn Test Connection để kiểm tra các thông số kết nối
(Hình 7) 

- Bước 4: nhập mật khẩu cho tài khoản SUPERVISOR (xem bài Hướng dẫn cài đặt Fusion Middleware)
(Hình 8) 

- Bước 5: chọn Internal Password Storage
(Hình 9) 

- Bước 6: hoàn tất việc cài đặt Master Repository
(Hình 10)

- Bước 7 (tùy chọn): kiểm tra. Chúng ta thấy rằng các bước ở trên đã tạo ra các bảng bắt đầu bằng tiền tố SNP để lưu trữ thông tin cho Master Repository
(Hình 11)
2.3 Tạo Work Repository
- Bước 1: từ màn hình chính chọn Connect To Repository
 (Hình 12)

- Bước 2: bấm vào dấu cộng để thêm Repository
 (Hình 13)

- Bước 3: nhập các thông tin
  • Login Name: tên đăng nhập
  • User: tài khoản supervisor 
  • Password: mật khẩu tài khoản supervisor
  • User: tài khoản master 
  • Password: mật khẩu tài khoản master
  • Driver List: chọn driver Database để kết nối
  • Driver Name: chọn tên driver
  • Url: Url kết nối
  • Chọn Master Repository Only
 (Hình 14)
- Chọn Test để kiểm tra các thông tin kết nối
 (Hình 15)

- Bước 4: nhập Password để đăng nhập vào Master Repository
(Hình 16)

- Bước 5: tại thẻ Topology, chọn Repositories, chọn Work Repositories
 (Hình 17)

- Bước 6: chuột phải lên Work Repositories, chọn New Work Repository
 (Hình 18)

- Bước 7: nhập các thông tin
  • User: tài khoản để kết nối với Work Repository
  • Password: mật khẩu kết nối
 (Hình 19)
Chọn Test Connection để kiểm tra thông tin kết nối
 (Hình 20)
- Bước 8: tạo Work Repository
(Hình 21)
Xác nhận việc tạo Work Repository
(Hình 22)

- Bước 9: đặt tên cho Work Repository
 (Hình 23)
Sau khi tạo thành công ta sẽ thấy có tên Work Repository mới xuất hiện ở mục Work Repositories
 (Hình 24)

- Bước 10: thoát khỏi Master Repository
 (Hình 25)

- Bước 11:  đăng nhập vào Work Repository mới tạo. Chọn Connect to Repository, chọn
  • Login Name: chọn tên Work Repository
  • User: tài khoản supervisor
  • Password: mật khẩu supervisor
(Hình 26) 

Bước 12 (tùy chọn):  kiểm tra. Chúng ta thấy rằng các bước ở trên đã tạo ra các bảng bắt đầu bằng tiền tố SNP để lưu trữ thông tin cho Work Repository.
(Hình 27)