Loại dữ liệu và loại ngữ nghĩa

Khi bạn xây dựng một trình kết nối cộng đồng, mỗi trường mà bạn xác định trong giản đồ sẽ yêu cầu một loại dữ liệu. Loại dữ liệu xác định loại nguyên gốc của trường, chẳng hạn như BOOLEAN, STRING, NUMBER, v.v.

Ngoài các loại dữ liệu, Looker Studio cũng sử dụng các loại ngữ nghĩa. Các kiểu ngữ nghĩa giúp mô tả loại thông tin mà dữ liệu đại diện. Ví dụ: một trường có loại dữ liệu NUMBER có thể biểu thị số tiền hoặc tỷ lệ phần trăm theo ngữ nghĩa và một trường có loại dữ liệu STRING có thể đại diện cho một thành phố về mặt ngữ nghĩa. Để xem có những loại ngữ nghĩa nào, vui lòng tham khảo tài liệu về các loại ngữ nghĩa

Giản đồ Trình kết nối cộng đồng và các trường Looker Studio

Khi bạn xác định giản đồ cho trình kết nối cộng đồng, có nhiều thuộc tính cho mỗi trường sẽ xác định cách trường đó được biểu thị và sử dụng trong Looker Studio. Ví dụ:

  • conceptType được xác định trong giản đồ trình kết nối của bạn bằng cách sử dụng thuộc tính conceptType. Thuộc tính này xác định liệu trường được coi là phương diện hoặc chỉ số hay không. Bạn có thể xem nội dung giải thích về sự khác biệt giữa chỉ số và phương diện trong bài viết Phương diện và chỉ số.
  • Loại ngữ nghĩa có thể được xác định trong giản đồ trình kết nối hoặc có thể được Looker Studio tự động phát hiện dựa trên thuộc tính loại dữ liệu được xác định trong trình kết nối của bạn và các giá trị dữ liệu mà trình kết nối của bạn trả về. Xem bài viết Tự động phát hiện loại ngữ nghĩa để biết thông tin chi tiết về cách hoạt động của tính năng này.
  • Loại tổng hợp xác định liệu hệ thống có thể tổng hợp lại các giá trị chỉ số (phương diện bị bỏ qua) hay không. Việc đặt thuộc tính semantics.isReaggregatable thành true sẽ mặc định được đặt thành tổng hợp SUM, nếu không thuộc tính này sẽ được đặt thành Auto. Bạn cũng có thể thiết lập loại tổng hợp mặc định theo cách thủ công cho các trường tổng hợp lại bằng cách sử dụng thuộc tính defaultAggregationType.

Khi bạn định cấu hình và kết nối bằng trình kết nối trong Looker Studio, trình chỉnh sửa trường sẽ hiển thị giản đồ đầy đủ cho trình kết nối dựa trên cách bạn xác định các thuộc tính ở trên. Nếu bạn đã bao gồm các loại ngữ nghĩa, thì các loại ngữ nghĩa đó sẽ hiển thị như đã xác định. Nếu bạn đang sử dụng tính năng tự động phát hiện loại ngữ nghĩa, thì các trường sẽ hiển thị khi phát hiện thấy. Màn hình trường

Đặt thông tin ngữ nghĩa

Có hai cách để thiết lập thông tin ngữ nghĩa. Bạn có thể đặt ngữ nghĩa của trường theo cách thủ công hoặc dựa vào Looker Studio để tự động phát hiện.

Ví dụ: nếu bạn có một Số đại diện cho đô la Mỹ theo ngữ nghĩa, thì Looker Studio sẽ không thể tự động phát hiện loại ngữ nghĩa này. Ngoài ra, tính năng tự động phát hiện ngữ nghĩa đòi hỏi Looker Studio phải thực hiện lệnh gọi tìm nạp dữ liệu cho từng trường trong giản đồ của bạn. Nếu bạn chỉ định giản đồ theo cách thủ công, thì sẽ không có lệnh gọi tìm nạp dữ liệu nào được thực hiện. Trong trường hợp bạn biết loại ngữ nghĩa (ví dụ: đơn vị tiền tệ, tỷ lệ phần trăm, ngày, v.v.) cho dữ liệu của mình, bạn nên thiết lập rõ ràng loại ngữ nghĩa trong giản đồ để đảm bảo độ chính xác và lý do về hiệu suất.

