2012-06-26 18 views
5

Tôi đang xem xét việc sử dụng Google App Engine cho một dự án và muốn đảm bảo rằng tôi có cách xuất tất cả dữ liệu của mình nếu tôi quyết định rời GAE (hoặc GAE tắt).Tôi làm cách nào để xuất dữ liệu từ kho dữ liệu bản sao cao của Máy ứng dụng của Google?

Mọi thứ tôi tìm kiếm về xuất dữ liệu từ các điểm GAE sang https://developers.google.com/appengine/docs/python/tools/uploadingdata. Tuy nhiên, trang đó chứa ghi chú này:

Lưu ý: Tài liệu này áp dụng cho các ứng dụng sử dụng trụ sở chính/nô lệ . Nếu ứng dụng của bạn sử dụng kho dữ liệu bản sao cao, thì có thể là để sao chép dữ liệu từ ứng dụng, nhưng hiện tại Google không hỗ trợ trường hợp sử dụng này. Nếu bạn cố gắng sao chép từ kho dữ liệu cao cấp , bạn sẽ thấy lỗi high_replication_warning trong Bảng điều khiển dành cho quản trị viên và dữ liệu đã tải xuống có thể không bao gồm các mục được lưu gần đây .

Vấn đề là gần đây kho dữ liệu chính/nô lệ gần đây đã không còn được dùng để ủng hộ kho dữ liệu bản sao cao. Tôi hiểu rằng kho dữ liệu chính/nô lệ vẫn được hỗ trợ trong một thời gian ngắn, nhưng tôi không cảm thấy thoải mái khi sử dụng một cái gì đó đã chính thức không được chấp nhận và đang trên đường ra. Vì vậy, để lại cho tôi kho dữ liệu sao chép cao và cách duy nhất để xuất dữ liệu là phương thức trên không được hỗ trợ chính thức (và do đó không cung cấp cho tôi bảo đảm rằng tôi có thể lấy dữ liệu của mình).

Có cách nào khác (được hỗ trợ chính thức) để xuất dữ liệu từ kho dữ liệu bản sao cao không? Tôi không cảm thấy thoải mái khi sử dụng Google App Engine nếu điều đó có nghĩa là dữ liệu của tôi có thể bị khóa trong đó mãi mãi.

Trả lời

0

Bạn cần định cấu hình nội trang dựng sẵn có tên là remote_api. This article có tất cả thông tin và hướng dẫn bạn cần để có thể tải xuống tất cả dữ liệu của bạn ngay hôm nay và trong tương lai.

+2

Vấn đề là như tôi đã đề cập, phương pháp đó không được hỗ trợ chính thức cho kho dữ liệu bản sao cao, đó là những gì tôi sẽ sử dụng. –

+2

Tôi tin rằng nó hoạt động cho porpuse của bạn. HRD là một hệ thống phân tán, đó là lý do tại sao nếu bạn muốn tải xuống dữ liệu của mình, đó có thể không phải là bản sao mới. Nhưng nếu bạn có kế hoạch di chuyển, có thể bạn đã vô hiệu hóa việc viết trước đó. Vì vậy, bạn sẽ có một thời gian an toàn để cho HRD sao chép tất cả các thay đổi. –

2

Tôi mất khá nhiều thời gian để thiết lập tải xuống dữ liệu từ GAE vì tài liệu không rõ ràng như trước.

Nếu bạn trích xuất dữ liệu từ máy chủ Unix, bạn có thể sử dụng lại tập lệnh bên dưới.

Ngoài ra, nếu bạn không cung cấp thông số "config_file", nó sẽ trích xuất tất cả dữ liệu của bạn cho loại này nhưng ở định dạng độc quyền chỉ có thể được sử dụng để khôi phục dữ liệu sau đó.

#!/bin/sh 
#------------------------------------------------------------------ 
#-- Param 1 : Namespace 
#-- Param 2 : Kind (table id) 
#-- Param 3 : Directory in which the csv file should be stored 
#-- Param 4 : output file name 
#------------------------------------------------------------------ 
appcfg.py download_data --secure --email=$BACKUP_USERID --  config_file=configClientExtract.yml --filename=$3/$4.csv --kind=$2 --url=$BACKUP_WEBSITE/remote_api --namespace=$1 --passin <<-EOF $BACKUP_PASSWORD EOF 
+0

configClientExtract.yml (--config_file) và --url là gì? Có trang trợ giúp không mô tả tệp cấu hình hoặc điểm cuối url chấp nhận –

1

Kho dữ liệu công cụ hiện tại của ứng dụng cũng hỗ trợ tùy chọn khác. Dự phòng sao lưu dữ liệu có thể được sử dụng để sao chép dữ liệu được chọn vào kho lưu trữ blob hoặc lưu trữ đám mây của google. Chức năng này có sẵn trong khu vực quản trị kho dữ liệu trong bảng điều khiển công cụ ứng dụng. Nếu được yêu cầu, dữ liệu sao lưu có thể được tải xuống từ trình xem blob hoặc bộ nhớ trên đám mây. Để thực hiện sao lưu cho kho dữ liệu sao chép cao, chúng tôi khuyên rằng việc ghi dữ liệu được vô hiệu hóa trước khi thực hiện sao lưu.

Các vấn đề liên quan