Các khái niệm cơ bản

Nếu bạn mới sử dụng Freebase, phần này bao gồm các thuật ngữ cơ bản và khái niệm cần thiết để hiểu cách hoạt động của Freebase.

  1. Biểu đồ
  2. Chủ đề
  3. Loại và thuộc tính
  4. Miền và mã nhận dạng
  5. Các loại giá trị phức hợp
  6. MID của chủ đề
  7. Vùng tên, Khoá và Mã chủ đề
  8. Tìm hiểu thêm về cơ sở lưu trú
  9. Tóm tắt

Đồ thị

Dữ liệu Freebase được lưu trữ trong cấu trúc dữ liệu được gọi là biểu đồ. Một biểu đồ bao gồm các nút nối với nhau bằng các cạnh. Trong Freebase, các nút được xác định bằng /type/object và các cạnh được xác định bằng /type/link. Bằng cách lưu trữ dữ liệu dưới dạng biểu đồ, Freebase có thể nhanh chóng duyệt qua các kết nối tùy ý giữa các chủ đề và dễ dàng thêm lược đồ mới mà không phải thay đổi cấu trúc dữ liệu.

Chủ đề

Freebase có hơn 39 triệu chủ đề về các thực thể trong thế giới thực như con người, địa điểm và mọi thứ. Vì dữ liệu Freebase được trình bày trong biểu đồ, các chủ đề này tương ứng với các nút trong biểu đồ. Tuy nhiên, không phải nút nào cũng là một chủ đề. Hãy xem phần về CVT để xem ví dụ về các nút không phải là chủ đề.

Ví dụ về các loại chủ đề trong Freebase:

Một số chủ đề đáng chú ý vì chúng chứa nhiều dữ liệu (ví dụ: Wal-Mart), và một số đáng chú ý vì chúng liên kết đến nhiều chủ đề khác, có thể trong các lĩnh vực thông tin khác nhau. Ví dụ: các chủ đề trừu tượng như tình yêu, nghèo đói, tinh thần hiệp sĩ, v.v. không có nhiều thuộc tính liên quan, nhưng chúng thường xuất hiện dưới dạng chủ đề sách, chủ đề thơ, chủ đề phim ảnh, v.v. khiến chúng trở nên đáng chú ý hơn.

Loại và thuộc tính

Bạn có thể xem bất kỳ chủ đề nào cho nhiều khía cạnh khác nhau, chẳng hạn như:

  • Bob Dylan là nhà văn, ca sĩ, diễn viên, tác giả sách và diễn viên điện ảnh;
  • Leonardo da Vinci là một họa sĩ, nhà điêu khắc, nhà giải phẫu, kiến trúc sư, kỹ sư, ...;
  • Tình yêu là chủ đề sách, chủ đề phim, chủ thể chơi, chủ đề thơ, ...;
  • Thành phố nào cũng có vị trí, có khả năng là điểm đến du lịch và là nơi sử dụng công chức.

Để nắm bắt bản chất nhiều mặt này của nhiều chủ đề, chúng tôi giới thiệu khái niệm loại trong Freebase. Các chủ đề trong Freebase có thể có bất kỳ loại nào được chỉ định cho chúng. Chủ đề về Bob Dylan được chỉ định cho một số loại: loại người viết bài hát, loại người soạn nhạc, loại nghệ sĩ (ca sĩ), loại tác giả sách, v.v. Mỗi loại mang một nhóm thuộc tính khác nhau tùy theo loại. Ví dụ:

  • Loại nghệ sĩ âm nhạc chứa tài sản liệt kê tất cả các album mà Bob Dylan đã sản xuất cũng như tất cả các loại nhạc cụ anh biết chơi;
  • Loại tác giả sách có một thuộc tính liệt kê tất cả các sách mà Bob Dylan đã viết hoặc chỉnh sửa, cũng như trường dạy viết hoặc chuyển động của ông;
  • Loại công ty chứa nhiều thuộc tính để liệt kê những người sáng lập công ty, thành viên hội đồng quản trị, công ty mẹ, phòng ban, nhân viên, sản phẩm, hồ sơ doanh thu và hồ sơ lợi nhuận hàng năm, v.v.

Vì vậy, một kiểu dữ liệu có thể được coi là một vùng chứa khái niệm về thuộc tính thường cần thiết nhất để mô tả một khía cạnh cụ thể của thông tin. (Bạn có thể coi một kiểu tương tự như một bảng quan hệ và mỗi bảng "loại" đều có một khóa ngoại vào một bảng "danh tính" xác định riêng biệt từng chủ đề.)

