GeoTIFF được tối ưu hoá cho đám mây (COG) trong Earth Engine

Google Earth Engine cho phép bạn xử lý dữ liệu raster được lưu trữ trong các vùng chứa Google Cloud Storage (GCS) của riêng bạn. Bằng cách sử dụng GeoTIFF được tối ưu hoá cho đám mây (COG), bạn có thể truy cập và phân tích dữ liệu của mình ngay trong Earth Engine mà không cần phải nhập các pixel vào kho lưu trữ tài sản của Earth Engine.

Phương pháp dựa trên nền tảng đám mây này mang lại một số lợi ích, đặc biệt là trong việc quản lý các tập dữ liệu lớn hoặc tích hợp Earth Engine vào các quy trình công việc rộng hơn của Google Cloud hoặc các công cụ và nền tảng bên ngoài.

Tại sao nên sử dụng Cloud Storage và COG?

  • Tính linh hoạt và khả năng tương tác: Lưu trữ dữ liệu của bạn trong các bộ chứa Cloud Storage tiêu chuẩn để các công cụ và dịch vụ khác có thể truy cập. Cho dù bạn tải dữ liệu lên trực tiếp hay xuất dữ liệu từ Earth Engine, Cloud Storage đều đóng vai trò là nguồn đáng tin cậy duy nhất cho cả Earth Engine và quy trình công việc bên ngoài.
  • Kiểm soát và xuất dữ liệu: Việc lưu trữ dữ liệu trong Cloud Storage cung cấp các chức năng quản lý bộ nhớ đối tượng tiêu chuẩn. Nhờ đó, bạn có thể tải xuống, di chuyển hoặc chia sẻ dữ liệu bằng các tính năng của Cloud Storage như Người yêu cầu thanh toán hoặc các vùng lưu trữ công khai, đồng thời quản lý quyền truy cập bằng Cloud IAM tiêu chuẩn.
  • Mở rộng linh hoạt: Tránh giới hạn bộ nhớ của Earth Engine. Cloud Storage cung cấp khả năng mở rộng bộ nhớ gần như không giới hạn và tự phục vụ ở quy mô petabyte.
  • Không cần chờ nhập: Việc đăng ký COG hoàn tất nhanh chóng vì Earth Engine chỉ đọc siêu dữ liệu (chẳng hạn như phép chiếu và kích thước) từ tiêu đề tệp để lập chỉ mục và xác thực. Dữ liệu thực tế của pixel vẫn nằm trong Cloud Storage và được đọc theo yêu cầu trong quá trình tính toán, giúp bạn không cần thực hiện một tác vụ truyền dữ liệu riêng biệt.

Quy trình làm việc với COG trong Earth Engine

Earth Engine hỗ trợ quy trình công việc hai chiều với COG trên Cloud Storage: bạn có thể đọc COG trực tiếp từ GCS vào Earth Engine và có thể ghi kết quả tính toán từ Earth Engine trực tiếp vào GCS dưới dạng COG.

Đọc COG từ Cloud Storage

Để đưa COG được lưu trữ trên GCS vào Earth Engine, bạn có 2 lựa chọn:

  1. Tải trực tiếp (ee.Image.loadGeoTIFF): Tải trực tiếp một hình ảnh bằng URI GCS của hình ảnh đó. Đây là lựa chọn phù hợp nhất cho các quy trình kiểm thử nhanh, phân tích đặc biệt hoặc dữ liệu tạm thời:

    JavaScript

    var image = ee.Image.loadGeoTIFF('gs://google-sample-bucket/my_image.tif');
    

    Python

    image = ee.Image.loadGeoTIFF('gs://google-sample-bucket/my_image.tif')
    

    Để xem ví dụ hoàn chỉnh, hãy xem phần hình ảnh từ Cloud GeoTIFF.

  2. Tài sản đã đăng ký: Đăng ký một hoặc nhiều COG dưới dạng tài sản Earth Engine bằng tệp kê khai tải lên (xem hướng dẫn đăng ký COG). Đây là đường dẫn được đề xuất cho quy trình sản xuất, đặc biệt là khi tạo bộ sưu tập hình ảnh.

Tính năng Tải trực tiếp (loadGeoTIFF) Thành phần đã đăng ký (tệp kê khai)
Thiết lập Không có (chỉ có URI GCS) Tệp kê khai (ứng dụng Python, CLI hoặc REST)
Hiệu suất Chuẩn (đọc tiêu đề khi đọc) Tối ưu hoá (được lập chỉ mục khi tạo)
Quản lý Chưa tạo thành phần Tính vào hạn mức số lượng thành phần, không tính vào bộ nhớ.
Trường hợp sử dụng Tạo nguyên mẫu, phân tích đặc biệt Quy trình làm việc trong môi trường phát hành công khai cần đọc nhanh.

Ghi COG vào Cloud Storage

Để lưu kết quả tính toán của Earth Engine dưới dạng COG trong vùng lưu trữ Cloud Storage, hãy sử dụng hàm xuất hàng loạt Export.image.toCloudStorage (xem phần xuất hình ảnh) và đặt tham số cloudOptimized thành true trong formatOptions. Thao tác này sẽ yêu cầu Earth Engine biên dịch hình ảnh và ghi trực tiếp vào bộ chứa GCS dưới dạng COG hoàn toàn tuân thủ.

