Chuyển đổi và tải các câu trả lời khảo sát trên Google Biểu mẫu vào BigQuery

1. Giới thiệu

Có nhiều lý do để chạy bản khảo sát: đánh giá mức độ hài lòng của khách hàng, chạy nghiên cứu thị trường, cải thiện sản phẩm hoặc dịch vụ hoặc đánh giá mức độ gắn bó của nhân viên. Tuy nhiên, nếu đã từng xử lý dữ liệu khảo sát, có thể bạn đã biết rằng định dạng tiêu chuẩn rất khó xử lý. Trong hướng dẫn này, chúng tôi xây dựng một quy trình tự động để thu thập kết quả của Google Forms, chuẩn bị dữ liệu để phân tích bằng Cloud Dataprep, tải dữ liệu đó vào BigQuery và cho phép nhóm của bạn thực hiện phân tích trực quan bằng các công cụ như Looker hoặc Data Studio.

Sản phẩm bạn sẽ tạo ra

Trong lớp học lập trình này, bạn sẽ sử dụng Dataprep để chuyển đổi các câu trả lời từ bản khảo sát mẫu trên Google Biểu mẫu thành một định dạng hữu ích cho việc phân tích dữ liệu. Bạn sẽ đẩy dữ liệu đã chuyển đổi vào BigQuery để có thể đặt câu hỏi sâu hơn bằng SQL và kết hợp dữ liệu đó với các tập dữ liệu khác để phân tích hiệu quả hơn. Cuối cùng, bạn có thể khám phá các trang tổng quan tạo sẵn hoặc kết nối công cụ thông tin kinh doanh của riêng mình với BigQuery để tạo báo cáo mới.

Kiến thức bạn sẽ học được

  • Cách chuyển đổi dữ liệu khảo sát bằng Dataprep
  • Cách đẩy dữ liệu cuộc khảo sát vào BigQuery
  • Cách nhận thêm thông tin chi tiết từ dữ liệu khảo sát

Bạn cần có

2. Quản lý câu trả lời trên Google Biểu mẫu

Chúng ta sẽ bắt đầu bằng cách xem xét kỹ hơn các câu trả lời trên Google Biểu mẫu cho bản khảo sát mẫu của chúng tôi.

f3d25efd2cc923f5.png

Bạn có thể xuất kết quả cuộc khảo sát từ thẻ "câu trả lời" bằng cách nhấp vào biểu tượng Google Trang tính rồi tạo một bảng tính mới hoặc tải kết quả vào một bảng tính hiện có. Google Biểu mẫu sẽ tiếp tục thêm câu trả lời vào bảng tính khi người trả lời gửi câu trả lời cho đến khi bạn bỏ chọn nút "Chấp nhận câu trả lời".

d499e5a4dccdf5fd.png

4939332a5d8f9f19.png

Bây giờ, hãy xem xét từng loại câu trả lời và cách dịch câu trả lời đó trong tệp Google Trang tính.

3. Biến đổi câu trả lời khảo sát

Bạn có thể nhóm các câu hỏi khảo sát thành 4 nhóm có định dạng xuất cụ thể. Dựa trên loại câu hỏi, bạn sẽ cần phải tái cấu trúc dữ liệu theo một cách nhất định. Ở đây, chúng ta xem xét từng nhóm và các loại phép biến đổi mà chúng ta cần áp dụng.

Câu hỏi có một lựa chọn: câu trả lời ngắn, đoạn văn, trình đơn thả xuống, thang điểm tuyến tính, v.v.

  • Tên câu hỏi: tên cột
  • Phản hồi: giá trị ô
  • Yêu cầu về việc chuyển đổi: không cần chuyển đổi; phản hồi được tải nguyên trạng.

3eeedc50b0fd54fd.png

Câu hỏi trắc nghiệm: nhiều lựa chọn, hộp đánh dấu

  • Tên câu hỏi: tên cột
  • Phản hồi: danh sách giá trị có dấu chấm phẩy phân tách (ví dụ: "Phản hồi 1; Phản hồi 4; Phản hồi 6")
  • Yêu cầu về phép biến đổi: danh sách giá trị cần được trích xuất và xoay vòng để mỗi phản hồi trở thành một hàng mới.

