2010-03-13 2 views
4

the bulkloader.py utility을 사용하면 애플리케이션의 Datastore에서 모든 데이터를 다운로드 할 수 있습니다.App Engine 데이터 덤프와 작동하는 도구

그러나 데이터가 저장되는 방법은 분명하지 않습니다. 그것의 모습에서, 당신은 하나의 테이블에서 바이너리 형식의 모든 데이터와 SQLite는 파일을 가져 :이 데이터로 작업 할 수있는 도구

sqlite> .tables 
bulkloader_database_signature result 

sqlite> .schema result 
CREATE TABLE result (
    id BLOB primary key, 
    value BLOB not null, 
    sort_key BLOB); 

이 있습니까?

+0

당신이 정확하게 데이터에 대해 수행 할 않았다? –

+0

@ 닉 : 읽고, 보고서를 작성하십시오. 데이터 수집. – Thilo

답변

1

좋아, 아직 도구가 없습니다. 지금까지 찾은 것을 공유하기 만하면됩니다.

열 값에 저장된 이진 데이터는 Google 프로토콜 버퍼 형식입니다. 모든 행은 하나의 엔티티를 나타냅니다.

자바 SDK를 사용하여

, 당신은 데이터를 디코딩 할 수 있습니다

OnestoreEntity.EntityProto m = new OnestoreEntity.EntityProto(); 
m.parseFrom(data); 
Entity entity = EntityTranslator.createFromPb(m); 

System.out.println(entity.getAppId()); 
System.out.println(entity.getKind()); 
System.out.println(entity.getKey()); 

// the properties (a Map) 
System.out.println(entity.getProperties());