Thứ Sáu, 18 tháng 8, 2023

Sự thật về Mã nhận dạng duy nhất phổ biến - UUID

Tôi đang chia sẻ một lý thuyết quan trọng cho tất cả các Kiến trúc sư và Nhà thiết kế Cơ sở dữ liệu.

Chúng tôi đang tuân theo một thực tiễn phổ biến để tạo một số tuần tự, duy nhất cho hệ thống cơ sở dữ liệu.

Phương pháp hay nhất là tạo một khóa số nguyên chính cho mọi bảng đại diện cho các bộ giá trị.
Nhưng bạn cũng nên biết về UUID.
Bạn có thể truy cập bài viết này về Sự thật về Khóa chính.

What is UUID and How it generates Unique Number?

UUID – Universally Unique Identifier has also stand as a unique string.

UUID là một số 128 bit và nó được sử dụng để xác định duy nhất các loại thực thể khác nhau.
Việc tính toán UUID nhanh chóng và dễ dàng để tạo một ID có thể được giả định một cách hợp lý là duy nhất trên toàn cầu.

UUID là duy nhất trên toàn cầu vì nó chứa sự kết hợp duy nhất của địa chỉ mạng, dấu thời gian của giao dịch và các chi tiết thành phần khác.
Địa chỉ mạng và dấu thời gian của giao dịch đủ để đảm bảo tính duy nhất.

Ví dụ, dạng chuẩn của UUID. Nó có tổng cộng 32 chữ số và đại diện cho 128 bit.

Tại sao chúng tôi yêu cầu UUID?

Khi chúng tôi làm việc trong hệ thống môi trường phân tán, chúng tôi cần UUID xác định dữ liệu tích hợp từ các hệ thống khác nhau.

Ví dụ,
Chúng tôi có hai hệ thống, Hệ thống A và Hệ thống B. Bây giờ tôi muốn nhập một số dữ liệu từ Hệ thống A sang Hệ thống B mà không thay đổi ID của hệ thống nguồn. Hệ thống B đã có một tập hợp các ID được lưu trữ có thể xung đột với ID Hệ thống A.

UUID giải quyết vấn đề trên.

Nếu hệ thống không trực tuyến, người dùng ngoại tuyến cũng có thể tạo một UUID ở phía máy khách cho một vài thao tác.

Một UUID luôn duy nhất cho tất cả các hệ thống nằm trong môi trường phân tán.

Ví dụ,
Hệ thống A chèn một bản ghi với ID 10 và đồng thời Hệ thống B cũng chèn một bản ghi với ID 10.
Bây giờ, đây là một vụ va chạm.
UUID giải quyết vấn đề này.

Nếu hệ thống được truy cập bởi nhiều luồng, mỗi luồng phải đợi ID mới.
UUID cũng giải quyết vấn đề này vì nó không phụ thuộc vào khóa đã tạo trước đó.

Chúng tôi có thể tạo ra hàng nghìn tỷ UUID trong một năm và nó có rất ít cơ hội trùng lặp.

Nếu chúng tôi tạo lại Cơ sở dữ liệu hoặc Bảng, thì ID tuần tự lại bắt đầu từ 1. Trong loại tình huống này, chúng ta có thể sử dụng UUID.

Các hạn chế khác:

Sự phân mảnh chỉ mục là một trong những nhược điểm lớn của việc sử dụng các khóa ngẫu nhiên UUID.

Chúng ta không nên sử dụng UUID làm khóa chính của bảng. Tuy nhiên, tôi khuyên bạn nên tạo một khóa chính tuần tự số nguyên và tạo một cột riêng cho UUID.

=============================
Website không bao giờ chứa bất kỳ quảng cáo nào, mọi đóng góp để duy trì phát triển cho website (donation) xin vui lòng gửi về STK 90.2142.8888 - Ngân hàng Vietcombank Thăng Long - TRAN VAN BINH
=============================
Nếu bạn muốn tiết kiệm 3-5 NĂM trên con đường trở thành DBA chuyên nghiệp thì hãy đăng ký ngay KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE, được Coaching trực tiếp từ tôi với toàn bộ kinh nghiệm, thủ tục, quy trình, bí kíp thực chiến mà bạn sẽ KHÔNG THỂ tìm kiếm trên Internet/Google giúp bạn dễ dàng quản trị mọi hệ thống Core tại Việt Nam và trên thế giới, đỗ OCP.
- CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
- Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
2 khóa học online qua video giúp bạn nhanh chóng có những kiến thức nền tảng về Linux, Oracle, học mọi nơi, chỉ cần có Internet/4G:
- Oracle cơ bản: https://bit.ly/admin1_1200
- Linux: https://bit.ly/linux_1200
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile/Zalo: 0902912888
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: https://www.youtube.com/@binhguru
👨 Tiktok: https://www.tiktok.com/@binhguru
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhguru
👨 Podcast: https://www.podbean.com/pu/pbblog-eskre-5f82d6
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
oracle tutorial, học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,sql tutorial, khóa học pl/sql tutorial, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail,oracle RAC, ASM, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, postgresql tutorial, mysql tutorial, mariadb tutorial, ms sql server tutorial, nosql, mongodb tutorial, oci, cloud, middleware tutorial, hoc solaris tutorial, hoc linux tutorial, hoc aix tutorial, unix tutorial, securecrt, xshell, mobaxterm, putty

ĐỌC NHIỀU

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