SlideShare a Scribd company logo
1 of 81
Intro to Riak
Randy Secrist
   @randysecrist
rsecrist@basho.com
_
Intro to Riak
Riak is a Database
Riak is Open Source
    http://git.io/basho
      http://git.io/riak
   http://git.io/riak_core
    http://git.io/riak_kv
Riak is Eventually
Eventual
    ...
Consistency
CAP

• Consistency
• Availability
• Partitioning
BASE
• Basically
• Available
• Soft
• State
Riak’s Strong Areas

• Availability
• Partitioning
Riak is also ...
• Fault-Tolerant
• Highly-Available
• Geo Distributable, horizontally scaleable
• Built for the Web
Fault-Tolerant
• All nodes participate equally - no SPOF
• All data is replicated
• Cluster transparently survives ...
 • node failures
 • network partitions
• Built on Erlang/OTP (designed for FT)
Highly-Available

• Masterless: Any node can service client
  requests.
• Fallbacks are used when nodes are down.
• Always accepts read and write requests.
• Per-Request Quorums
SCALES
Geo Distributable &
 Horizontally Scalable
• Default configuration is in a cluster
• Load and data are spread evenly
• Add more nodes to get more X
• Multi Data Center Replication*
Built for the Web
• HTTP is default (but not only) interface
• Does HTTP/REST well (see Webmachine)
• Plays well with HTTP infrastructure -
  reverse proxy caches, load balancers, web
  servers.

• Suitable for many web and mobile
  applications.
Riak Features
Native APIs
HTTP
Protocol Buffers
Client Libraries
Erlang
Ruby
Java
Python
PHP
https://github.com/basho/riak-php-client
Many more client libraries
http://wiki.basho.com/Client-Libraries.html
Querying
• Key Value - get, put, delete
 • Value is mostly opaque (some metadata)
• Secondary Indexes
• Map Reduce
• Links
• Full Text Search (Lucene Style)
Storage Backends

• Bitcask
• LevelDB
• Memory
• Multi
Request Quorums

• Every request contacts all replicas of
  key

• N - number of replicas (default 3)
• R - read quorum
• W - write quorum
Hands on!

Setting it Up!
brew install riak
/usr/local/bin/riak start
Use ‘join’ command

 to build a cluster
Main Config File

 etc/app.config
Rekon
https://github.com/basho/rekon
     curl -s rekon.basho.com | sh or curl -s rekon.basho.com | node=node-addr:port sh
PHP Client Demo
Connecting to Riak

require_once('riak-php-client/riak.php');
$client = new RiakClient('127.0.0.1', 8098);
Buckets

$bucket = $client->bucket('friends');
Writing Data
$person = $bucket->newObject(‘jack’,array(
    ‘name’ => “Jack Bauer”,
    ‘age’ => 24,
    ‘hobbies’ => “Interrogation”
));

$person->store();
Getting Data

$jack = $bucket->get('jack');

$me = $bucket->get('randy');
Riak Objects

foreach ($me->data as $key =>$value)
 print($key);
PHP Documentation

Readme: http://git.io/pk5umA

PHP Docs: http://git.io/9YYaKQ
s3:// compatible layer
 http://basho.com/products/riakcs
Thank You!
References
•   http://www.infoq.com/articles/cap-twelve-years-later-how-the-rules-have-changed


•   http://www.odbms.org/blog/2012/08/on-eventual-consistency-an-interview-with-justin-sheehy/


•   http://pbs.cs.berkeley.edu/#demo


•   https://github.com/basho/riak-php-client/blob/master/README.md
Credits

•   Slides by Casey Rosenthal


•   Slides by Bryce Kerley
Consistent Hashing &
      The Ring
Consistent Hashing &
      The Ring
•   160-bit integer keyspace

                                 0


                                         2 160/4




                               2 160/2
Consistent Hashing &
      The Ring
•   160-bit integer keyspace

•   Divided into fixed                   0
    number of evenly-sized
    partitions

                               32 partitions    2 160/4




                                      2 160/2
Consistent Hashing &
      The Ring                                             node 0

                                                           node 1

•   160-bit integer keyspace                               node 2


•   Divided into fixed                    0                 node 3

    number of evenly-sized
    partitions

•   Partitions are claimed by   32 partitions    2 160/4
    nodes in the cluster


                                       2 160/2