Miền và mã nhận dạng

Giống như các thuộc tính được nhóm thành loại, bản thân các loại cũng được nhóm thành miền. Hãy xem các miền là các mục trong tờ báo yêu thích của bạn: Kinh doanh, Phong cách sống, Nghệ thuật và Giải trí, Chính trị, Kinh tế, v.v. Mỗi miền được cung cấp một mã nhận dạng (ví dụ:)

Mã nhận dạng của một miền trông giống như một đường dẫn tệp hoặc một đường dẫn trong địa chỉ web.

Mỗi loại cũng được cung cấp một mã và mã nhận dạng dựa trên miền chứa nó. Ví dụ: loại Công ty thuộc miền Doanh nghiệp và được cấp ID /business/company. Sau đây là một số ví dụ khác:

Giống như một loại thừa hưởng phần đầu của ID từ miền của nó, một thuộc tính cũng kế thừa phần đầu của ID từ loại của nó. Ví dụ: Thuộc tính ngành của loại Công ty (được sử dụng để xác định ngành mà một công ty đang hoạt động) được cung cấp ID /business/company/industry. Sau đây là một số ví dụ khác:

Do đó, mặc dù các loại không được sắp xếp thành các hệ phân cấp trong Freebase; các miền, loại và thuộc tính được cung cấp các ID được sắp xếp về mặt khái niệm trong hệ phân cấp giống thư mục tệp.

Loại giá trị phức hợp

Loại giá trị phức hợp là một loại trong Freebase, dùng để thể hiện dữ liệu trong đó mỗi mục nhập gồm nhiều trường. Các loại giá trị phức hợp hoặc CVT được sử dụng trong Freebase để đại diện cho dữ liệu phức tạp. Việc này có thể hơi khó hiểu lúc đầu, nhưng CVT là một phần rất quan trọng trong giản đồ Freebase và giúp mô hình hóa các mối quan hệ phức tạp giữa các chủ đề một cách chính xác hơn.

Hãy xem xét ví dụ sau đây: Dân số của một thành phố thay đổi theo thời gian. Điều đó có nghĩa là bất cứ khi nào bạn truy vấn Freebase cho dân số, ít nhất bạn sẽ ngầm yêu cầu một tập hợp vào một ngày nhất định. Hai Giá trị có liên quan, số lượng người và ngày. Có một trường hợp mà CVT trở nên cực kỳ hữu ích. Nếu không có dữ liệu dân số, để lập mô hình dữ liệu, bạn cần tạo một chủ đề và đặt tên là "dân số của Vancouver năm 1997" rồi gửi thông tin ở đó.

Có thể xem CVT là một chủ đề không yêu cầu bạn tạo tên hiển thị. Giống như các chủ đề thông thường, CVT có GUID có thể tham chiếu độc lập. Tuy nhiên, ứng dụng Freebase xử lý chúng khác với chủ đề. Trong hầu hết các trường hợp, mọi thuộc tính của CVT phải là thuộc tính phân định.

MID chủ đề

Mặc dù một chủ đề có thể có hoặc không thể nhận dạng bằng không gian tên/mã khoá, nhưng chủ đề này luôn có thể được xác định bằng MID – Mã nhận dạng máy, bao gồm /m/, theo sau là mã nhận dạng duy nhất dựa trên cơ sở 32. MID được gán cho các chủ đề trong thời gian tạo và được quản lý trong suốt thời gian hoạt động của chủ đề. Chúng đóng một vai trò quan trọng khi chủ đề được hợp nhất hoặc bị tách ra, cho phép các ứng dụng bên ngoài theo dõi chủ đề hợp lý ngay cả khi danh tính Freebase thực tế (GUID của chủ đề) có thể thay đổi. Id do máy tạo khác với các ID Freebase khác mà con người có thể đọc được (được trả về bởi thuộc tính "id") ở chỗ:

  • Đảm bảo tồn tại
  • Do máy tạo
  • Được thiết kế để hỗ trợ so sánh ngoại tuyến
  • Không được thiết kế để chuyển tải ý nghĩa cho con người
  • Ngắn (có thể là độ dài cố định)
  • Lý tưởng để trao đổi nhanh các khoá giữa hệ thống bên ngoài và các thành phần (bên ngoài, trao đổi)

MID là giá trị nhận dạng được đề xuất sử dụng để giải quyết các chủ đề trong Freebase

Vùng tên, Khoá và Mã chủ đề