Cài đặt loại ngữ nghĩa theo cách thủ công (Nên dùng)

Nếu biết kiểu ngữ nghĩa, bạn có thể xác định semantics cho từng trường giản đồ theo cách thủ công. Bạn có thể xem toàn bộ thông tin chi tiết về những thuộc tính có sẵn cho bạn trong trang tài liệu tham khảo về trường. Nếu chọn xác định kiểu ngữ nghĩa thủ công, bạn nên xác định semanticTypesemanticGroup cho mọi trường. Khi cung cấp các thuộc tính này theo cách thủ công, quá trình tự động phát hiện loại ngữ nghĩa sẽ không chạy. Nếu bạn đặt thủ công một số trường (nhưng không phải tất cả) thì các trường mà bạn không chỉ định mặc định là Text, Number hoặc Boolean tuỳ thuộc vào dataType được chỉ định cho trường.

Sau đây là ví dụ về một giản đồ đơn giản có thể đặt kiểu ngữ nghĩa theo cách thủ công. Income được đặt làm Đơn vị tiền tệ và Filing Year được đặt làm ngày.

data-studio/semantics.gs
var schema = [
  {
    'name': 'Income',
    'label': 'Income (in USD)',
    'dataType': 'NUMBER',
    'semantics': {
      'conceptType': 'METRIC',
      'semanticGroup': 'CURRENCY',
      'semanticType': 'CURRENCY_USD'
    }
  }, {
    'name': 'Filing Year',
    'label': 'Year in which you filed the taxes.',
    'dataType': 'STRING',
    'semantics': {
      'conceptType': 'METRIC',
      'semanticGroup': 'DATE_OR_TIME',
      'semanticType': 'YEAR'
    }
  }
];

Khắc phục sự cố với các loại ngữ nghĩa thủ công

Nếu bạn đặt loại ngữ nghĩa không chính xác cho dữ liệu cơ bản, thì các loại ngữ nghĩa đó sẽ không hoạt động đúng cách. Việc kiểm thử này có thể khó khăn, nhưng bạn có thể làm một số việc để giúp tìm ra vấn đề.

  1. Trả về 2 hoặc 3 hàng từ dữ liệu của bạn thay vì tất cả hàng, sau đó kiểm tra dữ liệu theo cách thủ công.
  2. Tạo một bảng trong Looker Studio mà chỉ sử dụng trường mà bạn đang muốn kiểm tra.
  3. Hãy chú ý kỹ đến các trường GeoDate vì chúng có định dạng nghiêm ngặt nhất.

Tự động phát hiện loại ngữ nghĩa

Nếu bạn chưa xác định bất kỳ loại ngữ nghĩa nào trong giản đồ của mình, thì Looker Studio sẽ tìm cách tự động phát hiện các loại ngữ nghĩa đó dựa trên thuộc tính loại dữ liệu và định dạng của các giá trị dữ liệu mà trình kết nối của bạn trả về.

Các bước của quy trình phát hiện tự động như sau:

  1. Yêu cầu giản đồ bằng cách thực thi hàm getSchema của trình kết nối cộng đồng.
  2. Lặp lại qua các lô trường được xác định trong giản đồ trình kết nối rồi đưa ra getData yêu cầu các trường đó. Các yêu cầu getData được thực thi bằng tham số sampleExtraction được đặt thành true để cho biết các yêu cầu dữ liệu là nhằm mục đích phát hiện ngữ nghĩa.
  3. Dựa trên loại dữ liệu trường và định dạng của giá trị được trả về từ yêu cầu getData, hãy xác định loại ngữ nghĩa của trường.

