Your SlideShare is downloading. ×
0
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Palestra sobre MongoDB com PHP no PHP'n'Rio

4,860

Published on

Palestra sobre MongoDB com PHP no PHP'n'Rio

Palestra sobre MongoDB com PHP no PHP'n'Rio

Published in: Technology
0 Comments
8 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,860
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
56
Comments
0
Likes
8
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. com Jean Carlo Nascimento aka SUISSA
  • 2. github.com/suissa about.me/suissa nosqlbr.com.br @osuissa
  • 3. NOSQL O que é? Quais são? Por que usar? Onde usar?
  • 4.  
  • 5.  
  • 6.  
  • 7.  
  • 8.  
  • 9.  
  • 10.  
  • 11.  
  • 12. key/value
  • 13.  
  • 14. graph
  • 15.  
  • 16.  
  • 17.  
  • 18.  
  • 19.  
  • 20.  
  • 21.  
  • 22.  
  • 23.  
  • 24. Terminologia <ul><li>SQL RDBMS </li></ul><ul><li>DATABASE </li></ul><ul><li>TABLE </li></ul><ul><li>ROWS </li></ul><ul><li>QUERY </li></ul><ul><li>INDEX </li></ul><ul><li>PARTITION </li></ul>MongoDB     DATABASE COLLECTION JSON DOCUMENT QUERY INDEX SHARD
  • 25. INSERIR <ul><li>INSERT INTO USERS VALUES(1,1) </li></ul><ul><li>$db-&gt;users-&gt;insert(array(&amp;quot;a&amp;quot; =&gt; 1, &amp;quot;b&amp;quot; =&gt; 1)); </li></ul><ul><li>//ou </li></ul><ul><li>$query = array( </li></ul><ul><li>    &apos;usuario&apos;    =&gt; &amp;quot;suissa&amp;quot;, </li></ul><ul><li>    &apos;email&apos; =&gt; &amp;quot;jnascimento@gmail.com&amp;quot; </li></ul><ul><li>); </li></ul><ul><li>$db-&gt;collection-&gt;insert($query); </li></ul>
  • 26. CONSULTAR <ul><li>select * from tabela where nome = &apos;Jean Nascimento&apos;  </li></ul><ul><li>$filter = array( &amp;quot;nome&amp;quot; =&gt; &amp;quot;Jean Nascimento&amp;quot; ); </li></ul><ul><li>$cursor = $collection-&gt;find($filter); </li></ul><ul><li>foreach ($cursor as $arr) {  </li></ul><ul><li>     echo $arr[&amp;quot;nome&amp;quot;]. &amp;quot; - &amp;quot; . $arr[&amp;quot;_id&amp;quot;] . &amp;quot;&lt;br /&gt;&amp;quot;;  </li></ul><ul><li>}  </li></ul>
  • 27. CONSULTAR <ul><li>select * from tabela where nome LIKE &apos;J___ Nascimento&apos; </li></ul><ul><li>$filter = array( &amp;quot;nome&amp;quot; =&gt; new MongoRegex(&apos;/^J[a-Z]{3} </li></ul><ul><li>Nascimento/i&apos; ); </li></ul><ul><li>select * from tabela where nome LIKE &apos;%Nasc%&apos;  </li></ul><ul><li>$filter = array(   &apos;title&apos; =&gt; new MongoRegex(&apos;/.Nasc./i&apos;) ); </li></ul>
  • 28. ALTERAR <ul><li>update tarefas set Tarefa=&apos;Terminar artigo&apos; where Usuario=&apos;suissa&apos; </li></ul><ul><li>$db-&gt;collection-&gt;update( </li></ul><ul><li>     array(&apos;Usuario&apos;=&gt; &apos;suissa&apos;),  </li></ul><ul><li>     array(&apos;$set&apos; =&gt; array(&apos;Tarefa&apos; =&gt; &apos;Terminar artigo&apos;)) </li></ul><ul><li>);    </li></ul><ul><li>update users set a=a+2 where b=&apos;q&apos; </li></ul><ul><li>$db-&gt;users-&gt;update(array(&amp;quot;b&amp;quot; =&gt; &amp;quot;q&amp;quot;), array(&apos;$inc =&gt; array(&amp;quot;a&amp;quot; =&gt; 2))); </li></ul>
  • 29. EXCLUIR <ul><li>delete from usuarios where Usuario = &apos;suissa&apos; </li></ul><ul><li>$db-&gt;collection-&gt;remove(array(&apos;Usuario&apos;=&gt; &apos;suissa&apos;)); </li></ul>
  • 30. EXPLAIN <ul><li>EXPLAIN SELECT * FROM users WHERE z=3 </li></ul><ul><li>$db-&gt;users-&gt;find(array(&amp;quot;z&amp;quot; =&gt; 3))-&gt;explain() </li></ul>
  • 31. &nbsp;
  • 32. &nbsp;
  • 33. &nbsp;
  • 34. <ul><li>  </li></ul>
  • 35. Talk is cheap. Show me the  code .
  • 36.   <ul><li>$nome_banco = ‘prioridades’; $nome_collection = ‘tarefas’; </li></ul><ul><li>$this-&gt;conexao = new Mongo(); $this-&gt;db = $this-&gt;conexao-&gt;$nome_banco; $this-&gt;collection = $this-&gt;db-&gt;$nome_collection; </li></ul>
  • 37.   <ul><li>function inserir(){ </li></ul><ul><li>     $this-&gt;query = array( </li></ul><ul><li>    ‘ UsuarioID’ =&gt; $this-&gt;UsuarioID, </li></ul><ul><li>    ‘ Usuario’ =&gt; $this-&gt;Usuario, </li></ul><ul><li>    ‘ Tarefa’ =&gt; $this-&gt;Tarefa, </li></ul><ul><li>    ‘ Tipo’ =&gt; $this-&gt;Tipo,//Obrigatório, idéia, outro </li></ul><ul><li>    ‘ Prioridade’ =&gt; $this-&gt;Prioridade); </li></ul><ul><li>     $this-&gt;collection-&gt;insert($this-&gt;query); </li></ul><ul><li>} </li></ul>
  • 38.   <ul><li>function excluir(){ </li></ul><ul><li>     $this-&gt;mongo_id = new MongoID($this-&gt;_id); </li></ul><ul><li>     $this-&gt;collection-&gt;remove(array(‘_id’ =&gt; $this-&gt;mongo_id)); </li></ul><ul><li>}     </li></ul>
  • 39.   <ul><li>function mudar_tarefa(){ </li></ul><ul><li>     $this-&gt;mongo_id = new MongoID($this-&gt;_id); </li></ul><ul><li>     $this-&gt;collection-&gt;update(array(‘_id’ =&gt; $this-&gt;mongo_id), array(‘$set’ =&gt; array(‘Tarefa’ =&gt; $this-&gt;Tarefa)), false); </li></ul><ul><li>}  </li></ul>
  • 40.   <ul><li>function mudar_tarefa(){ </li></ul><ul><li>     $this-&gt;mongo_id = new MongoID($this-&gt;_id); </li></ul><ul><li>     $this-&gt;collection-&gt;update(array(‘_id’ =&gt; $this-&gt;mongo_id), array(‘$set’ =&gt; array(‘Tarefa’ =&gt; $this-&gt;Tarefa)), false); </li></ul><ul><li>}  </li></ul>
  • 41.   <ul><li>function mudar_prioridade(){ </li></ul><ul><li>     $this-&gt;mongo_id = new MongoID($this-&gt;_id); </li></ul><ul><li>     if($this-&gt;modo==’up’){ </li></ul><ul><li>         $this-&gt;collection-&gt;update( </li></ul><ul><li>             array(‘_id’ =&gt; $this-&gt;mongo_id),                  </li></ul><ul><li>             array(‘$inc’ =&gt; array(‘Prioridade’ =&gt; 1)),  </li></ul><ul><li>             false </li></ul><ul><li>         ); </li></ul><ul><li>     } elseif($this-&gt;modo==’down’){ </li></ul><ul><li>         $this-&gt;collection-&gt;update( </li></ul><ul><li>             array(‘_id’ =&gt; $this-&gt;mongo_id),  </li></ul><ul><li>             array(‘$inc’ =&gt; array(‘Prioridade’ =&gt; -1)),  </li></ul><ul><li>             false </li></ul><ul><li>         ); </li></ul><ul><li>     } </li></ul><ul><li>} </li></ul>
  • 42.   <ul><li>https://github.com/suissa/mongodb-exemplos </li></ul>
  • 43. Frameworks <ul><li>CakePHP Codeigniter Doctrine Drupal Fat-Free Kohana </li></ul>Lithium Memcached Symfony 2 TechMVC Vork Yii Zend
  • 44. Standalone Tools <ul><li>ActiveMongo </li></ul><ul><li>MapReduce API </li></ul><ul><li>Mongofilesystem </li></ul><ul><li>Mandango </li></ul><ul><li>MongoDb PHP ODM </li></ul><ul><li>Mongodloid </li></ul>MongoQueue MongoRecord Morph simplemongophp Uniform Server 6-Carbo with MongoDB and phpMoAdmin
  • 45. Referências <ul><li>http://www.nosqlbr.com.br/ </li></ul><ul><li>http://nosql-database.org/ </li></ul><ul><li>http://pt.wikipedia.org/wiki/NoSQL </li></ul><ul><li>http://www.mongodb.org/ </li></ul>
  • 46. &nbsp;

×