Consistent Hashing &
      The Ring                  node 0

                                node 1

•   160-bit integer keyspace    node 2


•   Divided into fixed           node 3

    number of evenly-sized
    partitions

•   Partitions are claimed by
    nodes in the cluster

•   Replicas go to the N
    partitions following the
    key
Consistent Hashing &
      The Ring                              node 0

                                            node 1

•   160-bit integer keyspace                node 2


•   Divided into fixed                       node 3

    number of evenly-sized
    partitions

•   Partitions are claimed by
    nodes in the cluster         N=3

•   Replicas go to the N
    partitions following the
    key
                       hash(“utah/uphpu”)
Hinted Handoff
Hinted Handoff
•   Node fails               X
                     X
                                 X

                 X
                                     X

                     X
                                 X
                         X
Hinted Handoff
•   Node fails                                  X
                                  X
•   Requests go to fallback                         X

                              X
                                                        X

                                  X
                                                    X
                                            X
                       hash(“utah/uphpu”)
Hinted Handoff
•   Node fails

•   Requests go to fallback

•   Node comes back




                       hash(“utah/uphpu”)
Hinted Handoff
•   Node fails

•   Requests go to fallback

•   Node comes back

•   “Handoff” - data returns
    to recovered node




                       hash(“utah/uphpu”)
Hinted Handoff
•   Node fails

•   Requests go to fallback

•   Node comes back

•   “Handoff” - data returns
    to recovered node

•   Normal operations
    resume
                       hash(“utah/uphpu”)
Riak Architecture
Erlang/OTP Runtime
Riak Architecture
Erlang/OTP Runtime




                        Riak KV
Riak Architecture
Erlang/OTP Runtime
      Client APIs




                        Riak KV
Riak Architecture
Erlang/OTP Runtime
      Client APIs    HTTP




                            Riak KV
Riak Architecture
Erlang/OTP Runtime
      Client APIs    HTTP   Protocol Buffers




                                       Riak KV
Riak Architecture
Erlang/OTP Runtime
      Client APIs    HTTP               Protocol Buffers
                            Erlang local client




                                                   Riak KV
Riak Architecture
Erlang/OTP Runtime
      Client APIs      HTTP               Protocol Buffers
                              Erlang local client
      Request Coordination




                                                     Riak KV
Riak Architecture
Erlang/OTP Runtime
      Client APIs      HTTP               Protocol Buffers
                              Erlang local client
      Request Coordination
               get    put     delete     map-reduce




                                                      Riak KV
Riak Architecture
Erlang/OTP Runtime
      Client APIs      HTTP               Protocol Buffers
                              Erlang local client
      Request Coordination
               get    put     delete     map-reduce


                                                       Riak Core




                                                      Riak KV
Riak Architecture
Erlang/OTP Runtime
      Client APIs        HTTP                 Protocol Buffers
                                  Erlang local client
      Request Coordination
               get      put       delete     map-reduce

             consistent hashing
                                                           Riak Core




                                                          Riak KV
Riak Architecture
Erlang/OTP Runtime
      Client APIs        HTTP                 Protocol Buffers
                                  Erlang local client
      Request Coordination
               get      put       delete     map-reduce

             consistent hashing
             membership                                    Riak Core




                                                          Riak KV
Riak Architecture
Erlang/OTP Runtime
      Client APIs        HTTP                  Protocol Buffers
                                  Erlang local client
      Request Coordination
               get      put       delete     map-reduce

             consistent hashing      handoff
             membership                                     Riak Core




                                                          Riak KV
Riak Architecture
Erlang/OTP Runtime
      Client APIs       HTTP               Protocol Buffers
                               Erlang local client
      Request Coordination
               get     put     delete     map-reduce

             consistent hashing handoff
             membership node-liveness                   Riak Core




                                                       Riak KV
Riak Architecture
Erlang/OTP Runtime
      Client APIs       HTTP               Protocol Buffers
                               Erlang local client
      Request Coordination
               get     put     delete     map-reduce

             consistent hashing handoff gossip
             membership node-liveness                   Riak Core




                                                       Riak KV
Riak Architecture
Erlang/OTP Runtime
      Client APIs      HTTP               Protocol Buffers
                              Erlang local client
      Request Coordination
               get    put     delete     map-reduce

             consistent hashing handoff gossip
             membership node-liveness buckets          Riak Core




                                                      Riak KV
