Thứ Năm, 9 tháng 1, 2020

Khuyến cáo tối ưu hóa cấu trúc Oracle Database

1.     Cấu trúc bảng:
Khi tạo bảng mới cần áp dụng các phương án như sau:
·         Với bảng có dữ liệu lớn (2G trở lên) phải đánh partition.
- Với dữ liệu lịch sử thì đánh theo By Range.
- Với dữ liệu xác định trước được giá trị thì đánh theo By list.
- Với dữ liệu không có quy luật thì đánh theo By Hash.
·         Với các bảng có đánh partition thì index phải đánh theo Local.
·         Hạn chế sử dụng trigger trên bảng.
·         Đánh giá trong câu lệnh select có trường nào xác định được đối tượng tìm kiếm chính xác nhất và có độ dài trường ngắn nhất (ưu tiên trường number) thì đánh index theo trường đó.
·         Hạn chế dùng foreign key.
·         Với các bảng có tần suất update hoặc insert lớn nên dùng primary key.
2.     Câu lệnh tác động:
Khi viết câu lệnh tác động vào bảng cần làm theo hướng dẫn sau:
·         Tất cả các câu lệnh đều phải có index, không câu lệnh nào được quét full bảng.
·         Nếu bảng có partition thì trong câu lệnh phải có thêm trường partition (ngoại trừ một số trường hợp đặc biệt).
·         Khi join hai bảng với nhau thì bảng có dữ liệu lớn hơn phải có index.
·         Trong câu lệnh không dùng điều kiện is null, cần chuyển sang phương án dùng các toán tử : >, <, =.
·         Hạn chế sử dụng câu lệnh delete, cần chuyển sang câu lệnh truncate.
·         Hạn chế sử dụng câu lệnh update, cần chuyển sang câu lệnh insert và select.
·         Với các bảng tmp có dữ liệu trong quá trình chạy và xóa dữ liệu sau khi chạy (không cần backup dữ liệu), cần chuyển bảng sang nologging và câu lệnh insert cần có thêm append.
3.     Câu lệnh tạo view:
Các lưu ý khi tạo view:
·         Trong view không nên thêm trường mới vì khi câu lệnh select vào view có thể sẽ bị quét full bảng.
·         Hạn chế sử dụng view lồng nhau.
4.     Tạo tablespace:
Với mỗi DB thường, tạo các loại tablespace như sau:
·         Loại tablespace cố định: để lưu default các user ứng dụng, các bảng không có partition, ví dụ: DATA.
·         Loại tablespace không cố định: lưu các bảng có partition, ví dụ DATAYYYYMM.
·         Loại tablespace cho người dùng: lưu các bảng của người dùng CSDL trực tiếp tạo ra, ví dụ: NGHIEPVU.
·         Loại tablespace tmp: lưu các bảng tmp, các bảng không cần backup, ví dụ: TMP.

=====================================================================
* Dữ liệu trong thời đại 4.0 là "TRÁI TIM" của doanh nghiệp. Quản trị cơ sở dữ liệu (Database Administration - DBA) là ngành có lương cao nhất trong ngành IT và đầy tiềm năng trong thời đại 4.0. Oracle là cơ sở dữ liệu hàng đầu trên thế giới và được rất nhiều doanh nghiệp lớn trên thế giới và Việt Nam sử dụng.

* Bạn có mong muốn từng bước trở thành chuyên gia DBA không? Nếu câu trả lời là CÓ thì hãy nhanh chóng đăng ký sở hữu trọn đời khóa học online "Quản trị cơ sở dữ liệu cơ bản" của tôi tại Unica (bạn có thể xem trên điện thoại, máy tính bảng, PC vào bất kỳ lúc nào chỉ cần có mạng Internet). Hiện tại tôi đang khuyến mại cho 100 bạn đăng ký đầu tiên giảm giá từ 2400K còn 799K, CAM KẾT HOÀN TIỀN 100% nếu học xong không có kết quả:

* Môn 1: Quản trị Oracle 12 cơ bản, giảm giá 70% HÔM NAY cho 100 bạn đầu tiên từ 2tr4 còn 799K theo link:  https://bit.ly/3d2ofqZ (khoá này học ở Oracle hãng là 1.500$), chuyển khoản còn 699K

* Môn 2: Quản trị Linux trong 21h, cũng giảm giá 70% HÔM NAY  cho 100 bạn đầu tiên từ 2tr4 còn 799K theo link: https://bit.ly/3e7gwJw, chuyển khoản còn 699K

* Combo1: Cho 2 khóa  hc (Quản trị Oracle 12 cơ bản + Quản trị Linux trong 21h)  giá 1.200K chuyển khoản

--> Thông tin TÀI KHOẢN:

- Trần Văn Bình, STK 1920767736012, Ngân hàng Techcombank, chi nhánh Thăng Long

- Nội dung: Tên + (Môn 1 hoặc Môn 2 hoặc Combo) + Số tiền, sau đó chụp màn hình chuyển khoản gửi về email tranbinh48ca@gmail.com (ví dụ nội dung: TranVanBinh Combo1 1200K, TranVanBinh Mon1 799K, TranVanBinh Mon2 799K, 

=====================================================================

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master