cab8a38a96a13ce4.png

Câu hỏi dạng lưới trắc nghiệm

Sau đây là ví dụ về một câu hỏi trắc nghiệm. Bạn phải chọn một giá trị duy nhất từ mỗi hàng.

c6ea3d47d4dd5e78.png

  • Tên câu hỏi: mỗi câu hỏi riêng lẻ sẽ trở thành tên cột có định dạng "Câu hỏi [Câu trả lời]".
  • Phản hồi: mỗi câu trả lời riêng lẻ trong lưới sẽ trở thành một cột có giá trị riêng biệt.
  • Yêu cầu về việc chuyển đổi: mỗi câu hỏi/câu trả lời phải trở thành một hàng mới trong bảng và được chia thành hai cột. Một cột đề cập đến phương án của câu hỏi và cột còn lại có câu trả lời.

9223d0271516c58d.png

Câu hỏi dạng lưới trắc nghiệm có hộp đánh dấu

Dưới đây là ví dụ về lưới hộp đánh dấu. Bạn có thể chọn không có giá trị nào đến nhiều giá trị trong mỗi hàng.

4e3189b8cc2d4a8b.png

  • Tên câu hỏi: mỗi câu hỏi riêng lẻ sẽ trở thành tên cột theo định dạng "Câu hỏi [Câu trả lời]".
  • Phản hồi: mỗi phản hồi riêng lẻ trong lưới sẽ trở thành một cột có danh sách các giá trị được phân tách bằng dấu chấm phẩy.
  • Yêu cầu chuyển đổi: các loại câu hỏi này kết hợp danh mục "hộp đánh dấu" và "Lưới trắc nghiệm" và phải được giải quyết theo thứ tự này.

Trước tiên, bạn cần trích xuất và xoay danh sách giá trị của mỗi câu trả lời để mỗi câu trả lời trở thành một hàng mới cho câu hỏi cụ thể.

Thứ hai: mỗi phản hồi riêng lẻ phải trở thành một hàng mới trong bảng và được chia thành hai cột. Một cột đề cập đến phần trả lời của câu hỏi và cột còn lại có câu trả lời.

3c3c2bd098e03003.png

Tiếp theo, chúng ta sẽ cho thấy cách xử lý các phép biến đổi này bằng Cloud Dataprep.

4. Tạo luồng Cloud Dataprep

Nhập "Mẫu thiết kế phân tích Google Forms" trong Cloud Dataprep

Tải gói quy trình Mẫu thiết kế Analytics của Google Biểu mẫu xuống (không cần giải nén). Trong ứng dụng Cloud Dataprep, hãy nhấp vào biểu tượng Flows (Luồng) trong thanh điều hướng bên trái. Sau đó, trên trang Flows (Quy trình), hãy chọn Import (Nhập) trong trình đơn theo bối cảnh.

ba7c0cb0eec398df.png

Sau khi nhập flow, hãy chọn flow đã nhập để chỉnh sửa. Màn hình của bạn sẽ có dạng như sau:

44978861eb34ec71.png

Kết nối bảng tính kết quả khảo sát trên Google Trang tính

Ở bên trái luồng, bạn phải kết nối lại nguồn dữ liệu với một Google Trang tính chứa kết quả của Google Biểu mẫu. Nhấp chuột phải vào đối tượng tập dữ liệu Google Trang tính rồi chọn "Thay thế".

55c16f0c04366f0c.png

Sau đó, hãy nhấp vào đường liên kết "Nhập tập dữ liệu" ở cuối cửa sổ bật lên. Nhấp vào biểu tượng bút chì "Chỉnh sửa đường dẫn".

8afeef260c96277f.png

Từ đó, hãy thay thế giá trị hiện tại bằng đường liên kết này trỏ đến một Google Trang tính có một số kết quả từ Google Forms. Bạn có thể sử dụng ví dụ của chúng tôi hoặc bản sao của riêng mình: https://docs.google.com/spreadsheets/d/1DgIlvlLceFDqWEJs91F8rt1B-X0PJGLY6shkKGBPWpk/edit?usp=sharing