Riak Architecture
Erlang/OTP Runtime
      Client APIs          HTTP                Protocol Buffers
                                   Erlang local client
      Request Coordination
               get        put      delete     map-reduce

             consistent hashing handoff gossip
             membership node-liveness buckets               Riak Core

                    vnode master



                                                           Riak KV
Riak Architecture
Erlang/OTP Runtime
      Client APIs          HTTP                Protocol Buffers
                                   Erlang local client
      Request Coordination
               get        put      delete     map-reduce

             consistent hashing handoff gossip
             membership node-liveness buckets               Riak Core

                    vnode master
                      vnodes

                                                           Riak KV
Riak Architecture
Erlang/OTP Runtime
      Client APIs          HTTP                Protocol Buffers
                                   Erlang local client
      Request Coordination
               get        put      delete     map-reduce

             consistent hashing handoff gossip
             membership node-liveness buckets               Riak Core

                    vnode master
                      vnodes
               storage backend
                                                           Riak KV
Riak Architecture
Erlang/OTP Runtime
      Client APIs          HTTP                Protocol Buffers
                                   Erlang local client
      Request Coordination
               get        put      delete     map-reduce

             consistent hashing handoff gossip
             membership node-liveness buckets                  Riak Core

                    vnode master
                      vnodes                             JS Runtime
               storage backend
                                                              Riak KV

More Related Content

Viewers also liked

Making telephone calls
Making telephone callsMaking telephone calls
Making telephone callsbusinesspuig
 
How crowded is your class
How crowded is your class How crowded is your class
How crowded is your class lms030
 
OMI Shanghai workshop on Social Analytics 23 May 2011
OMI Shanghai workshop on Social Analytics 23 May 2011OMI Shanghai workshop on Social Analytics 23 May 2011
OMI Shanghai workshop on Social Analytics 23 May 2011frontiersdigital
 
Copy Responsible: copyright relevance for South African teachers and librarians
Copy Responsible:  copyright relevance for South African teachers and librariansCopy Responsible:  copyright relevance for South African teachers and librarians
Copy Responsible: copyright relevance for South African teachers and librariansKerryn Mckay
 
Pc14 junior primary brief intro nov 2013 mb
Pc14 junior primary brief intro nov 2013 mbPc14 junior primary brief intro nov 2013 mb
Pc14 junior primary brief intro nov 2013 mbfknights
 
Influencing the Insurance Connected Consumer
Influencing the Insurance Connected ConsumerInfluencing the Insurance Connected Consumer
Influencing the Insurance Connected ConsumerLynn Kesterson-Townes
 
萌え要素の効果について分析してみた@第8回ニコニコ学会βシンポジウム
萌え要素の効果について分析してみた@第8回ニコニコ学会βシンポジウム萌え要素の効果について分析してみた@第8回ニコニコ学会βシンポジウム
萌え要素の効果について分析してみた@第8回ニコニコ学会βシンポジウムMasanori Takano
 
Big Data & The Future of Making Things by Mike Haley
Big Data & The Future of Making Things by Mike HaleyBig Data & The Future of Making Things by Mike Haley
Big Data & The Future of Making Things by Mike HaleyGlobant
 
Affiliatedag Christiaan Solcer
Affiliatedag Christiaan SolcerAffiliatedag Christiaan Solcer
Affiliatedag Christiaan SolcerAffiliate Dag
 
Next gen E-commerce. Focus on Mobile and Multichannel commerce
Next gen E-commerce. Focus on Mobile and Multichannel commerce Next gen E-commerce. Focus on Mobile and Multichannel commerce
Next gen E-commerce. Focus on Mobile and Multichannel commerce Globant
 
The battle of hastings грехов сарваров
The battle of hastings грехов сарваровThe battle of hastings грехов сарваров
The battle of hastings грехов сарваровkapitoliy
 
GolinHarris 2013 Al's Day: Day of Service
GolinHarris 2013 Al's Day: Day of ServiceGolinHarris 2013 Al's Day: Day of Service
GolinHarris 2013 Al's Day: Day of ServiceGolin
 
論文紹介: What’s in a like- attitudes and behaviors around receiving likes on fac...
論文紹介: What’s in a like- attitudes and behaviors around receiving likes on fac...論文紹介: What’s in a like- attitudes and behaviors around receiving likes on fac...
論文紹介: What’s in a like- attitudes and behaviors around receiving likes on fac...Masanori Takano
 

