Tài liệu này mô tả các điều kiện tiên quyết, phương pháp hay nhất và lỗi thường gặp khi làm việc với tập dữ liệu.
Điều kiện tiên quyết
Khi tạo tập dữ liệu:
- Tên hiển thị phải là duy nhất trong dự án Google Cloud của bạn.
- Tên hiển thị phải có kích thước dưới 64 byte (Vì các ký tự này được biểu thị bằng UTF-8, nên trong một số ngôn ngữ, mỗi ký tự có thể được biểu thị bằng nhiều byte).
- Nội dung mô tả phải có kích thước dưới 1.000 byte.
Khi tải dữ liệu lên:
- Các loại tệp được hỗ trợ là CSV, GeoJSON và KML.
- Kích thước tệp tối đa được hỗ trợ là 500 MB.
- Tên cột thuộc tính không được bắt đầu bằng chuỗi "?_".
- Hình học 3 chiều không được hỗ trợ. Tên này bao gồm hậu tố "Z" ở định dạng WKT và toạ độ độ cao ở định dạng GeoJSON.
Các phương pháp hay nhất để chuẩn bị dữ liệu
Nếu dữ liệu nguồn của bạn phức tạp hoặc có kích thước lớn, chẳng hạn như các điểm dày đặc, chuỗi đường dài hoặc đa giác (thường là các tệp nguồn có kích thước lớn hơn 50 MB thuộc danh mục này), hãy cân nhắc đơn giản hoá dữ liệu trước khi tải lên để đạt được hiệu suất tốt nhất trong bản đồ trực quan.
Dưới đây là một số phương pháp hay nhất để chuẩn bị dữ liệu:
- Giảm thiểu các thuộc tính của tính năng. Chỉ giữ lại các thuộc tính đối tượng cần thiết để tạo kiểu cho bản đồ, ví dụ: "id" và "category". Bạn có thể kết hợp các thuộc tính bổ sung với một tính năng trong ứng dụng khách bằng cách sử dụng các kiểu dựa trên dữ liệu trên khoá giá trị nhận dạng duy nhất. Ví dụ: hãy xem bài viết Xem dữ liệu theo thời gian thực bằng tính năng Định kiểu dựa trên dữ liệu.
- Sử dụng các loại dữ liệu đơn giản cho các đối tượng thuộc tính (nếu có thể), chẳng hạn như số nguyên, để giảm thiểu kích thước thẻ thông tin và cải thiện hiệu suất của bản đồ.
- Đơn giản hoá các hình học phức tạp trước khi tải tệp lên. Bạn có thể thực hiện việc này trong một công cụ không gian địa lý mà bạn chọn, chẳng hạn như tiện ích nguồn mở Mapshaper.org hoặc trong BigQuery bằng cách sử dụng hàm ST_Simplify trên các hình dạng đa giác phức tạp.
- Nhóm các điểm rất dày đặc trước khi tải tệp lên. Bạn có thể thực hiện việc này trong một công cụ không gian địa lý mà bạn chọn, chẳng hạn như các hàm cụm turf.js nguồn mở hoặc trong BigQuery bằng cách sử dụng ST_CLUSTERDBSCAN trên các hình học điểm dày đặc.
Hãy xem hướng dẫn bổ sung về các phương pháp hay nhất về tập dữ liệu trong bài viết Hình ảnh hoá dữ liệu bằng Tập dữ liệu và BigQuery.
Yêu cầu về GeoJSON
Maps Datasets API hỗ trợ thông số kỹ thuật GeoJSON hiện tại. API Tập dữ liệu của Maps cũng hỗ trợ các tệp GeoJSON chứa bất kỳ loại đối tượng nào sau đây:
- Đối tượng hình học. Đối tượng hình học là một hình dạng không gian, được mô tả là một tổ hợp của các điểm, đường và đa giác có lỗ tuỳ chọn.
- Đối tượng đối tượng. Đối tượng tính năng chứa một hình học cùng với các cặp tên/giá trị bổ sung, có ý nghĩa dành riêng cho ứng dụng.
- Bộ sưu tập tính năng. Tập hợp đối tượng là một tập hợp các đối tượng đặc điểm.
Maps Datasets API không hỗ trợ các tệp GeoJSON có dữ liệu trong một hệ thống tham chiếu toạ độ (CRS) không phải là WGS84.
Để biết thêm thông tin về GeoJSON, hãy xem phần Tuân thủ RFC 7946.
Yêu cầu đối với KML
API Tập dữ liệu Maps có các yêu cầu sau:
- Tất cả URL phải là URL cục bộ (hoặc tương đối) so với chính tệp đó.
- Các hình học điểm, đường và đa giác được hỗ trợ.
- Tất cả thuộc tính dữ liệu đều được coi là chuỗi.
- Biểu tượng hoặc
<styleUrl>
được xác định bên ngoài tệp. - Đường liên kết mạng, chẳng hạn như
<NetworkLink>
- Lớp phủ mặt đất, chẳng hạn như
<GroundOverlay>
- Hình học 3D hoặc bất kỳ thẻ nào liên quan đến độ cao như
<altitudeMode>
- Thông số kỹ thuật của máy ảnh, chẳng hạn như
<LookAt>
- Các kiểu được xác định bên trong tệp KML.
Yêu cầu về tệp CSV
Đối với tệp CSV, tên cột được hỗ trợ được liệt kê bên dưới theo thứ tự ưu tiên:
latitude
,longitude
lat
,long
x
,y
wkt
(Văn bản dễ biết)address
,city
,state
,zip
address
- Một cột duy nhất chứa tất cả thông tin địa chỉ, chẳng hạn như
1600 Amphitheatre Parkway Mountain View, CA 94043
Ví dụ: tệp của bạn chứa các cột có tên x
, y
và wkt
.
Vì x
và y
có mức độ ưu tiên cao hơn, được xác định theo thứ tự tên cột được hỗ trợ trong danh sách ở trên, nên các giá trị trong cột x
và y
sẽ được sử dụng và cột wkt
sẽ bị bỏ qua.
Ngoài ra:
- Mỗi tên cột phải thuộc về một cột duy nhất. Tức là bạn không thể có cột có tên
xy
chứa cả dữ liệu toạ độ x và y. Toạ độ x và y phải nằm trong các cột riêng biệt. - Tên cột không phân biệt chữ hoa chữ thường.
- Thứ tự của tên cột không quan trọng. Ví dụ: nếu tệp CSV của bạn chứa các cột
lat
vàlong
, thì các cột này có thể xuất hiện theo thứ tự bất kỳ.
Xử lý lỗi tải dữ liệu lên
Khi tải dữ liệu lên một tập dữ liệu, bạn có thể gặp phải một trong các lỗi thường gặp được mô tả trong phần này.
Lỗi GeoJSON
Sau đây là các lỗi GeoJSON thường gặp:
- Thiếu trường
type
hoặctype
không phải là một chuỗi. Tệp dữ liệu GeoJSON đã tải lên phải chứa một trường chuỗi có tên làtype
trong mỗi định nghĩa đối tượng Feature và Geometry.
Lỗi KML
Sau đây là các lỗi KML thường gặp:
- Tệp dữ liệu không được chứa bất kỳ tính năng KML nào không được hỗ trợ nêu trên, nếu không, quá trình nhập dữ liệu có thể không thành công.
Lỗi CSV
Sau đây là một số lỗi CSV thường gặp:
- Một số hàng thiếu giá trị cho cột hình học. Tất cả các hàng trong tệp CSV phải chứa
giá trị không trống cho các cột hình học. Các cột hình học bao gồm:
latitude
,longitude
lat
,long
x
,y
wkt
address
,city
,state
,zip
address
- Một cột duy nhất chứa tất cả thông tin địa chỉ, chẳng hạn như
1600 Amphitheatre Parkway Mountain View, CA 94043
- Nếu
x
vày
là cột hình học, hãy đảm bảo rằng đơn vị là kinh độ và vĩ độ. Một số tập dữ liệu công khai sử dụng các hệ thống toạ độ khác nhau trong các tiêu đềx
vày
. Nếu bạn sử dụng sai đơn vị, tập dữ liệu có thể nhập thành công, nhưng dữ liệu được kết xuất có thể hiển thị các điểm tập dữ liệu ở những vị trí không mong muốn.