hello · 2019-05-21 · android ios windows realm api. select * from dogs where age

42
hello

Upload: others

Post on 17-Jun-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

hello

Page 2: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

Artur DrobinskiyDP Labsarchitect

Page 3: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

Database

Page 4: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

Mobile Database

Page 5: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age
Page 6: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age
Page 7: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

What is Realm?

Page 8: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

Benchmark

Page 9: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age
Page 10: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age
Page 11: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age
Page 12: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age
Page 13: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age
Page 14: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

Realm Core

Android iOS Windows

Realm API

Page 15: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

SELECT * FROM Dogs WHEREAge <= 2

var pups = realm.All<Dog>()

.Where(d => d.Age <= 2);

Page 16: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

SELECT * FROM Dogs WHEREAge <= 2

RealmResults<Dog> pups =

realm.where(Dog.class)

.lessThan("age", 2)

.findAll();

Page 17: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

SELECT * FROM Dogs

JOIN Owners ON

Dogs.OwnerId = Owners.Id

WHERE Owner.Id = 1

var dogs = realm.Find<Owner>(1).Dogs;

RealmResults<Dog> persons =

realm.where(Dog.class)

.equalTo("owner.id", 1)

.findAll();

Page 18: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

Sync

Page 19: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age
Page 20: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

DEMO? ☺

Page 21: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age
Page 22: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age
Page 23: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age
Page 24: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age
Page 25: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age
Page 26: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

• Data is not persisted

• Only 10 MB cache

• OMG NOSQL

Page 27: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age
Page 28: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

• Microsoft

• AZURE

• SQLite + strange security

Page 29: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age
Page 30: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age
Page 31: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age
Page 32: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

What is server-side data access?

Page 33: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age
Page 34: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

SELECT * FROM [Messages] WHERE

[UserId] = 'Vasya' AND [Date] = '2017-05-20'

var database = FindFile("VasyaPuprkin.realm");

var messages = database.Messages.Where(x => x.Date == "2017-05-20");

Page 35: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

SELECT * FROM [Messages] WHERE

[Date] = '2017-05-20'

foreach (var user in users){

var database = FindFile(user + ".realm");var messages = database.Messages

.Where(x =>x.Date == "2017-05-20");}

Page 36: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

$1500 per month

Page 37: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

$1500 per month

Page 38: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age
Page 39: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

SQL ServerEntity FrameworkSignalR

Realm.Xamarin

Page 40: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

DEMO? ☺

Page 41: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

Go visit http://realmius.rubius.com

Page 42: hello · 2019-05-21 · Android iOS Windows Realm API. SELECT * FROM Dogs WHERE Age

Q&A