Bài viết này sẽ giới thiệu cách nạp dữ liệu từ MySQL vào trong Oracle Database.
Kịch bản thực hiện: dùng ODI để nạp dữ liệu từ 1 file XML vào 1 bảng trong Oracle Database.
1. Chuẩn bị:
- Đầu vào: bảng regions trong MySQL có cấu trúc và dữ liệu như sau:
- Đầu ra: dữ liệu trong bảng regions trong MySQL được nạp vào bảng REGIONS trong Oracle Database. Bảng REGIONS có cấu trúc như sau:
- Công cụ: ODI Studio
2. Các bước thực hiện:
2.1.1 Cấu hình Physical Architecture:
Bước 1: khai báo Physical Architecture cho file XML
- Tạo New Data Server
- Tạo New Data Server
2.1.2 Cấu hình Logical Architecture
Bước 1: khai báo Logical Architecture cho file XML
- Tạo New Logical Schema
2.1.3 Cấu hình Contexts
- Tạo New Context
2.2 Cấu hình DESIGNER
2.2.1 Cấu hình Models
Bước 1: cấu hình Model cho file XML
- Tạo New Model
Bước 2: cấu hình model cho Oracle Database
- Tạo New Model
2.2.1 Cấu hình Projects
Bước 1: tạo Project
- Tạo New Project
- Chọn Import Knowledge Modules...
- Chọn New Interface
(Hình 1)
Kịch bản thực hiện: dùng ODI để nạp dữ liệu từ 1 file XML vào 1 bảng trong Oracle Database.
1. Chuẩn bị:
- Đầu vào: bảng regions trong MySQL có cấu trúc và dữ liệu như sau:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | mysql> create table regions( -> region_id integer, -> region_name varchar(25)); Query OK, 0 rows affected (0.16 sec) mysql> insert into regions values(5,'South East Asia'); Query OK, 1 row affected (0.04 sec) mysql> insert into regions values(6,'North American'); Query OK, 1 row affected (0.03 sec) mysql> insert into regions values(11,'South Europe'); Query OK, 1 row affected (0.03 sec) mysql> commit; Query OK, 0 rows affected (0.00 sec) mysql> select * from regions; +-----------+-----------------+ | region_id | region_name | +-----------+-----------------+ | 5 | South East Asia | | 6 | North American | | 11 | South Europe | +-----------+-----------------+ 3 rows in set (0.00 sec) mysql> |
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); |
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 Architecture cho file XML
- Tạo New Data Server
(Hình 3)
- Thẻ Definition: khai báo Name, User và Password
(Hình 4)
- Thẻ JDBC: khai báo JDBC Driver và JDBC Url
(Hình 5)
- 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)
- Tab Definition: chọn giá trị cho Schema (Schema) và Schema (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
(Hình 10)
- Thẻ JDBC: khai báo JDBC Driver và JDBC Url
(Hình 11)
- 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: chọn Schema (Schema) và Schema (Work Schema)
(Hình 14)
2.1.2 Cấu hình Logical Architecture
Bước 1: khai báo Logical Architecture cho file XML
- 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 các 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 file XML
- Tạo New Model
(Hình 23)
- Thẻ Definition: khai báo Nam, Code, Technology, Logical Schema
(Hình 24)
- Thẻ Reverse Engineer: chọn Standard, Context rồi bấm chọn Reverse Engineer
(Hình 25)
- ODI sẽ đọc cấu trúc file XML và hiển thị như hình
(Hình 26)
- Kiểm tra dữ liệu trong bảng regions của MySQL
(Hình 27)
- Kết quả:
(Hình 28)
Bước 2: cấu hình model cho Oracle Database
- Tạo New Model
(Hình 29)
- Thẻ Definition: khai báo Name, Code, Technology và Logical Schema
(Hình 30)
- Thẻ Reverse Engineer: chọn Standard, Context
(Hình 31)
- Thẻ Selective Reverse-Engineering: chọn như hình
(Hình 32)
2.2.1 Cấu hình Projects
Bước 1: tạo Project
- Tạo New Project
(Hình 33)
- Thẻ Definition: khai báo Name
(Hình 34)
Bước 2: cấu hình Knowledge Modules- Chọn Import Knowledge Modules...
(Hình 35)
- Chọn các Modules như hình
(Hình 36)
Bước 3: cấu hình Interfaces- Chọn New Interface
(Hình 37)
- Thẻ Definition: khai báo Name
(Hình 38)
- Chọn thẻ Mapping
(Hình 39)
- Kéo thả Source Model vào vùng Source; Target Model vào vùng Target. Chọn No (Automatic Mapping)
(Hình 40)
- Kéo từng trường bên Source để map tương ứng với từng trường bên Target
(Hình 41)
- Chọn thẻ Flow để kiểm tra
(Hình 42)
- Chọn Execute để thực hiện việc import dữ liệu từ bảng regions trong MySQL vào bảng REGIONS trong Oracle Database
(Hình 43)
- Chọn OK
(Hình 44)
- Query bảng REGIONS để kiểm tra kết quả (2 dòng có region_id là 5 và 6 của bảng regions trong MySQL được thêm vào bảng REGIONS trong Oracle, dòng có region_id là 11 không được thêm vào do trùng khóa chính)
(Hình 45)
** Chúng ta có thể kiểm tra các bước ODI đã thực hiện như hình sau:
(Hình 46)