Viewers also liked (20)

College1 12.10.2015
College1 12.10.2015College1 12.10.2015
College1 12.10.2015
 
Making telephone calls
Making telephone callsMaking telephone calls
Making telephone calls
 
How crowded is your class
How crowded is your class How crowded is your class
How crowded is your class
 
OMI Shanghai workshop on Social Analytics 23 May 2011
OMI Shanghai workshop on Social Analytics 23 May 2011OMI Shanghai workshop on Social Analytics 23 May 2011
OMI Shanghai workshop on Social Analytics 23 May 2011
 
Netizons brand
Netizons brandNetizons brand
Netizons brand
 
Romania
RomaniaRomania
Romania
 
Copy Responsible: copyright relevance for South African teachers and librarians
Copy Responsible:  copyright relevance for South African teachers and librariansCopy Responsible:  copyright relevance for South African teachers and librarians
Copy Responsible: copyright relevance for South African teachers and librarians
 
Pc14 junior primary brief intro nov 2013 mb
Pc14 junior primary brief intro nov 2013 mbPc14 junior primary brief intro nov 2013 mb
Pc14 junior primary brief intro nov 2013 mb
 
Influencing the Insurance Connected Consumer
Influencing the Insurance Connected ConsumerInfluencing the Insurance Connected Consumer
Influencing the Insurance Connected Consumer
 
Energy
EnergyEnergy
Energy
 
萌え要素の効果について分析してみた@第8回ニコニコ学会βシンポジウム
萌え要素の効果について分析してみた@第8回ニコニコ学会βシンポジウム萌え要素の効果について分析してみた@第8回ニコニコ学会βシンポジウム
萌え要素の効果について分析してみた@第8回ニコニコ学会βシンポジウム
 
Big Data & The Future of Making Things by Mike Haley
Big Data & The Future of Making Things by Mike HaleyBig Data & The Future of Making Things by Mike Haley
Big Data & The Future of Making Things by Mike Haley
 
Arif-Resume 8+
Arif-Resume 8+Arif-Resume 8+
Arif-Resume 8+
 
About the word "Nigthmare"
About the word "Nigthmare"About the word "Nigthmare"
About the word "Nigthmare"
 
Turkey
TurkeyTurkey
Turkey
 
Affiliatedag Christiaan Solcer
Affiliatedag Christiaan SolcerAffiliatedag Christiaan Solcer
Affiliatedag Christiaan Solcer
 
Next gen E-commerce. Focus on Mobile and Multichannel commerce
Next gen E-commerce. Focus on Mobile and Multichannel commerce Next gen E-commerce. Focus on Mobile and Multichannel commerce
Next gen E-commerce. Focus on Mobile and Multichannel commerce
 
The battle of hastings грехов сарваров
The battle of hastings грехов сарваровThe battle of hastings грехов сарваров
The battle of hastings грехов сарваров
 
GolinHarris 2013 Al's Day: Day of Service
GolinHarris 2013 Al's Day: Day of ServiceGolinHarris 2013 Al's Day: Day of Service
GolinHarris 2013 Al's Day: Day of Service
 
論文紹介: What’s in a like- attitudes and behaviors around receiving likes on fac...
論文紹介: What’s in a like- attitudes and behaviors around receiving likes on fac...論文紹介: What’s in a like- attitudes and behaviors around receiving likes on fac...
論文紹介: What’s in a like- attitudes and behaviors around receiving likes on fac...
 

Similar to Utah PHP Users Group - 2012

Building Distributed Systems With Riak and Riak Core
Building Distributed Systems With Riak and Riak CoreBuilding Distributed Systems With Riak and Riak Core
Building Distributed Systems With Riak and Riak CoreAndy Gross
 
Tuning kafka pipelines
Tuning kafka pipelinesTuning kafka pipelines
Tuning kafka pipelinesSumant Tambe
 
L2 changes
L2 changesL2 changes
L2 changesEmer_dj
 
Scalable Persistent Storage for Erlang: Theory and Practice
Scalable Persistent Storage for Erlang: Theory and PracticeScalable Persistent Storage for Erlang: Theory and Practice
Scalable Persistent Storage for Erlang: Theory and PracticeAmir Ghaffari
 