Các tuỳ chọn xử lý tự động phát hiện loại ngữ nghĩa

Khi Looker Studio thực thi hàm getData của trình kết nối cộng đồng nhằm phát hiện ngữ nghĩa, yêu cầu đến sẽ chứa một thuộc tính sampleExtraction. Thuộc tính này sẽ được đặt thành true. Dữ liệu mà trình kết nối của bạn trả về chỉ được Looker Studio sử dụng để xác định loại ngữ nghĩa của trường. Vì không được dùng cho bất kỳ mục đích nào khác, nên giá trị này không yêu cầu dữ liệu thực tế từ nguồn bên ngoài.

Có một số cách để cải thiện khả năng phát hiện loại ngữ nghĩa trong mã của bạn:

  • Đề xuất: Truyền các giá trị được xác định trước
    Trả về một giá trị được xác định trước cho mỗi trường thể hiện tốt nhất loại ngữ nghĩa của trường đó và được biết là Looker Studio có thể phát hiện chính xác. Ví dụ: nếu loại ngữ nghĩa của một trường là Country (Quốc gia), thì sẽ trả về một giá trị như IT cho Ý. Lợi ích khác của phương pháp này là nhanh hơn nhiều vì không cần bạn thực hiện yêu cầu HTTP đến dịch vụ bên thứ ba để lấy dữ liệu.

  • Chỉ trả về n số lượng bản ghi
    Nếu dịch vụ của bên thứ ba mà bạn đang tìm nạp dữ liệu hỗ trợ hạn mức về số hàng khi yêu cầu dữ liệu, thì hãy trả về một số ít hàng cho Looker Studio thay vì tập dữ liệu đầy đủ. Điều này sẽ giới hạn lượng dữ liệu bạn cần truyền đến Looker Studio cho mỗi yêu cầu phát hiện ngữ nghĩa.

  • Yêu cầu tất cả cột và lưu phản hồi vào bộ nhớ đệm
    Nếu có thể yêu cầu tất cả các cột cho dịch vụ bên thứ ba mà bạn đang tìm nạp dữ liệu thì trong yêu cầu phát hiện ngữ nghĩa đầu tiên mà Looker Studio nhận được, hãy tìm nạp tất cả cột rồi lưu kết quả vào bộ nhớ đệm. Đối với các yêu cầu phát hiện ngữ nghĩa tiếp theo, hãy tìm nạp các giá trị cột từ bộ nhớ đệm thay vì thực hiện thêm yêu cầu HTTP cho dịch vụ của bên thứ ba.

  • Không làm gì khác
    Bạn có thể chọn không triển khai bất kỳ chỗ ở cụ thể nào cho các yêu cầu khi sampleExtraction được đặt thành true. Điều này sẽ khiến quá trình Phát hiện ngữ nghĩa chậm hơn vì Looker Studio sẽ phải tìm nạp tất cả dữ liệu cho quá trình Phát hiện ngữ nghĩa. Ngoài ra, điều này sẽ ảnh hưởng đến tỷ lệ yêu cầu đối với nguồn dữ liệu bên ngoài vì nhiều yêu cầu phát hiện ngữ nghĩa sẽ được thực thi song song.

Các định dạng được xác định để tự động phát hiện loại ngữ nghĩa

Ngày và giờ
  • YYYY/MM/DD-HH:MM:SS
  • YYYY-MM-DD [HH:MM:SS[.uuuuuu]]
  • YYYY/MM/DD [HH:MM:SS[.uuuuuu]]
  • YYYYMMDD [HH:MM:SS[.uuuuuu]]
  • Sat, 24 May 2008 20:09:47 GMT
  • 2008-05-24T20:09:47Z
  • Thời gian: thời gian bắt đầu của hệ thống cho giây, micrô, mili giây và nano.
Vị trí địa lý