ProgramingTip

모바일 앱용 NoSQL?

bestdevel 2020. 11. 28. 10:14
반응형

모바일 앱용 NoSQL?


외장 모바일 애플리케이션 (Android 및 / 또는 iOS) 개발에 사용할 기존의 SQL 데이터베이스 솔루션이 있습니까?


향상된 모바일 앱에 대해 언급 된 NoSQL 백엔드 가 있다고 생각하지 않지만 Couchbase 모바일은 iOS와 Android를 모두 구현 한 훌륭한 NoSQL 데이터베이스입니다.

iOS : http://www.couchbase.com/products-and-services/mobile-couchbase

안드로이드 : https://github.com/couchbase/couchbase-lite-android


leveldb 는 블록의 새로운 아이입니다. BigTable과 매우 유사하지만 스토리 장치입니다. 거의 낫습니다.

엄청나게 빠르며 Xcode에서 바로 빌드됩니다.


모바일 OS를위한 것입니다. 그러나 진지하게, NoSQL은 모든 플랫폼에 이미 포함 된 SQLite 라이브러리를 어떻게 가져 왔 습니까?

  • 단순한 의미론. NoSQL 데이터베이스 에서처럼 SQL에서 키 / 값을 수행하는 것이 자기 소유.
  • 확장 성. 멀티 페타 바이트 지원 전화는 모바일 플랫폼으로 적합하지 않습니다.
  • 사소한 샤딩. 전화 클러스터는 아직 그렇게 인기가 없습니다
  • 작은 구현. 도쿄 내 소스 코드는 4.8MB, SQLite는 4.7MB입니다. 실제 이득은 없습니다 (그리고 이미 존재합니다).

간단히 말해, 원하는 경우 SQLite를 '작은 NoSQL'로 사용할 수 있습니다. 그것도 꽤 빠 사용.


편집 : (2016 년 4 월)

Realm 은 요즘가는 길입니다.


여전히 관심이있는 권한 TokyoCabinet에 대한 다음 두 가지 래퍼를 찾았습니다.

어쨌든 LevelDB가 더 좋다고 생각합니다.


CouchDB 는 동기화 기능으로 인해 모바일 앱용 NoSQL DB로 자주 광고됩니다. 또한 Mobile Couchbase 의 베타 버전도 있습니다.


Android의 경우 다음이 있습니다.

https://github.com/rehacktive/waspdb

현재로서는 알파 단계이지만 귀하의 요청에 맞을 수 있습니다.


SnappyDB 는 안드로이드를위한 아주 좋은 NoSQL 옵션 인 것입니다. SQLite에 대한 읽기 / 쓰기 벤치 마크는 매우 놀랍습니다.


iBoxDB는 Android 용으로 구현 된 Windows Phone 및 NoSQL 데이터베이스입니다. 사용하기 서명 구성이 필요합니다.
자바 안드로이드 https://github.com/iboxdb/forjava
for.net windows phone https://iboxdb.codeplex.com/


Objective-C에서 새로운 것은 SimpleDB입니다. 키 / 값 저장소이며 여기에서 사용할 수 있습니다. http://github.com/AaronBratcher/SimpleDB

JSON을 사용하여 정렬을 수행하고 데이터의 특정 부분을 반환 할 수 있습니다.

특장점

  • 사용하기 매우 쉬움 -SQL이 필요하지 않습니다!
  • 지정된 날짜 이후 항목에 대한 자동 삭제 옵션
  • 상호 작용이 필요하지 않습니다.
  • 모든 메소드는 클래스 수준을 발표합니다.
  • 일반적 안전

API

+(BOOL) hasKey:(NSString*) key inTable:(NSString*) table;
+(NSArray*) keysInTable:(NSString*) table;
+(NSArray*) keysInTable:(NSString*) table orderByJSONValueForKey:(NSString*)jsonOrderKey passingTest:(BOOL (^)(NSString* key, NSString* value, NSDate* dateAdded, NSDate* dateModified));

+(NSString*) valueForKey:(NSString*) key inTable:(NSString*) table;
+(NSDictionary*) dictionaryValueForKey:(NSString*) key inTable:(NSString*) table;
+(id) jsonValueForKey:(NSString*) jsonKey tableKey:(NSString*) key inTable:(NSString*) table;

+(void) setValue:(NSString*) value forKey:(NSString*) key inTable:(NSString*) table;
+(void) setValue:(NSString*) value forKey:(NSString*) key inTable:(NSString*) table autoDeleteAfter:(NSDate*) date;

+(void) deleteForKey:(NSString*) key inTable:(NSString*) table;

+(void) dropTable:(NSString*) table;

+(dbStatus) status;
+(NSString*) guid;

참고 URL : https://stackoverflow.com/questions/5924924/nosql-for-mobile-apps

반응형