1
Announcement: local vendor at Israel via                                           2
When you tweet…             #CouchConf                          3
Stay for the Q&A Session!   Beer.   Wine.   Snacks.   Don’t miss it.                            4
Submit questions for the Q&A session...Email: couchconfisrael@couchbase.comTweet: @couchbase...or write it down and hand i...
Tell Us What You Think!DO THISGET THIS                          6
WiFi is available... Network: exodia Password: 1234567890                        7
8
Couchbase NoSQL Leadership    Leading NoSQL database company    Open Source development & business model    Behind Couchba...
Market Adoption – Customers    Internet Companies                          Enterprises  More than 350 customers -- 5,000 p...
Introduction toCouchbase Server 2.0        Sharon Barr        VP of Engineering                            11
Couchbase Server    NoSQL Document    Database                   2.0                         12
Couchbase Server 2.0             Easy                                    Consistent High           Scalability            ...
Flexible Data Model: Relational vs Document Data Model         C1     C2      C3     C4                                   ...
RDBMS Example: User Profile             User Info                               Address Info     KEY    First    Last    Z...
Document Example: User Profile {     “ID”: 1,     “FIRST”: “Frank”,     “LAST”: “Weigel”,     “ZIP”: “94040”,     “CITY”: ...
Flexible Data Model                         {                             “ID”: 1,                             “FIRST”: “D...
Couchbase Server Features              Built-in clustering – All nodes equal              Data replication with auto-failo...
New in 2.0      JSON support         Indexing and Querying            JSON          JSON JSO             JSON N           ...
Additional Couchbase Server 2.0 Features            Append-only storage layer            Online compaction            Bett...
Couchbase Server 2.0 Architecture    8092           11211                  11210    Couch View     Memcapable 1.0         ...
Couchbase deployment                   Web                 Application                  Couchbase                 Client L...
COUCHBASE OPERATIONS                       24
Single node - Couchbase Write Operation                                                    2                              ...
Update Operation                                                     2                                            Doc 1’  ...
Cache Eviction                                                                     2                                      ...
Read Operation                                                    2                                            Doc 1      ...
Cache Miss                                                                     2                                          ...
Partitioning The Data – vbucket (internal partitions) map                                                            30
Cluster wide - Basic Operation                  APP SERVER 1                               APP SERVER 2            COUCHBA...
Cluster wide - Add Nodes to Cluster                       APP SERVER 1                                   APP SERVER 2     ...
Cluster wide - Fail Over Node                         APP SERVER 1                                 APP SERVER 2           ...
DEMO TIME            34
Indexing and Querying – The basics • Define materialized views on JSON documents and   then query across the data set • Us...
Eventually indexed Views – Data flow                                                               2                      ...
Cluster wide - Indexing and Querying                  APP SERVER 1                                APP SERVER 2            ...
Cross Data Center Replication – The basics• Replicate your Couchbase data across clusters• Clusters may be spread across g...
Cross data center replication – Data flow                                                   2                             ...
Cluster wide - XDCR      SERVER 1                SERVER 2                            SERVER 3                 ACTIVE      ...
DEMO TIME            41
Demo: The next big social game  3 Objects (documents) within game:       • Players       • Monsters       • Items  Gamepla...
Player Document  {      "jsonType": "player",      "uuid": "35767d02-a958-4b83-8179-616816692de1",      "name": "Keith4540...
Item Document {                                      Item ID      "jsonType": "item",      "name": "Katana_e5890c94-11c6-6...
Monster Document {                                      Monster ID      "jsonType": "monster",      "name": "Bauchan9932",...
GAME ON!           46
Full Text Search Integration• Elastic Search is good for ad-hoc queries and faceted browsing• Couchbase adapter uses XDCR ...
Full Text Search                                         Application Server                                  Couchbase SDK...
Couchbase SDKsJava SDK             User Code.Net SDK            Java client API                                          C...
QUESTIONS?             50 5
THANK YOU          COUCHBASE  SIMPLE, FAST, ELASTIC NOSQLsharon@couchbase.com@sharonyb                                51
Upcoming SlideShare
Loading in...5
×

CouchConf Israel 2013_Couchbase Tour

625

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
625
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Veryexcited to be here for our second annual conference, this time we have a crew of 5 people coming from our HQ at Mountain view, with an aggregate vocabulary of 5 Hebrew words including Shalom, boker tov and todaraba, so I’ll say one sentence in Hebrew – so let me say one sentence in hebrew – they are great guys, and everyone in the company whom I ask if he wants to come here, response with “just say when”.So back to english:I see many familiar faces of users, customers and partners, but as important I see many new faces, which is a reflection of how fast the Israeli community react to nosql and disruptive technologies like Couchbase.I am impressed by how far and how fast the community at Israel evolved since our first meetup here a little over a year ago at Mediamind.Our first conference was a little bit over a year ago, also with Mediamind doing our customer presentation, and 6 months ago we had a joint meetup with rocket play – a gaming customer. this conference we are excited to have 3 different external presentations:Ira Holtzer – PlaytikaCTO (acquired by Caesars Entertainment) and YanivShalev – run R&D for Convertro at Israel will talk about their use casesUri Cohen – VP product, Gigaspaces will talk about the cloudify integration.Couchbase is commited to it’s effort at Israel and we plan to send our CTO, Damien Catz for the devcon event on February and a devday and continue the activity and investment here.A little bit of house keeping before I start the session about 2.0, We have lots of interesting sessions today,During lunch we’ll have a lunch and learn session where you can learn about..And the Q&A session at the end will be accompanies by wine, beer snacks, you can submit questions Email: couchconfisrael@couchbase.comTweet: @couchbaseYou can also Tweet about the conference and during the conference at #CouchConfNetwork: exodiaPassword: 1234567890There is a Lounge room where Couchbase and Zaponet team will hang out and answer questions, meet the community. Let me tell you a bit about the Couchbase,I am Sharon, I run engineering for the past 2.5 years and now helping developing new markets from the technical side of the world.
  • -we’ll be showcasing 8 apps running Couchbase Server (plus you can score more drink tickets by playing the games)-we’re also having an after-after party. Find me towards the end of the party here and we’ll head over to Harrington’s bar
  • Veryexcited to be here for our second annual conference, this time we have a crew of 5 people coming from our HQ at Mountain view, with an aggregate vocabulary of 5 Hebrew words including Shalom, boker tov and todaraba, so I’ll say one sentence in Hebrew – so let me say one sentence in hebrew – they are great guys, and everyone in the company whom I ask if he wants to come here, response with “just say when”.So back to english:I see many familiar faces of users, customers and partners, but as important I see many new faces, which is a reflection of how fast the Israeli community react to nosql and disruptive technologies like Couchbase.I am impressed by how far and how fast the community at Israel evolved since our first meetup here a little over a year ago at Mediamind.Our first conference was a little bit over a year ago, also with Mediamind doing our customer presentation, and 6 months ago we had a joint meetup with rocket play – a gaming customer. this conference we are excited to have 3 different external presentations:Ira Holtzer – PlaytikaCTO (acquired by Caesars Entertainment) and YanivShalev – run R&D for Convertro at Israel will talk about their use casesUri Cohen – VP product, Gigaspaces will talk about the cloudify integration.Couchbase is commited to it’s effort at Israel and we plan to send our CTO, Damien Catz for the devcon event on February and a devday and continue the activity and investment here.A little bit of house keeping before I start the session about 2.0, We have lots of interesting sessions today,During lunch we’ll have a lunch and learn session where you can learn about..And the Q&A session at the end will be accompanies by wine, beer snacks, you can submit questions Email: couchconfisrael@couchbase.comTweet: @couchbaseYou can also Tweet about the conference and during the conference at #CouchConfNetwork: exodiaPassword: 1234567890There is a Lounge room where Couchbase and Zaponet team will hang out and answer questions, meet the community. Let me tell you a bit about the Couchbase,I am Sharon, I run engineering for the past 2.5 years and now helping developing new markets from the technical side of the world.
  • Partial listing of companies with paid production deployments – Add roket play!Thousands more using open source
  • Hello everyone, I am diptiborkar, director of product management at couchbase. I manage the product roadmap of couchbase server, our flagship product. And I’m really excited to talk to you about couchbase server 2.0
  • Let me start with the document data model, which is really one of the things that is driving this trend,Most of you are probably familiar with the table layout. A table is defined with a set of column. And each record in the table conforms to the schema. If you wish to capture different data in the future, the table schema must be changed using the ALTER TABLE statement. Typically data is normalized in the 3rd normal form reduce duplication. Large tables are split into smaller tablesusing foreign keys
  • Example. Normalized schema 2 tables Foreign keys (links) connects the two. To get information about a specific error, you will perform and JOIN across the two tables
  • Single doc contains aggregated info that would normallly be distributed across tables. Of course in real use cases it tends to be info spread out over tens, hundresds or even thousands of tables in real world complex systems (like SAP)Example. Normalized schema 2 tables Fk connects the two. To get information about a specific error, you will perform and join across the two tables
  • Rapid app devwithouth the need to perform an expensive alter table operation.
  • All nodes are equal, single node type, easy to scale your cluster. No single point of failoverEvery node manages some active data and some replica data. Data is distributed across the clsuter and hence the load is also uniformly distributed using auto sharding. We have a fixed number of shards that a key get hashed to. 1024 shards, distributed across the cluster. Replication within the cluster for high availability. Number of replicas are configurable with upto 3 replicas. With auto-failiover or manual failover, replica information is immediately promoted to active Add multiple nodes at a time to grow and shrink your cluster.
  • JSON support – natively stored as json, whne you build an app, there is not conversion required. New doc viewing , editing capability. Indexing and querying – look inside your json, build views and query for a key, for ranges or to aggregate data Incremental mapreduce – powers indexing. Build complex views over your data. Great for real-time analytics XDCR – replicate information from one cluster to another cluster
  • All nodes are equal, single node type, easy to scale your cluster. No single point of failoverEvery node manages some active data and some replica data. Data is distributed across the clsuter and hence the load is also uniformly distributed using auto sharding. We have a fixed number of shards that a key get hashed to. 1024 shards, distributed across the cluster. Replication within the cluster for high availability. Number of replicas are configurable with upto 3 replicas. With auto-failiover or manual failover, replica information is immediately promoted to active Add multiple nodes at a time to grow and shrink your cluster.
  • CAPI interface – basic Couch API of which some goes through the caching layer (CRUD), some goes directly to Couch (Views)
  • CAPI interface – basic Couch API of which some goes through the caching layer (CRUD), some goes directly to Couch (Views)
  • 1.  A set request comes in from the application .2.  Couchbase Server responses back that they key is written3. Couchbase Server then Replicates the data out to memory in the other nodes4. At the same time it is put the data into a write que to be persisted to disk
  • 1.  A set request comes in from the application .2.  Couchbase Server responses back that they key is written3. Couchbase Server then Replicates the data out to memory in the other nodes4. At the same time it is put the data into a write que to be persisted to disk
  • 1.  A set request comes in from the application .2.  Couchbase Server responses back that they key is written3. Couchbase Server then Replicates the data out to memory in the other nodes4. At the same time it is put the data into a write que to be persisted to disk
  • 1.  A set request comes in from the application .2.  Couchbase Server responses back that they key is written3. Couchbase Server then Replicates the data out to memory in the other nodes4. At the same time it is put the data into a write que to be persisted to disk
  • 1.  A set request comes in from the application .2.  Couchbase Server responses back that they key is written3. Couchbase Server then Replicates the data out to memory in the other nodes4. At the same time it is put the data into a write que to be persisted to disk
  • Bulletize the text. Make sure the builds work.
  • Bulletize the text. Make sure build work properly.
  • Bulletize the text. Make sure build work properly.
  • 1.  A set request comes in from the application .2.  Couchbase Server responses back that they key is written3. Couchbase Server then Replicates the data out to memory in the other nodes4. At the same time it is put the data into a write que to be persisted to disk
  • Bulletize the text. Make sure the builds work.
  • Overview of what this feature is
  • 1.  A set request comes in from the application .2.  Couchbase Server responses back that they key is written3. Couchbase Server then Replicates the data out to memory in the other nodes4. At the same time it is put the data into a write que to be persisted to disk
  • Break out to demo here
  • ElasticSearch cluster is fed the documents from the Couchbase Server clusterElastic search indexes the fields(configurable which ones) and by default will only store references back to the document idThe application does document access via the Couchbase Server Cluster and uses The Views and incremental map reduce on the Couchbase cluster.For full text queries it queries the Ealstic search cluster directly (simple Http and JSON interface)The full text queries typically returns the ids of the matching documents.Documents are then retrieved from the Couchbase Server cluster.This way the high throughput document access always comes from high performance Couchbase Cluster.
  • CouchConf Israel 2013_Couchbase Tour

    1. 1. 1
    2. 2. Announcement: local vendor at Israel via 2
    3. 3. When you tweet… #CouchConf 3
    4. 4. Stay for the Q&A Session! Beer. Wine. Snacks. Don’t miss it. 4
    5. 5. Submit questions for the Q&A session...Email: couchconfisrael@couchbase.comTweet: @couchbase...or write it down and hand it to any of theCouchbase staff! 5
    6. 6. Tell Us What You Think!DO THISGET THIS 6
    7. 7. WiFi is available... Network: exodia Password: 1234567890 7
    8. 8. 8
    9. 9. Couchbase NoSQL Leadership Leading NoSQL database company Open Source development & business model Behind Couchbase open source project Document-oriented NoSQL database Focused on interactive internet and mobile applications Provide more flexible, higher performance, more scalable database than relational alternative Most mature, reliable and widely deployed solution >5,000 paid production deployments worldwide, over 350 customers Headquarters in Silicon Valley (Mountain View, CA) ~100 employees including >60 in engineering/product >80% of commits to Couchbase, memcached, Apache CouchDB 9
    10. 10. Market Adoption – Customers Internet Companies Enterprises More than 350 customers -- 5,000 production deployments worldwide 10
    11. 11. Introduction toCouchbase Server 2.0 Sharon Barr VP of Engineering 11
    12. 12. Couchbase Server NoSQL Document Database 2.0 12
    13. 13. Couchbase Server 2.0 Easy Consistent High Scalability PE RFORM ANCE Performance Grow cluster without Consistent sub-millisecond application changes, without read and write response times downtime with a single click with consistent high throughput Always Flexible Data On JSON JSON JSO JSON JSON N Model 24x365 No downtime for software JSON document model with upgrades, hardware no fixed schema. maintenance, etc. 13
    14. 14. Flexible Data Model: Relational vs Document Data Model C1 C2 C3 C4 { JSON JSON } JSON Relational data model Document data model Highly-structured table organization Collection of complex documents with with rigidly-defined data formats and arbitrary, nested data formats and record structure. varying “record” format. 14
    15. 15. RDBMS Example: User Profile User Info Address Info KEY First Last ZIP_id ZIP_id CITY STATE ZIP 1 Frank Weigel 2 1 DEN CO 30303 2 Ali Dodson 2 2 MV CA 94040 3 Mark Azad 2 3 CHI IL 60609 4 Steve Yen 3 4 NY NY 10010 To get info about specific user, you perform a join across two tables 15
    16. 16. Document Example: User Profile { “ID”: 1, “FIRST”: “Frank”, “LAST”: “Weigel”, “ZIP”: “94040”, “CITY”: “MV”, = + “STATE”: “CA” } JSON All data in a single document 16
    17. 17. Flexible Data Model { “ID”: 1, “FIRST”: “Dipti”, “LAST”: “Borkar”, “ZIP”: “94040”, “CITY”: “MV”, “STATE”: “CA” } JSON JSON JSON JSON • No need to worry about the database when changing your application • Records can have different structures, there is no fixed schema • Allows painless data model changes for rapid application development 17
    18. 18. Couchbase Server Features Built-in clustering – All nodes equal Data replication with auto-failover Zero--downtime maintenance Clone to grow and scale horizontally Built-in managed cached Monitoring and administration APIs and GUI SDK for a variety of languages 18
    19. 19. New in 2.0 JSON support Indexing and Querying JSON JSON JSO JSON N JSON Incremental Map Reduce Cross data center replication 19
    20. 20. Additional Couchbase Server 2.0 Features Append-only storage layer Online compaction Better working set management Reduce server warm-up time 20
    21. 21. Couchbase Server 2.0 Architecture 8092 11211 11210 Couch View Memcapable 1.0 Memcapable 2.0 Moxi REST management API/Web UI vBucket state and replication manager Memcached Interface Couch API Global singleton supervisor Rebalance orchestrator Configuration manager Node health monitor Process monitor Heartbeat Couchbase EP Engine Hash table cache Write/replica Data Manager Queues Cluster Manager storage interface http on each node one per cluster Distributed CouchStore Indexing Auto compaction Erlang/OTP HTTP Erlang port mapper Distributed Erlang 8091 4369 21100 - 21199 21
    22. 22. Couchbase deployment Web Application Couchbase Client Library Data ports Data Flow Cluster Management (8091) 23
    23. 23. COUCHBASE OPERATIONS 24
    24. 24. Single node - Couchbase Write Operation 2 Doc 1 App Server 3 2 3 Managed Cache To other node Replication Doc 1 Queue Disk Queue Disk Couchbase Server Node 25
    25. 25. Update Operation 2 Doc 1’ App Server 3 2 3 Managed Cache To other node Replication 1 Doc 1’ Queue Disk Queue Disk Doc 1 Couchbase Server Node 26
    26. 26. Cache Eviction 2 Doc 6 2 3 4 5 App Server 3 2 3 Managed Cache To other node Replication Doc 1 Queue Disk Queue Disk Doc 1 Doc 6 Doc 5 Doc 4 Doc 3 Doc 2 Couchbase Server Node 27
    27. 27. Read Operation 2 Doc 1 GET App Server 3 2 3 Managed Cache To other node Replication Queue Doc 1 Disk Queue Disk Doc 1 Couchbase Server Node 28
    28. 28. Cache Miss 2 Doc 1 GET App Server 3 2 3 Managed Cache To other node Replication Queue Doc 1 Doc 5 4 4 Doc Doc Doc 3 2 Doc Disk Queue Disk Doc 1 Doc 6 Doc 5 Doc 4 Doc 3 Doc 2 Couchbase Server Node 29
    29. 29. Partitioning The Data – vbucket (internal partitions) map 30
    30. 30. Cluster wide - Basic Operation APP SERVER 1 APP SERVER 2 COUCHBASE Client Library COUCHBASE Client Library CLUSTER MAP CLUSTER MAP READ/WRITE/UPDATE SERVER 1 SERVER 2 SERVER 3 • Docs distributed evenly across ACTIVE ACTIVE ACTIVE servers Doc 5 Doc Doc 4 Doc Doc 1 Doc • Each server stores both active and replica docs Doc 2 Doc Doc 7 Doc Doc 2 Doc Only one server active at a time • Client library provides app with Doc 9 Doc Doc 8 Doc Doc 6 Doc simple interface to database REPLICA REPLICA REPLICA • Cluster map provides map to which server doc is on Doc 4 Doc Doc 6 Doc Doc 7 Doc App never needs to know Doc 1 Doc Doc 3 Doc Doc 9 Doc • App reads, writes, updates docs Doc 8 Doc Doc 2 Doc Doc 5 Doc • Multiple app servers can access same document at same time COUCHBASE SERVER CLUSTERUser Configured Replica Count = 1 31
    31. 31. Cluster wide - Add Nodes to Cluster APP SERVER 1 APP SERVER 2 COUCHBASE Client Library COUCHBASE Client Library CLUSTER MAP CLUSTER MAP READ/WRITE/UPDATE READ/WRITE/UPDATE SERVER 1 SERVER 2 SERVER 3 SERVER 4 SERVER 5 • Two servers added ACTIVE ACTIVE ACTIVE ACTIVE ACTIVE One-click operation Doc 5 Doc Doc 4 Doc Doc 1 Doc • Docs automatically rebalanced across Doc 2 Doc Doc 7 Doc Doc 2 Doc cluster Even distribution of docs Minimum doc movement Doc 9 Doc Doc 8 Doc Doc 6 Doc • Cluster map updated REPLICA REPLICA REPLICA REPLICA REPLICA • App database Doc 4 Doc Doc 6 Doc Doc 7 Doc calls now distributed over larger number of Doc 1 Doc Doc 3 Doc Doc 9 Doc servers Doc 8 Doc Doc 2 Doc Doc 5 Doc COUCHBASE SERVER CLUSTERUser Configured Replica Count = 1 32
    32. 32. Cluster wide - Fail Over Node APP SERVER 1 APP SERVER 2 COUCHBASE Client Library COUCHBASE Client Library CLUSTER MAP CLUSTER MAP SERVER 1 SERVER 2 SERVER 3 SERVER 4 SERVER 5 • App servers accessing docs ACTIVE ACTIVE ACTIVE ACTIVE ACTIVE • Requests to Server 3 fail Doc 5 Doc Doc 4 Doc Doc 1 Doc Doc 9 Doc Doc 6 Doc • Cluster detects server failed Promotes replicas of docs to Doc 2 Doc Doc 7 Doc Doc 2 Doc Doc 8 Doc Doc active Updates cluster map Doc 1 Doc 3 • Requests for docs now go to REPLICA REPLICA REPLICA REPLICA REPLICA appropriate server Doc 4 Doc Doc 6 Doc Doc 7 Doc Doc 5 Doc Doc 8 Doc • Typically rebalance would follow Doc 1 Doc Doc 3 Doc Doc 9 Doc Doc 2 Doc COUCHBASE SERVER CLUSTERUser Configured Replica Count = 1 33
    33. 33. DEMO TIME 34
    34. 34. Indexing and Querying – The basics • Define materialized views on JSON documents and then query across the data set • Using views you can define • Primary indexes • Simple secondary indexes (most common use case) • Complex secondary, tertiary and composite indexes • Aggregations (reduction) • Indexes are eventually indexed • Queries are eventually consistent with respect to documents • Built using Map/Reduce technology • Map and Reduce functions are written in Javascript 35
    35. 35. Eventually indexed Views – Data flow 2 Doc 1 App Server Couchbase Server Node 3 2 3 Managed Cache To other node Replication Queue Doc 1 Disk Queue Disk Doc 1 View engine 36
    36. 36. Cluster wide - Indexing and Querying APP SERVER 1 APP SERVER 2 COUCHBASE Client Library COUCHBASE Client Library CLUSTER MAP CLUSTER MAP Query SERVER 1 SERVER 2 SERVER 3 • Indexing work is distributed ACTIVE ACTIVE ACTIVE amongst nodes Doc 5 Doc Doc 5 Doc Doc 5 Doc • Large data set possible Doc 2 Doc Doc 2 Doc Doc 2 Doc • Parallelize the effort Doc 9 Doc • Each node has index for data stored Doc 9 Doc Doc 9 Doc on it REPLICA REPLICA REPLICA • Queries combine the results from Doc 4 Doc required nodes Doc 4 Doc Doc 4 Doc Doc 1 Doc Doc 1 Doc Doc 1 Doc Doc 8 Doc Doc 8 Doc Doc 8 Doc COUCHBASE SERVER CLUSTERUser Configured Replica Count = 1 37
    37. 37. Cross Data Center Replication – The basics• Replicate your Couchbase data across clusters• Clusters may be spread across geos• Configured on a per-bucket basis• Supports unidirectional and bidirectional operation• Application can read and write from both clusters (active – active replication)• Replication throughput scales out linearly• Different from intra-cluster replication 38
    38. 38. Cross data center replication – Data flow 2 Doc 1 App Server Couchbase Server Node 3 2 3 Managed Cache To other node Replication Doc 1 Queue Disk Queue Disk Doc 1 XDCR Queue To other cluster 39
    39. 39. Cluster wide - XDCR SERVER 1 SERVER 2 SERVER 3 ACTIVE ACTIVE ACTIVE COUCHBASE SERVER CLUSTER Doc Doc Doc NY DATA CENTER Doc 2 Doc Doc Doc 9 Doc DocRAM RAM RAM Doc Doc Doc Doc Doc Doc Doc Doc Doc DISK DISK DISK SERVER 1 SERVER 2 SERVER 3 ACTIVE ACTIVE ACTIVE Doc Doc Doc Doc 2 Doc Doc Doc 9 Doc Doc RAM RAM RAM COUCHBASE SERVER CLUSTER Doc Doc Doc Doc Doc Doc Doc Doc Doc SF DATA CENTER DISK DISK DISK 40
    40. 40. DEMO TIME 41
    41. 41. Demo: The next big social game 3 Objects (documents) within game: • Players • Monsters • Items Gameplay: • Players fight monsters • Monsters drop items • Players own items 42
    42. 42. Player Document { "jsonType": "player", "uuid": "35767d02-a958-4b83-8179-616816692de1", "name": "Keith4540", "hitpoints": 75, Player ID "experience": 663, "level": 4, "loggedIn": false } 43
    43. 43. Item Document { Item ID "jsonType": "item", "name": "Katana_e5890c94-11c6-65746ce6c560", "uuid": "e5890c94-11c6-4856-a7a6-65746ce6c560", "ownerId": "Dale9887" } Player ID 44
    44. 44. Monster Document { Monster ID "jsonType": "monster", "name": "Bauchan9932", "uuid": "d10dfc1b-0412-4140-b4ec-affdbf2aa5ec", "hitpoints": 370, "experienceWhenKilled": 52, "itemProbability": 0.5050581341872865 } 45
    45. 45. GAME ON! 46
    46. 46. Full Text Search Integration• Elastic Search is good for ad-hoc queries and faceted browsing• Couchbase adapter uses XDCR to push mutations to ESDocs are indexed by Elastic Search• Couchbase ES Adapter is cluster-aware ElasticSearch Unidirectional Cross Data Center Replication 47
    47. 47. Full Text Search Application Server Couchbase SDK ES Queries over HTTP Do ta TS c Da ery Qu Re Qu er fs M R y Couchbase Server Cluster ElasticSearch Server Cluster MR MR MR MR Views Views Views Views XDCR-based Cross Data Center Replication CB-ES Transport 48
    48. 48. Couchbase SDKsJava SDK User Code.Net SDK Java client API CouchbaseClient cb = new CouchbaseClient(listURIs, "aBucket", "letmein"); cb.set("hello", 0, "world"); cb.get("hello"); Couchbase Java LibraryPHP SDK (spymemcached)Ruby SDK Couchbase Server…and manymore http://www.couchbase.com/develop 49
    49. 49. QUESTIONS? 50 5
    50. 50. THANK YOU COUCHBASE SIMPLE, FAST, ELASTIC NOSQLsharon@couchbase.com@sharonyb 51
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×