2015-05-16 30 views
18

Używam przez jakiś czas ActiveAndroid, a ostatnio usłyszałem o Realm, co jest kolejnym dobrym rozwiązaniem. Zastanawiałem się nad zmianą mojej aplikacji na Realm, ale zanim to zrobiłem, sprawdzałem, czy ktoś dokonał porównania wydajności między tymi dwoma. Znalazłem pewne porównanie na stronie internetowej, ale te były z ORMLite i SQLite.Android - Który używać Active Android lub Realm

Wszelkie sugestie są mile widziane.

+0

To samo pytanie. Jeśli masz odpowiedź, czy możesz to powiedzieć? –

+0

Szukasz tylko porównania wydajności? Lub szersze porównanie (jak sugeruje tytuł)? –

+0

@VickyChijwani: zarówno – mudit

Odpowiedz

0

As Realm to mobilna baza danych: zamiennik danych podstawowych SQLite &. Aby uzyskać więcej informacji, sprawdź numer performance comparison.

Ale trzeba rozważyć Innym ważnym czynnikiem, który jest https://realm.io jest obecnie wsparcie Android i iOS, podczas gdy inne są Sqllite oparty tak wygenerowanego DB można używać nawet w telefonach z systemem Windows, Tizen itp

Mam nadzieję, że będzie być pomocnym w podjęciu decyzji.

+0

nie porównuję SQLIte i Realm .. chcę porównać aktywny Android i dziedzinę. Również link, który wysłałeś, dotyczy Realm vs danych podstawowych (więc bezużyteczny). – mudit

+1

@mudit rzeczą jest ActiveAndroid jest oparta na SQLLite ORM, zgodnie z instrukcją "ActiveAndroid pozwala zapisywać i pobierać rekordy bazy danych SQLite bez pisania pojedynczej instrukcji SQL". To nawet rzuca wyjątek o nazwie SQLiteException w niektórych przypadkach, aby uzyskać więcej informacji, proszę spojrzeć na @ https://guides.codepath.com/android/ActiveAndroid-Guide#overview. Mam nadzieję, że teraz się wyjaśni. – Shailendra

2

Aktywny Android był aktualizowany dwa lata temu, a Realm to żywy projekt.

Aktywny Android to po prostu opakowanie bazy danych SQLite. Realm oferuje więcej funkcji, takich jak automatyczne odświeżanie wyników zapytań, tworzenie obiektów z JSON lub powiadomienia o zmianie bazy danych.

Myślę, że wydajność nie jest istotna, chyba że wstawia się miliony rekordów, ale jeśli to prawda, lepiej użyj SQL bezpośrednio.

7

Realm nie mogą być bezpośrednio porównywane do ActiveAndroid jako Realm to mobilna baza danych z własnym silnikiem trwałości zbudowany na prostotę i szybkość, aby zastąpić tradycyjne SQLite podczas ActiveAndroid jest ORM dla SQLite. Kiedy więc przejdziesz do Królestwa, nie będziesz już używać tradycyjnego SQLite.

Tak, królestwo jest szybkie (zgodnie z moim doświadczeniem i testami porównawczymi), ale różnica w porównaniu z tradycyjnym SQLite nie jest zauważalna, chyba że twoja aplikacja korzysta z transakcji bazodanowych lub przeszukuje mocno, wtedy proponuję użyć dziedziny. Jeśli nie, to działający już ActiveAndroid będzie dobrze.

Mimo, że sugeruję przy tworzeniu nowego projektu/aplikacji, spróbuj zapoznać się z Realmem, aby po znalezieniu aplikacji korzystającej z bazy danych naprawdę doceniłbyś prędkość Królestwa.

1

Lepiej używać sfery. W moim ostatnim projekcie użyłem go i działa znacznie lepiej.

W GUI, jeśli chcesz wyświetlić listę użytkowników, którzy mają mniej niż 25 lat. Teraz pobierasz z internetu z wątku roboczego, ale kiedy automatycznie zapiszesz dane w krainie, wszystkie dane zostaną zaktualizowane. Nie ma potrzeby wyszukiwania jeszcze raz.

To znacznie szybciej. I łatwy w użyciu.

1

Realm to rozwiązanie wieloplatformowe dostępne dla systemów iOS i Android (co jest świetne, gdy kierujesz na oba).

+11

to powinien być komentarz –

1

Hi mudit może być zbyt późna, ale pomaga innym. My Realm to najlepsza opcja.

Realm

Realm to mobilna baza danych i zamiennikiem dla SQLite. Chociaż jest to baza danych OO, ma pewne różnice z innymi bazami danych. Realm nie używa SQLite jako swojego silnika. Zamiast tego ma własny rdzeń C++ i ma na celu zapewnienie mobilnej pierwszej alternatywy dla SQLite. Realm przechowuje dane w uniwersalnym formacie opartym na tabelach przez rdzeń C++. Dzięki temu Realm może zezwolić na dostęp do danych z wielu języków, a także szereg zapytań ad hoc.

Advantage na:

  • szybciej niż SQLite (do 10x prędkość ponad surowego SQLite dla normalnych operacji)

  • łatwy w użyciu

  • obiektu konwersję obsługiwane przez ty

  • wygodny do tworzenia i przechowywania danych w locie

użyłem mojego projektu to ponad 10 x prędkość porównać do SQLite. Bo dodano 100000 danych (wiersz) w pętli Sqlite się 18min ale dziedziny tylko podjąć 20 sek.

Powiązane problemy