MyNOG 8: Next Generation Internet Number Registry Services
MyNOG 8: Next Generation Internet Number Registry ServicesMyNOG 8: Next Generation Internet Number Registry Services
MyNOG 8: Next Generation Internet Number Registry ServicesAPNIC
 
The Next Generation Internet Number Registry Services
The Next Generation Internet Number Registry ServicesThe Next Generation Internet Number Registry Services
The Next Generation Internet Number Registry ServicesMyNOG
 
Omid Efficient Transaction Mgmt and Processing for HBase
Omid Efficient Transaction Mgmt and Processing for HBaseOmid Efficient Transaction Mgmt and Processing for HBase
Omid Efficient Transaction Mgmt and Processing for HBaseDataWorks Summit
 
イマドキなNetwork/IO
イマドキなNetwork/IOイマドキなNetwork/IO
イマドキなNetwork/IOTakuya ASADA
 
How does Riak compare to Cassandra? [Cassandra London User Group July 2011]
How does Riak compare to Cassandra? [Cassandra London User Group July 2011]How does Riak compare to Cassandra? [Cassandra London User Group July 2011]
How does Riak compare to Cassandra? [Cassandra London User Group July 2011]Rainforest QA
 
Scaling applications with RabbitMQ at SunshinePHP
Scaling applications with RabbitMQ   at SunshinePHPScaling applications with RabbitMQ   at SunshinePHP
Scaling applications with RabbitMQ at SunshinePHPAlvaro Videla
 
Highly concurrent yet natural programming
Highly concurrent yet natural programmingHighly concurrent yet natural programming
Highly concurrent yet natural programmingInfinit
 
Akka-demy (a.k.a. How to build stateful distributed systems) I/II
 Akka-demy (a.k.a. How to build stateful distributed systems) I/II Akka-demy (a.k.a. How to build stateful distributed systems) I/II
Akka-demy (a.k.a. How to build stateful distributed systems) I/IIPeter Csala
 
HPTS talk on micro-sharding with Katta
HPTS talk on micro-sharding with KattaHPTS talk on micro-sharding with Katta
HPTS talk on micro-sharding with KattaTed Dunning
 
spray: REST on Akka (Scala Days)
spray: REST on Akka (Scala Days)spray: REST on Akka (Scala Days)
spray: REST on Akka (Scala Days)sirthias
 
High Availability for OpenStack
High Availability for OpenStackHigh Availability for OpenStack
High Availability for OpenStackKamesh Pemmaraju
 
Rails services in the walled garden
Rails services in the walled gardenRails services in the walled garden
Rails services in the walled gardenSidu Ponnappa
 
Kafka Summit SF 2017 - Query the Application, Not a Database: “Interactive Qu...
Kafka Summit SF 2017 - Query the Application, Not a Database: “Interactive Qu...Kafka Summit SF 2017 - Query the Application, Not a Database: “Interactive Qu...
Kafka Summit SF 2017 - Query the Application, Not a Database: “Interactive Qu...confluent
 

Similar to Utah PHP Users Group - 2012 (20)

Building Distributed Systems With Riak and Riak Core
Building Distributed Systems With Riak and Riak CoreBuilding Distributed Systems With Riak and Riak Core
Building Distributed Systems With Riak and Riak Core
 
Tuning kafka pipelines
Tuning kafka pipelinesTuning kafka pipelines
Tuning kafka pipelines
 
L2 changes
L2 changesL2 changes
L2 changes
 
Scalable Persistent Storage for Erlang: Theory and Practice
Scalable Persistent Storage for Erlang: Theory and PracticeScalable Persistent Storage for Erlang: Theory and Practice
Scalable Persistent Storage for Erlang: Theory and Practice
 
MyNOG 8: Next Generation Internet Number Registry Services
MyNOG 8: Next Generation Internet Number Registry ServicesMyNOG 8: Next Generation Internet Number Registry Services
MyNOG 8: Next Generation Internet Number Registry Services
 
The Next Generation Internet Number Registry Services
The Next Generation Internet Number Registry ServicesThe Next Generation Internet Number Registry Services
The Next Generation Internet Number Registry Services
 
Omid Efficient Transaction Mgmt and Processing for HBase
Omid Efficient Transaction Mgmt and Processing for HBaseOmid Efficient Transaction Mgmt and Processing for HBase
Omid Efficient Transaction Mgmt and Processing for HBase
 