Nhấp vào "Bắt đầu", rồi nhấp vào "Nhập và thêm vào luồng" ở dưới cùng bên phải. Khi bạn quay lại cửa sổ bật lên, hãy nhấp vào nút "Thay thế" ở dưới cùng bên phải.

Kết nối với bảng BigQuery

Ở bên phải luồng, bạn cần kết nối đầu ra với thực thể BigQuery của riêng mình. Đối với mỗi đầu ra, hãy nhấp vào biểu tượng rồi chỉnh sửa thuộc tính của đầu ra đó như sau.

Trước tiên, hãy bắt đầu bằng cách chỉnh sửa "Đích đến thủ công"

a3fc2cb80153ec25.png

Trên màn hình "Cài đặt phát hành" sau đây, hãy nhấp vào nút chỉnh sửa

85791e6162a370de.png

Khi thấy màn hình "Publishing Action" (Thao tác xuất bản), bạn cần thay đổi chế độ cài đặt kết nối bằng cách nhấp vào kết nối BigQuery rồi chỉnh sửa các thuộc tính của kết nối đó.

1f3e4887baaeaffd.png

Chọn tập dữ liệu BigQuery mà bạn muốn tải kết quả Google Forms vào. Bạn có thể chọn "mặc định" nếu chưa tạo tập dữ liệu BigQuery nào.

f4eaa05ecf9de162.png

Sau khi chỉnh sửa "Điểm đến thủ công", hãy tiến hành tương tự cho kết quả "Điểm đến theo lịch".

46edea1b8ca63270.png

Lặp lại trên mỗi đầu ra theo các bước tương tự. Tổng cộng, bạn phải chỉnh sửa 8 đích đến.

5. Giải thích quy trình Cloud Dataprep

Ý tưởng cơ bản của quy trình "Mẫu thiết kế Analytics của Google Biểu mẫu" là thực hiện các phép biến đổi trên câu trả lời khảo sát như mô tả trước đó – bằng cách chia nhỏ từng danh mục câu hỏi thành một công thức biến đổi dữ liệu cụ thể trong Cloud Dataprep.

Quy trình này chia các câu hỏi thành 4 bảng (tương ứng với 4 danh mục câu hỏi, để đơn giản hoá)

afa421849b1bd398.png

Bạn nên khám phá từng công thức một, bắt đầu bằng "Clean Headers" (Làm sạch tiêu đề), sau đó là "SingleChoiceSELECT-Questions" (Câu hỏi SingleChoiceSELECT) rồi đến các công thức khác bên dưới.

Tất cả công thức đều được chú thích để giải thích các bước biến đổi. Khi ở trong một công thức, bạn có thể chỉnh sửa một bước và xem trước trạng thái trước/sau của một cột cụ thể.

449da06d96cd520e.png

4ac6e14f578d0707.png

6. Chạy luồng Cloud Dataprep

Giờ đây, khi nguồn và đích đến đã được định cấu hình đúng cách, bạn có thể chạy luồng để chuyển đổi và tải các phản hồi vào BigQuery. Chọn từng đầu ra rồi nhấp vào nút "Chạy". Nếu bảng BigQuery được chỉ định tồn tại, Dataprep sẽ thêm các hàng mới, nếu không, công cụ này sẽ tạo một bảng mới.

47cf50f6d17a5b1e.png

Nhấp vào biểu tượng "nhật ký công việc" trên ngăn bên trái để theo dõi các công việc. Quá trình này sẽ mất vài phút để tiếp tục và tải các bảng BigQuery.

afc79eeb27202fb4.png

Khi tất cả công việc hoàn tất, kết quả khảo sát sẽ được tải vào BigQuery ở định dạng rõ ràng, có cấu trúc và được chuẩn hoá để sẵn sàng phân tích.

7. Phân tích dữ liệu cuộc khảo sát trong BigQuery

Trong Google Console cho BigQuery, bạn có thể xem thông tin chi tiết về từng bảng mới

df370873572511ac.png

Với dữ liệu khảo sát trong BigQuery, bạn có thể dễ dàng đặt các câu hỏi toàn diện hơn để hiểu rõ hơn về câu trả lời của cuộc khảo sát. Ví dụ: giả sử bạn đang cố gắng tìm hiểu ngôn ngữ lập trình nào được những người có nhiều chức danh chuyên nghiệp sử dụng phổ biến nhất – bạn có thể viết truy vấn như sau:

SELECT
   programming_answers.Language  AS programming_answers_language,
   project_answers.Title  AS project_answers_title,
   AVG((case when programming_answers.Level='None' then 0 
when programming_answers.Level='beginner' then 1
when programming_answers.Level='competent' then 2 
when programming_answers.Level='proficient' then 3
when programming_answers.Level='expert' then 4 
else null end) ) AS programming_answers_average_level_value
FROM `my-project.DesignPattern.A000111_ProjectAnswers` AS project_answers
INNER JOIN `my-project.A000111_ProgrammingAnswers` AS programming_answers
ON programming_answers.RESPONSE_ID = project_answers.RESPONSE_ID
GROUP BY 1,2
ORDER BY 3 DESC

Để phân tích hiệu quả hơn, bạn có thể kết hợp câu trả lời khảo sát với dữ liệu CRM để xem liệu người tham gia có liên kết với bất kỳ tài khoản nào đã có trong kho dữ liệu của bạn hay không. Điều này có thể giúp doanh nghiệp của bạn đưa ra quyết định sáng suốt hơn về việc hỗ trợ khách hàng hoặc nhắm đến người dùng cho các sản phẩm mới ra mắt.

Tại đây, chúng tôi sẽ hướng dẫn bạn cách kết hợp dữ liệu khảo sát vào bảng tài khoản dựa trên miền của người trả lời và trang web của tài khoản. Giờ đây, bạn có thể xem mức phân phối phản hồi theo loại tài khoản. Điều này giúp bạn biết số lượng người trả lời thuộc các tài khoản khách hàng hiện tại.

SELECT
   account.TYPE  AS account_type,
   COUNT(DISTINCT project_answers.Domainname) AS project_answers_count_domains
FROM `my-project.A000111_ProjectAnswers` AS project_answers
LEFT JOIN `my-project.testing.account` AS account 
ON project_answers.Domainname=account.website
GROUP BY 1

8. Thực hiện phân tích trực quan

Giờ đây, dữ liệu cuộc khảo sát của bạn được tập trung trong một kho dữ liệu, bạn có thể dễ dàng phân tích dữ liệu đó trong một công cụ thông tin kinh doanh. Chúng tôi đã tạo một số báo cáo mẫu trong Data StudioLooker.

Looker

Nếu đã có một phiên bản Looker, bạn có thể sử dụng LookML trong thư mục này để bắt đầu phân tích dữ liệu CRM và bản khảo sát mẫu cho mẫu này. Bạn chỉ cần tạo một dự án Looker mới, thêm LookML và thay thế tên kết nối và tên bảng trong tệp để khớp với cấu hình BigQuery của bạn. Nếu không có thực thể Looker nhưng muốn tìm hiểu thêm, bạn có thể lên lịch xem minh hoạ tại đây.

129db05d6f85f484.png

Data Studio

Ngoài ra, để tạo báo cáo trong Data Studio, hãy nhấp vào khung có biểu tượng chữ thập của Google "Báo cáo trống" rồi kết nối với BigQuery. Làm theo tất cả hướng dẫn của Data Studio. Nếu muốn tìm hiểu thêm, bạn có thể xem hướng dẫn nhanh và giới thiệu về các tính năng chính của Data Studio tại đây. Bạn cũng có thể tìm thấy các trang tổng quan Data Studio tạo sẵn của chúng tôi tại đây.

5e744869e3fe3f8f.png

9. Dọn dẹp

Cách dễ nhất để loại bỏ việc thanh toán là xoá dự án trên Cloud mà bạn đã tạo cho hướng dẫn này. Ngoài ra, bạn có thể xoá từng tài nguyên.

  1. Trong Cloud Console, hãy chuyển đến phần quản lý tài nguyên
  2. Trong danh sách dự án, hãy chọn dự án mà bạn muốn xoá, rồi nhấp vào Xoá.
  3. Trong hộp thoại, hãy nhập mã dự án, sau đó nhấp vào Shut down (Tắt) để xoá dự án.