Realm (databáze) - Realm (database)
Oblast je otevřený zdroj objektová databáze systém řízení, původně pro mobilní operační systémy (Android /iOS )[1] ale také k dispozici pro platformy jako Xamarin,[2] Reagovat nativní,[3] a další,[4][5] včetně desktopových aplikací (Okna[6]) a je licencován pod Licence Apache.
V září 2016 Realm Mobile Platform bylo oznámeno, následované prvním stabilním vydáním v lednu 2017. Umožňuje obousměrnou synchronizaci mezi Realm Object Server[7][8] a databáze na straně klienta, které patří danému přihlášenému uživateli. Vývojářská i komerční edice[9] byl propuštěn spolu s obchodní licencí[10] pro integraci s jinými systémy pro správu databází, jako je PostgreSQL.[11][12]
24. dubna 2019 společnost Realm oznámila, že uzavřela definitivní dohodu, kterou má získat MongoDB.[13]
Dějiny
Vývoj Realmu začal na konci roku 2010 Alexander Stigsen spolu s Bjarne Christiansen,[14] pod názvem TightDB. Společnost začala v roce 2011 v Y Kombinátor.[15]Byl propagován jako NoSQL s konfigurovatelnou odolností a schopností sdílet stejné skupiny dat napříč více procesy, ale také dokonce s více zařízeními a klastry.
TightDB přejmenoval svůj produkt na Realm v září 2014 a vydal jej pro veřejné testování. V březnu 2015 bylo zveřejněno financování ve výši přibližně 20 milionů USD.[15][16]
Realm byl zmíněn v některých obchodní tisk,[17][18] včetně jiných společností, jako je IBM.[19]
Realm oznámil verzi 1.0 v červnu 2016 a vydal platformu pro obousměrnou synchronizaci v reálném čase (beta v září 2016, vydání v roce 2017 v lednu),[20] a za předpokladu, že Node.js SDK pro aplikace na straně serveru.[21]
V květnu 2017 UWP podpora byla oznámena.
Funkce
Nejpozoruhodnější rysy Realmu jsou následující:
- Protože Realm je úložiště objektů, je jeho specifický jazyk API mapujte objekty zadané přímo do souboru Realm - proto se jako definice schématu používají třídy.
- Vztahy mezi objekty jsou povoleny pomocí „odkazů“. Každý „odkaz“ vytváří „zpětný odkaz“ jako inverzní vztah k jakýmkoli objektům, které odkazují na aktuální objekt.
- Výsledky dotazu vrácené Realm jsou lokální zobrazení vláken pro aktuální "verzi databáze" (protože Realm zpracovává souběžnost s MVCC architektura ) a tyto pohledy se „automaticky aktualizují“, když dojde k potvrzení transakce jakékoli vlákno, pokud je Realm schopen aktualizovat verzi instance (což je možné u vláken, která jsou schopna přijímat oznámení o změnách). Když k tomu dojde, Realm zavolá posluchače změn, které se přidají k výsledkům dotazu (pokud se změnily).
- Každé vlákno-lokální zobrazení vrací objekty proxy, které čtou pouze z / zapisují do databáze, když se volá metoda přístupového objektu, což znamená, že veškerý přístup k databázi je líný. Zápisy jsou povoleny pouze během transakce zápisu.
- Protože každý výsledek dotazu a každý objekt proxy je pohled na podkladová data, projeví se každá změna provedená v databázi ve všech objektech, které odkazují na stejná data. Realm toto chování obecně nazývá „architektura nulového kopírování“ (spolu s dříve zmíněným přístupem k líně načítaným datům).
Podpora programovacího jazyka
- Cíl-C
- Rychlý
- Jáva (Android pouze)
- Kotlin (Android pouze)
- C# (Xamarin, Win32, UWP )
- JavaScript (Node.js, Reagovat nativní )
Reference
- ^ „Realm: Object Centric Today Database for Mobile Applications“. Citováno 2017-04-22.
- ^ „Realm mobile database platform now has support for Microsoft's Xamarin“. Gooroo. Citováno 2017-04-22.
- ^ „Realm: Introducing Realm React Native“. Citováno 2017-04-22.
- ^ „Realm: Microsoft Xamarin 1.0, Azure, Windows Desktop“. Citováno 2017-04-22.
- ^ „Realm Mobile Platform Supports Xamarin, Microsoft Azure - ADTmag“. ADTmag. Citováno 2017-04-22.
- ^ „Používání mobilní databáze Realm v převedené desktopové aplikaci s Desktop Bridge“. Tým aplikace Consult. Citováno 2017-04-22.
- ^ Kepes, Ben. „Realm rozšiřuje svoji nabídku mobilních databází o Object Server“. Síťový svět. Citováno 2017-04-22.
- ^ „Realm rozšiřuje svoji nabídku mobilních databází o Object Server | Blog o rozmanitosti - SaaS, cloud a obchodní strategie“. www.diversity.net.nz. Citováno 2017-04-22.
- ^ „Realm zahajuje komerční vydání své mobilní databáze - SiliconANGLE“. SiliconANGLE. 2017-01-19. Citováno 2017-04-22.
- ^ „Realm Open Sources Mobile Database, Grows it into Enterprise Platform - ADTmag“. ADTmag. Citováno 2017-04-22.
- ^ „Realm umožňuje PostgreSQL v reálném čase s novým konektorem“. Trendy a aplikace databáze. 2017-03-21. Citováno 2017-04-22.
- ^ „Realm's Mobile Development Platform Links to PostgreSQL to Tie into Enterprise Data - The New Stack“. The New Stack. 2017-03-21. Citováno 2017-04-22.
- ^ „MongoDB získává říši - budoucnost je jasná“. realm.io. Citováno 2019-04-25.
- ^ „Spuštění, které před 9 měsíci spustili tito bývalí inženýři společnosti Nokia, má absolutně výjimečnou povahu“. Business Insider. Citováno 2017-04-22.
- ^ A b Ron Miller (24. března 2015). „Realm může rozšířit svůj dosah investicí 20 milionů $“. Tech Crunch. Citováno 21. května 2017.
- ^ „Formulář D: Oznámení o osvobození nabídky cenných papírů“. 30. března 2015. Citováno 21. května 2017.
- ^ Krill, Paul. „Realm revives object database for mobile dev“. InfoWorld. Citováno 2017-04-22.
- ^ Thomas Claburn (29. září 2016). „Realm - databáze, o které jste možná ještě neslyšeli, ale vývojáři aplikací mají - propaguje zamračenou platformu“. Registrace. Citováno 21. května 2017.
- ^ „Vizuální rozpoznávání mobilní aplikace s Watson, Realm a Swift - IBM OpenTech“. IBM OpenTech. 2016-12-12. Citováno 2017-04-22.
- ^ „Realm: Představujeme Realm Mobile Platform“. Citováno 2017-04-22.
- ^ „Realm Releases Object Database for Node.js“. InfoQ. Citováno 2017-04-22.