イマドキなNetwork/IO
イマドキなNetwork/IOイマドキなNetwork/IO
イマドキなNetwork/IO
 
How does Riak compare to Cassandra? [Cassandra London User Group July 2011]
How does Riak compare to Cassandra? [Cassandra London User Group July 2011]How does Riak compare to Cassandra? [Cassandra London User Group July 2011]
How does Riak compare to Cassandra? [Cassandra London User Group July 2011]
 
Scaling applications with RabbitMQ at SunshinePHP
Scaling applications with RabbitMQ   at SunshinePHPScaling applications with RabbitMQ   at SunshinePHP
Scaling applications with RabbitMQ at SunshinePHP
 
Highly concurrent yet natural programming
Highly concurrent yet natural programmingHighly concurrent yet natural programming
Highly concurrent yet natural programming
 
Akka-demy (a.k.a. How to build stateful distributed systems) I/II
 Akka-demy (a.k.a. How to build stateful distributed systems) I/II Akka-demy (a.k.a. How to build stateful distributed systems) I/II
Akka-demy (a.k.a. How to build stateful distributed systems) I/II
 
HPTS talk on micro-sharding with Katta
HPTS talk on micro-sharding with KattaHPTS talk on micro-sharding with Katta
HPTS talk on micro-sharding with Katta
 
Apache con 2011 gd
Apache con 2011 gdApache con 2011 gd
Apache con 2011 gd
 
spray: REST on Akka (Scala Days)
spray: REST on Akka (Scala Days)spray: REST on Akka (Scala Days)
spray: REST on Akka (Scala Days)
 
Load balancing at tuenti
Load balancing at tuentiLoad balancing at tuenti
Load balancing at tuenti
 
High Availability for OpenStack
High Availability for OpenStackHigh Availability for OpenStack
High Availability for OpenStack
 
Scalable Web Apps
Scalable Web AppsScalable Web Apps
Scalable Web Apps
 
Rails services in the walled garden
Rails services in the walled gardenRails services in the walled garden
Rails services in the walled garden
 
Kafka Summit SF 2017 - Query the Application, Not a Database: “Interactive Qu...
Kafka Summit SF 2017 - Query the Application, Not a Database: “Interactive Qu...Kafka Summit SF 2017 - Query the Application, Not a Database: “Interactive Qu...
Kafka Summit SF 2017 - Query the Application, Not a Database: “Interactive Qu...
 

Recently uploaded

Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 

Recently uploaded (20)

Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 

Utah PHP Users Group - 2012

Editor's Notes

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. Used for moving data around & dealing with failures - without applications noticing.\n\ndue to how data is replicated, there is no SPOF, or master / slave setup.\n\ndue to no SPOF and how replication is done, every node in the cluster looks the same.\n - can read and write from each node\n - turns out to be operationally friendly.\n\n\nAT&T for mHealth is using Riak replication across multiple data centers.\n\n
  16. always accepts writes.\n - (will not talk in detail, but you can ask me questions, send me email, or bug me on twitter).\n - causes the need to read repair.\n - eventually consistent. (tough for some people to grok at first).\n - ask me questions, or find me after & we can chat all day long about it.\n
  17. \n
  18. X = throughput, compute power for MapReduce, storage, lower latency\nData center replication. Focus on disaster survival vs recovery.\nenables us to have local data access no matter where you are.\n\n
  19. Basic operations are done over HTTP or a Protocol Buffer interface.\n\ndon’t spend much time here\n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. will not talk about in detail, but you can ask questions\n - again, twitter\n\ndon’t spend much time here\n
  32. will not talk about in detail, but you can ask questions\n - again, twitter\n\ndon’t spend much time here\n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. will not talk about in detail, but you can ask questions\n - again, twitter\n\ndon’t spend much time here\n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n
  58. \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n
  64. \n
  65. \n
  66. \n
  67. \n
  68. \n
  69. \n
  70. \n
  71. \n
  72. \n
  73. \n
  74. \n
  75. \n
  76. \n
  77. \n
  78. \n
  79. \n
  80. \n
  81. \n
  82. \n
  83. \n
  84. \n
  85. \n
  86. \n
  87. \n
  88. \n
  89. \n
  90. \n
  91. \n
  92. \n
  93. \n
  94. \n
  95. \n
  96. \n