O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

How-To Couchbase Mobile Webinar Series: Couchbase Mobile in Healthcare

939 visualizações

Publicada em

In this webinar we will talk about using Couchbase Mobile to address common use cases for healthcare. We'll cover using Couchbase Mobile to enable healthcare applications that improve access to care, empower clinicians with information at their fingertips, and more.

Publicada em: Software
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

How-To Couchbase Mobile Webinar Series: Couchbase Mobile in Healthcare

  1. 1. Couchbase Mobile in Healthcare Zack Gramana
  2. 2. About Me Zack Gramana Senior Mobile Software Engineer @zgramana
  3. 3. Agenda ▸About Couchbase ▸Couchbase Mobile Overview ▸Healthcare Challenges ▸Solutions
  4. 4. Who is Couchbase?
  5. 5. Couchbase at a Glance Fastest growing NoSQL database company 4x growth in 2013 Mission critical use at Internet scale 400+ customers; 10,000+ paid production nodes deployed; worldwide customer base Leader in scalability & performance Easily & reliable scale your app; Get consistent low latency & high throughput Worldwide operations with 250+ employees 100+ in engineering; Offices in US, UK, India, Japan, China (soon)
  6. 6. Enterprise Customers > 400 customers; > 10,000 production nodes deployed Services and Consumer Enterprises
  7. 7. What is the business problem?
  8. 8. Today’s Mobile Apps 9 Try again later. No Internet please wait…
  9. 9. How does this affect what people think about your app? 10 Doesn’t work a lot of the time and when it does it’s slow.
  10. 10. How does this affect application uninstall rates? 11 0% 20% 40% 60% 80% 100% UninstallRate Freezing Crashing Slow Responsiveness Source: uSamp
  11. 11. Data Location is the Problem 12
  12. 12. Local Data + Sync is the Solution 13
  13. 13. What does this mean for your apps? 14 Always work both online & offline Always be blazing fast Built with orders of magnitude less code Users will absolutely love your apps
  14. 14. What is Couchbase Mobile?
  15. 15. Couchbase Lite Sync Gateway
  16. 16. Couchbase Lite NoSQL mobile database. Runs in-process. Small footprint.
  17. 17. Document-Oriented Database o Key-value collections, with versioning o Schemaless o Code fast. Run fast
  18. 18. { "session": { "Id": "session-1011", "Location": "TBA", "SpeakerIds": [ "speaker-zack-gramana" ], "Time": "2014-10-06T15:20:00", "Title": "Building the Mobile Apps with Couchbase Mobile", "Track": "Mobile" }, "type": "session" }
  19. 19. o Build indexes in your native language o Results are persisted for fast querying o Just set breakpoints to debug! MapReduce Indexes
  20. 20. o Listen/Observe for changes. o Databases, queries, replications—even documents. o Cuts down done on a ton of cruft code. Change Notifications
  21. 21. doc.Change += (sender, e) => { if (e.Change.IsConflict) { // well then resolve it! } };
  22. 22. Sync o Full multi-master replication. o Continuous or ad-hoc in either direction. o Change notifications & conflict detection.
  23. 23. Cocoapods Maven Central Nuget Github
  24. 24. o Authentication o Authorization o Data orchestration Sync Gateway
  25. 25. 29
  26. 26. o requireUser (username) o requireRole (rolename) o requireAccess (channels) Sync Function
  27. 27. o channel (name) o access (username, channelname) o role (username, rolename) Sync Function
  28. 28. Healthcare Industry Challenges
  29. 29. Improving Access to Care
  30. 30. Empowering Clinicians
  31. 31. Solutions
  32. 32. Enhancing the patient experience Enable easy patient/caregiver collaboration
  33. 33. Patient/Caregiver Collaboration function(doc, oldDoc) { if (doc.type == "patient-data") { // give patient access to their own EHR access(doc.patientId, "patient-data-" + doc.patientId); // add doc to patient’s EHR channel channel("patient-record-" + doc.patientId); } if (doc.type == "patient-info-exchange") { // grant caregiver access to patient’s EHR channel access(doc.practiceId, "patient-record-" + doc.patientId); // grant patient access to their practioner’s careplan for them access(doc.patientId, doc.practiceId +”-careplan-" + doc.patientId); }
  34. 34. Secure Contact Sharing { "first": "Zack", "last": "Gramana", "patientId": "11111111-0000-0000-0000-000000000000", "type": "patient-info-exchange", "practiceId": "22222222-0000-0000-0000-000000000000" }
  35. 35. Manage Data Consistency Star Tiered Deployment Topologies
  36. 36. Star Topology
  37. 37. Tiered Topology
  38. 38. Custom Authentication Integration Flow 1 3
  39. 39. Sync Gateway User Account Creation POST /couchbase-connect/_user HTTP/1.1 { "name": "{FROM_LOCALDOC}", "password": "{FROM_OS_CRED_STORE}", "disabled": false, "admin_channels": [ "public" ] }
  40. 40. Next Steps
  41. 41. Couchbase Developer Portal developer.couchbase.com/mobile
  42. 42. Forums forums.couchbase.com
  43. 43. Mailing List groups.google.com/d/forum/mobile- couchbase
  44. 44. Contact Me zack@couchbase.com (email) @zgramana (twitter)
  45. 45. Questions and Answers

×