Các vị trí được hỗ trợ của bộ chứa Cloud Storage

Để Earth Engine truy cập vào bộ chứa Cloud Storage của bạn, bộ chứa đó phải nằm ở một trong các khu vực hoặc nhiều khu vực trung tâm dữ liệu sau:

  • us nhiều khu vực
  • Mọi khu vực kép ở Hoa Kỳ có chứa us-central1
  • Vùng us-central1

Nếu bạn đặt nhóm của mình ở bất kỳ trung tâm dữ liệu khu vực nào khác, Earth Engine sẽ từ chối các yêu cầu đăng ký và đọc. Earth Engine chỉ truy cập vào các tệp COG được lưu trữ trong bộ chứa Google Cloud Storage. Không hỗ trợ các nhà cung cấp bộ nhớ trên đám mây bên ngoài và URL loại HTTP chung.

Những điều cần cân nhắc về chi phí và các lớp lưu trữ

Khi phân tích các tài sản COG đã đăng ký, các lượt đọc từ Earth Engine sẽ không phát sinh phí truy xuất dữ liệu hoặc phí thao tác đọc Cloud Storage trên dự án Google Cloud của bạn.

Cloud Storage tính phí chủ yếu cho dung lượng lưu trữ dữ liệu tĩnh (GB/tháng) tiêu chuẩn hằng tháng và mọi khoản phí chuyển dữ liệu của ứng dụng bên ngoài hoặc phí lưu lượng truy cập mạng ra ngoài (tuỳ thuộc vào vị trí bộ chứa và cấu hình mạng của ứng dụng).

Đề xuất về lớp lưu trữ

  • Bộ nhớ Standard (nên dùng): Bộ nhớ Standard phù hợp nhất với các quy trình làm việc đang hoạt động trên Earth Engine. Vì không có quy tắc về thời gian lưu trữ tối thiểu, nên bạn có thể tự do ghi đè, cập nhật hoặc xoá các COG tạm thời mà không phải chịu hình phạt xoá sớm. Hơn nữa, nếu bạn hoặc cộng tác viên của bạn truy cập vào bộ chứa bằng phần mềm GIS dành cho máy tính, tập lệnh GDAL hoặc sổ tay học máy bên ngoài Earth Engine, thì bộ nhớ Tiêu chuẩn sẽ không tính thêm phí truy xuất bán lẻ.
  • Bộ nhớ Nearline, Coldline và Archive: Tất cả các lớp Cloud Storage đều cung cấp cùng một mức độ truy cập và thông lượng có độ trễ thấp như bộ nhớ Standard, vì vậy, sẽ không có mức phạt hiệu suất đọc khi sử dụng các cấp bộ nhớ lạnh hơn trong Earth Engine. Mặc dù các phép tính của Earth Engine cũng có thể đọc các cấp này mà không cần đánh giá phí truy xuất dữ liệu bán lẻ, nhưng các quy tắc bán lẻ của Cloud Storage sẽ thực thi thời gian lưu trữ tối thiểu nghiêm ngặt (30 ngày đối với Nearline, 90 ngày đối với Coldline, 365 ngày đối với Archive). Việc sửa đổi hoặc xoá tệp trước thời hạn tối thiểu sẽ kích hoạt phụ phí xoá sớm. Ngoài ra, việc truy cập vào các đối tượng không hoạt động từ bất kỳ công cụ ứng dụng bên ngoài nào sẽ phải chịu thêm phí truy xuất dữ liệu tốn kém.

Để biết thông tin chi tiết về giá bán lẻ và chính sách về thời hạn tối thiểu, hãy xem Hướng dẫn về giá của Google Cloud Storage.

Quy trình làm việc cấp cao

Quy trình làm việc thông thường để sử dụng COG trong Earth Engine bao gồm các bước sau:

Để nhập dữ liệu bên ngoài:

  • Tối ưu hoá: Chuyển đổi tệp đường quét sang định dạng COG bằng các công cụ bên ngoài (chẳng hạn như GDAL, tập lệnh máy trạm cục bộ hoặc quy trình xử lý trên đám mây).
  • Tải lên: Tải COG lên một bộ chứa Cloud Storage được hỗ trợ nằm trong us-central1 hoặc một khu vực gồm nhiều vùng ở Hoa Kỳ.
  • Quyền: Đảm bảo bạn và mọi cộng tác viên của dự án đều có quyền đọc các tệp trong Cloud Storage (xem phần quyền COG).
  • Đăng ký: Sử dụng thư viện ứng dụng Python, công cụ dòng lệnh earthengine hoặc API REST để đăng ký COG dưới dạng tài sản Earth Engine (xem phần Đăng ký COG).

Đối với kết quả xuất:

  • Xuất: Chạy một quy trình xuất hàng loạt từ Earth Engine sang Cloud Storage với cloudOptimized được đặt thành true (xem phần xuất hình ảnh).
  • Đăng ký (không bắt buộc): Đăng ký COG đã xuất trở lại Earth Engine dưới dạng một tài sản mới để phân tích thêm (xem phần Đăng ký COG).

Bạn đã sẵn sàng bắt đầu? Làm theo hướng dẫn đăng ký COG chi tiết để đăng ký tài sản đầu tiên.