Hệ thống phân cấp giống như thư mục tệp của miền, loại và mã tài sản chỉ là một ứng dụng của khái niệm chung hơn: không gian tênkhóa. Không gian tên giống như thư mục tệp và khóa giống như tên tệp. Giống như tất cả các tên tệp trong một thư mục tệp cụ thể đều phải là duy nhất, tất cả các khóa trong một không gian tên cụ thể cũng phải là duy nhất.

Ví dụ cụ thể hơn, /business là không gian tên tương ứng với miền Doanh nghiệp. Trong các nhóm đó, các loại khóa liên quan đến Doanh nghiệp được cung cấp các khóa (ví dụ: company) là duy nhất. Mã nhận dạng của mỗi loại được tạo bằng cách thêm khóa của mã đó vào mã nhận dạng của không gian tên (ví dụ: /business/company).

Có một số loại không gian tên bên cạnh các vùng chứa tên tương ứng với các miền và loại. Quan trọng nhất và thường xuyên gặp phải là vùng chứa tên /en. Đây là không gian tên tiếng Anh, trong đó chủ đề nổi tiếng nhất có thể được cấp các khoá duy nhất để tạo thành mã nhận dạng tiếng Anh dễ đọc. Ví dụ: Bob Dylan nổi tiếng đến mức chủ đề của ông trong Freebase được cấp khoá bob_dylan trong vùng chứa tên /en, vì vậy mã của chủ đề là /en/bob_dylan. ID này cho phép bạn truy cập vào chủ đề của anh ấy trong ứng dụng web bằng URL đơn giản

Xem thêm thông tin về cơ sở lưu trú

Khái niệm cơ bản cuối cùng để thảo luận bao gồm sự khác biệt lớn giữa thuộc tính Freebase và sự tương đồng của chúng trong công nghệ cơ sở dữ liệu quan hệ, cụ thể là cột bảng quan hệ. Đối với mỗi hàng, cột của bảng quan hệ chỉ có thể chứa một giá trị. Ví dụ: xem xét một bảng quan hệ "sách" thông thường với một cột có tên là "tác giả". Đối với mỗi hàng trong bảng "sách", cột "tác giả" chỉ có thể chứa một khóa ngoại cho bảng "tác giả". Nếu một cuốn sách có nhiều tác giả, thì thiết kế giản đồ quan hệ đơn giản này sẽ không hoạt động được và chúng tôi sẽ phải tạo một bảng mới để lập mô hình quyền tác giả. Nghĩa là, chúng ta cần một bảng "sách", một bảng "tác giả" và một bảng "tác giả" để lưu trữ mối quan hệ giữa các sách với tác giả. Và cách bạn truy xuất dữ liệu sẽ thay đổi hoàn toàn khi bạn chuyển từ thiết kế giản đồ này sang thiết kế giản đồ khác.

Trái ngược với các công nghệ cơ sở dữ liệu thông thường, Freebase coi các thuộc tính nhiều giá trị là mong muốn trong việc lập mô hình dữ liệu thực tế mà nó hỗ trợ các thuộc tính nhiều giá trị theo mặc định. Tức là khi tạo thuộc tính /book/written_work/author, hệ thống sẽ giả định là cho phép nhiều tác giả mỗi cuốn sách. Bạn có thể truy vấn một thuộc tính có nhiều giá trị và tìm kiếm một thuộc tính có một giá trị giống hệt nhau. Không cần phải suy nghĩ liệu bạn có cần tham gia vào bảng thứ ba mà mô hình hóa mối quan hệ n-to-n hay không.

Tóm tắt

  • Loại là một vùng chứa khái niệm về các thuộc tính liên quan thường cần thiết để mô tả một khía cạnh nhất định của một chủ đề.
  • Một chủ đề có thể được chỉ định một hoặc nhiều loại (loại mặc định là /common/topic)
  • Vì thuộc tính được nhóm thành loại, nên loại được nhóm thành miền.
  • Miền, loại và thuộc tính được cung cấp ID trong hệ thống phân cấp không gian tên/khóa.
  • Các chủ đề phổ biến thường được cung cấp với mã nhận dạng trong không gian tên /en, là các chuỗi tiếng Anh mà con người có thể đọc được.
  • Các chủ đề được xác định duy nhất trong Freebase bằng GUID.
  • Theo mặc định, các thuộc tính là nhiều giá trị, các thuộc tính nhiều giá trị và các thuộc tính có một giá trị có thể được truy vấn theo cùng một cách.