<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>fboiton&#039;s blog &#187; document database</title>
	<atom:link href="http://www.fboiton.com/tag/document-database/feed" rel="self" type="application/rss+xml" />
	<link>http://www.fboiton.com</link>
	<description>Blog Técnico y personal: Ideas, Guias, Tutoriales, Comentarios, Pensamientos, Entre otros.</description>
	<lastBuildDate>Sun, 05 Feb 2012 22:01:06 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Incursionando con RavenDB: Caracteristicas, instalación y nuestro primer documento</title>
		<link>http://www.fboiton.com/ravendb-caracteristicas-instalacion-y-nuestro-primer-documento</link>
		<comments>http://www.fboiton.com/ravendb-caracteristicas-instalacion-y-nuestro-primer-documento#comments</comments>
		<pubDate>Wed, 07 Jul 2010 23:31:15 +0000</pubDate>
		<dc:creator>fboiton</dc:creator>
				<category><![CDATA[Desarrollo de Software]]></category>
		<category><![CDATA[document database]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[nosql]]></category>
		<category><![CDATA[ravendb]]></category>

		<guid isPermaLink="false">http://www.fboiton.com/?p=38</guid>
		<description><![CDATA[Según lo indica el sitio web de RavenDB es una document database Open Source para la plataforma .Net/Windows. Es una opción almacenamiento de datos&#160; no relacionados dentro del movimiento NoSQL. Entre sus características tenemos Infraestructura Escalable Configuración en Windows Simple &#8230; <a href="http://www.fboiton.com/ravendb-caracteristicas-instalacion-y-nuestro-primer-documento">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Según lo indica el sitio web de <a href="http://ravendb.net" target="_blank">RavenDB</a> es una document database Open Source para la plataforma .Net/Windows. Es una opción almacenamiento de datos&#160; no relacionados dentro del movimiento <a href="http://en.wikipedia.org/wiki/NoSQL" target="_blank">NoSQL</a>.</p>
<p>Entre sus características tenemos</p>
<ul>
<li>Infraestructura Escalable</li>
<li>Configuración en Windows Simple</li>
<li>Transaccional</li>
<li>Map/Reduce</li>
<li>.Net Client API</li>
<li>RESTful API</li>
<li>Sharding</li>
<li>Indexamiento (<a href="http://lucene.apache.org/java/2_4_0/queryparsersyntax.html" target="_blank">Lucene syntax</a>)</li>
</ul>
<p>En cuanto a documentacion parece estar bastante completa (en inglés), podemos consultar:</p>
<ul>
<li><a href="http://ravendb.net/documentation" target="_blank">Documentación de RavenDB en el sitio oficial</a></li>
<li><a href="http://www.codeproject.com/KB/cs/RavenDBIntro.aspx" target="_blank">Introducción a RavenDB en codeproject.com</a>&#160;</li>
</ul>
<p>Antes de comenzar directamente con RavenDB si aún no tenemos en mente lo que una document database es podemos consultar la <a href="http://en.wikipedia.org/wiki/Document-oriented_database" target="_blank">Wikipedia: Document-oriented database</a> o también ver el video de la <a href="http://altnet-hispano.pbworks.com/van-2010-05-08-nosql" target="_blank">VAN de Alt.Net Hispano sobre NoSQL</a></p>
<p>Cabe mencionar que aún no puede correr en Mono y que los modos Servidor y Embedded corren bajo la framework .NET 4.0. El Cliente si corre (con algunas condiciones) en la framework .NET 3.5 y si puede correr en Mono.</p>
<p>Y para comenzar podemos ir directamente al clásico <a href="http://ravendb.net/tutorials/hello-world" target="_blank">RavenDB HelloWorld! Tutorial</a></p>
<p>Según indica el tutorial, luego de descargar el build que decidamos, nos vamos al folder “server” y lo ejecutamos</p>
<p><a href="http://www.fboiton.com/images/IncursionandoconRavenDB_E7D9/image.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.fboiton.com/images/IncursionandoconRavenDB_E7D9/image_thumb.png" width="232" height="150" /></a> </p>
<p>Nota: Para este ejemplo modifiqué la configuración para que corriera en el puerto 8088, por default va a correr en el 8080.</p>
<p>Ahora que ya tenemos el servidor corriendo</p>
<p><a href="http://www.fboiton.com/images/IncursionandoconRavenDB_E7D9/image_3.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.fboiton.com/images/IncursionandoconRavenDB_E7D9/image_thumb_3.png" width="583" height="108" /></a> </p>
<p>procedemos a trabajar en una pequeña implementación utilizando el cliente de RavenDB, no olvidemos referenciar el cliente de Raven DB en nuestro proyecto.</p>
<p>Para esta prueba crearé una console application donde tendremos un par de clases que será la definición de nuestro documento:</p>
<p><a href="http://www.fboiton.com/images/IncursionandoconRavenDB_E7D9/image_4.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.fboiton.com/images/IncursionandoconRavenDB_E7D9/image_thumb_4.png" width="395" height="164" /></a> </p>
<p>Una vez teniendo nuestros POCO objects, procedemos a inicializar el DocumentStore y utilizarlo, para lo cual tendremos una clase más con un field que será el storage inicializado en el constructor y un método que se encargará de llenar el documento y almacenarlo en el storage.</p>
<p>Ahhh, no olvidemos que el inicializar el storage no es el único paso que debemos realizar. Para poder interactuar con los documentos necesitamos una sesión abierta, aquí el código:</p>
<p><a href="http://www.fboiton.com/images/IncursionandoconRavenDB_E7D9/image_5.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.fboiton.com/images/IncursionandoconRavenDB_E7D9/image_thumb_5.png" width="505" height="353" /></a> </p>
<p>Finalmente, utilizamos nuestro ClientsDirectory en una console application</p>
<p><a href="http://www.fboiton.com/images/IncursionandoconRavenDB_E7D9/image_6.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.fboiton.com/images/IncursionandoconRavenDB_E7D9/image_thumb_6.png" width="592" height="75" /></a> </p>
<p>y al ejecutar nuestra aplicación y luego irnos a la interfaz web de nuestro RavenDB Server</p>
</p>
</p>
</p>
<p>http://localhost:8088</p>
<p>Podemos ir a la sección “Documents” y bingo!</p>
<p><a href="http://www.fboiton.com/images/IncursionandoconRavenDB_E7D9/image_7.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.fboiton.com/images/IncursionandoconRavenDB_E7D9/image_thumb_7.png" width="761" height="92" /></a> </p>
<p>Nuestro primer documento creado, mismo que al darle click en la interfaz web podemos manipularlo:</p>
<p><a href="http://www.fboiton.com/images/IncursionandoconRavenDB_E7D9/image_8.png"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://www.fboiton.com/images/IncursionandoconRavenDB_E7D9/image_thumb_8.png" width="407" height="378" /></a> </p>
<p>No olvidemos que tenemos la opción de utilizar RavenDB embebido en nuestras aplicaciones lo cual nos quita la dependencia a un servicio adicional a nuestra aplicación que esté corriendo, adicionalmente que esto nos da libertad de utilizarla para muchos tipos de proyectos, no dejen de ver la sección <a href="http://ravendb.net/documentation/docs-client-api-index" target="_blank">Raven’s Client API</a></p>
<p> El proyecto puede descargarse <a href="http://www.fboiton.com/ClientsDirectory.rar">Aqu&iacute;</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.fboiton.com/ravendb-caracteristicas-instalacion-y-nuestro-primer-documento/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

