Graph database là gì

1 month ago Prosus đồng ý mua Stack Overflow với giá 1,8 tỷ đô la 2 months ago 30 năm ra đời Linux: phỏng vấn Linus Torvalds về Mã nguồn mở và hơn thế nữa – Phần 2 2 months ago 30 năm ra đời Linux: phỏng vấn Linus Torvalds về Linux và Git – Phần 1 2 months ago Giải ngoại hạng Anh chọn cơ sở hạ tầng đám mây Oracle cho phân tích bóng đá 3 months ago Microsoft mua công ty công nghệ giọng nói AI Nuance với giá 19,7 tỷ đô la
*
Ảnh: aws.amazon.com

Tại sao lại cần cơ sở dữ liệu đồ thị?

Chúng ta đang sống trong một thế giới kết nối! Không có phần thông tin riêng biệt, mà là các miền phong phú, được kết nối xung quanh chúng ta. Chỉ một cơ sở dữ liệu bao gồm các mối quan hệ nguyên bản mới có thể lưu trữ, xử lý và truy vấn các kết nối một cách hiệu quả. Trong khi các cơ sở dữ liệu khác tính toán các mối quan hệ tại thời điểm truy vấn thông qua các hoạt động JOIN tốn kém, thì cơ sở dữ liệu đồ thị lưu trữ các kết nối cùng với dữ liệu trong mô hình.

Truy cập các nút và mối quan hệ trong cơ sở dữ liệu đồ thị gốc là một hoạt động hiệu quả, thời gian liên tục và cho phép bạn nhanh chóng duyệt qua hàng triệu kết nối mỗi giây trên mỗi lõi.

Không phụ thuộc vào tổng kích thước của tập dữ liệu của bạn, cơ sở dữ liệu biểu đồ vượt trội trong việc quản lý dữ liệu được kết nối cao và các truy vấn phức tạp. Chỉ với một mẫu và một tập hợp các điểm bắt đầu, cơ sở dữ liệu biểu đồ khám phá dữ liệu lân cận xung quanh các điểm xuất phát ban đầu đó – thu thập và tổng hợp thông tin từ hàng triệu nút và mối quan hệ – và để lại bất kỳ dữ liệu nào bên ngoài chu vi tìm kiếm không bị ảnh hưởng.

Bạn đang xem: Graph database là gì

Graph database hoạt động thế nào?

Cơ sở dữ liệu đồ thị thường đơn giản về cách chúng được cấu trúc. Chúng chủ yếu bao gồm hai thành phần:

Nút (node): Đây là phần dữ liệu thực tế của chính nó. Đó có thể là số người xem video trên youtube, số người đã đọc tweet hoặc thậm chí có thể là thông tin cơ bản như tên, địa chỉ của mọi người, v.v. Cạnh (Edge): Điều này giải thích mối quan hệ thực tế giữa hai nút. Điều thú vị là các cạnh cũng có thể có các phần thông tin riêng của chúng, chẳng hạn như bản chất của mối quan hệ giữa hai nút. Tương tự, các cạnh cũng có thể có các hướng mô tả luồng dữ liệu đã nói.

Xem thêm: Giải Đáp: Tại Sao Đăng Video Lên Zalo Không Được, Hướng Dẫn Cách Tải Ảnh, Đăng Video Lên Zalo

*
Ảnh: kdnuggets.com

Hãy xem một ví dụ cụ thể hơn, như bạn có thể thấy trong hình trên, cơ sở dữ liệu biểu đồ không chỉ có thể mô tả mối quan hệ phức tạp giữa một nhóm người mà còn cả sở thích, sở thích, tình bạn và doanh nghiệp của họ. Tất nhiên, bầu trời (và phần cứng) là giới hạn ở đây, và bạn có thể gặp khá nhiều phức tạp khi xây dựng cơ sở dữ liệu đồ thị.

Một số trường hợp sử dụng Graph database

Phát hiện gian lận

Cơ sở dữ liệu đồ thị có khả năng ngăn chặn gian lận tinh vi. Với graph database, bạn có thể sử dụng các mối quan hệ để xử lý các giao dịch tài chính và mua hàng trong thời gian gần thực (near-real time). Với các truy vấn đồ thị nhanh, bạn có thể thấy rằng, chẳng hạn như một người mua tiềm năng đang sử dụng cùng một địa chỉ email và thẻ tín dụng như trong một trường hợp gian lận đã biết. Cơ sở dữ liệu đồ thị cũng có thể giúp bạn dễ dàng phát hiện các mẫu quan hệ chẳng hạn như nhiều người được liên kết với một địa chỉ email cá nhân hoặc nhiều người chia sẻ cùng một địa chỉ IP nhưng cư trú ở các địa chỉ thực khác nhau.

Công cụ gợi ý (Recommendation engines)

Cơ sở dữ liệu đồ thị là một lựa chọn tốt cho các ứng dụng gợi ý. Với graph database, bạn có thể lưu trữ trong biểu đồ mối quan hệ giữa các danh mục thông tin như sở thích của khách hàng, bạn bè và lịch sử mua hàng. Bạn có thể sử dụng cơ sở dữ liệu đồ thị có tính khả dụng cao để đưa ra các đề xuất sản phẩm cho người dùng dựa trên sản phẩm nào được mua bởi những người khác theo cùng môn thể thao và có lịch sử mua hàng tương tự. Hoặc, bạn có thể xác định những người có bạn chung nhưng chưa biết nhau, sau đó đưa ra đề xuất kết bạn.

Một số Graph database tiêu biểu

Mặc dù cơ sở dữ liệu đồ thị không quá phổ biến như một số cơ sở dữ liệu NoSQL khác, nhưng có một số cơ sở dữ liệu đã trở thành tiêu chuẩn khá tốt khi nói về graph database:

Nguồn tham khảo:

https://aws.amazon.com/nosql/graph/https://neo4j.com/developer/graph-database/https://www.kdnuggets.com/2021/02/understanding-nosql-database-types-graph.html