jueves, 24 de mayo de 2012

Comandos básicos Mongod consultas

Intro
Para esta entrada veremos los comandos básicos a usar, si utlizamos mongod, el tutorial de instalación lo tiene publicado en un buen post un compañero de clase (Saul Gausin).
Dando una breve introducción mongod es un un administrador de base de datos para sistemas paralelizados.

En este post mongod lo utlizaremos con python.

Empezamos importando la libreria

>>from pymongod import Connection #importamos la librería necesaria
>>connection =Connection() #Creamos la conexión para correrla como instancia de mongod

>>connection = Connection('localhost', 27017)  #Donde nos conectaremos a nuestro localhost e indicamos a que puerto buscamos conectarnos

>>db = connection.test_database #Creamos la instancia donde le agregaremos el nombre de la base de datos
>>db = connection['test_database']

Collection, un collection en mongod lo podemos nosotros relacionar como el conjunto de tablas en una base de datos

>>collection = db.test_collection #instanciamos la base de datos para establecer la collecion
>>collection = db['test-collection'] #Damos el nombre del grupo de collection En la cual nos regresara un 

Documento.
Una de las ventajas o de las estructuras que maneja mongod, es el uso de un Documento, un Documento es el resultado obtenido con parámetros, pero esta esta formada como un JSON (En entradas anteriores se han hablado el uso de este).

JSON
No hace falta mencionar que existen diferentes estructuras, pero una de las ventajas de este es al momento de respuesta o consulta a determinada base de datos y esta es mucho mas rápido, ya que leyendo me encontré con un documento en la cual una consulta de 100 parámetros a recibir, tarda 0.0178 seg. en cambio un XML tardara 0.0371 seg., la diferencia como vemos es mucha.

Creando un Documento
Para crear un documento en mongod se utiliza el parametro insert()

>>posts =db.posts #instanciamos posts donde indicaremos que este sera un post
>>posts.insert(post) #a este le agregamos un Documento con el nombre de post
ObjectId('...')  #nos crea un id

Como podemos ver en si la estructura se parece a la sintaxis o estructura que manejamos en SQL y JSON, la unica diferencia es que cambian algunas palabras reservadas.

La importancia de esta, como menciono en el post de Saul, sirve para la administración de Base de Datos cuando las tenemos en distintas ubicaciones.

Cuando queremos hacer una consulta de un id especifico y un parámetros, nos encontramos con el método >>posts.find_one({"id": "Parametros a leer"})
Nos regresara elDocumento donde se encuentra estos parámetros

Para hacer una inserción en un Documento determinado, lo encontramos en el método insert()
>>db.posts.insert({"id" : "parametro a agregar"})

Para eliminar un parámetros, mandamos llamar el método delete()
>>db.posts.delete({"id" : "parametro a eliminar"})

Bibliografía:

Aportación semanal Distribuidos

Mi aportación semanal para esta semanan es la Documentación de LAMMPS, donde la pueden descargar de la siguiente URL:
http://abimage.comli.com/paralelo/pdf/Documentacion%20LAMMPS.pdf

Mis nominaciones para esta semana son: Juan Carlos y Rafael

Sensor de Flujo de Agua

Intro.
En esta entrada, hablaremos sobre el sensor de flujo de agua, este tipo de sensor nos ayudará a determinar la cantidad de agua que esta pasando en determinada tubería.

Material:
  • Arduino Uno
  • Cable USB
  • G1/2 Water Flow sensor //Imagen

  • Jumpers
  • Una resistencia de 10K

Mover servomotor con Sensor de Aproximidad

Intro.
Para esta entrada, busque hacer la implementación del sensor de aproximidad en la puerta, en la cual buscaría que al momento de pasar el usuario esta se abriera y al momento de salir del rango del sensor se cerrara (la idea es trollearlo un rato y que no pueda pasar).

Material:
El material a utilizar ya lo hemos utilizado en entradas anteriores así que no hay algo diferente.
  • Arduino Uno
  • Cable USB
  • Servomotor Futaba S3010
  • Sensor de Proximidad SHARP GP2Y0A21YK 

Arduino Serial PHP

Intro.
En ocasiones no podremos disponer de un ethernet shield de arduino en la cual ocuparemos hacer la comunicación con un servidor o que el usuario de manera externa conosca los parametros producidos.

Material:
  • Arduino Uno
  • Sensor de Proximidad SHARP GP2Y0A21YK
Desarrollo:

Arduino Ethernet Client

Intro.
En entradas anteriores se ha hablado sobre el arduino ethernet, pero este poniendolo en forma de servidor, en esta ocasión, interactuaremos con el arduino ethernet en forma de cliente.

¿Diferencia?
La diferencia si ponemos nuestro arduino en forma de cliente o servidor, en Servidor, como se vió en entradas anteriores, nos derá la oportunidad de hacerlo un servidor web y un cliente, lo que hará, será leer paramatros o pedir de determinada url.

UIDevice currentDevice

Intro.
Todos los dispositivos iOS cuentan con un id único que este servirá para identificarnos.

Utilidad:
Estos métodos los podemos emplear al momento que queremos saber cuantas personas decargaron nuestra aplicación, si la aplicación tiene llamadas a un servidor, saber cuantas tenemos al día, saber cuantas llamadas hace cierto dispositivo, saber que tipo de dispositivo es el que visita nuestros servidores, en lugar de utilizar apis de 3ros al momento de hacer logins, podemos emplear este.