RavenDB开发:最后,一个用于Windows的基于文档的可靠数据库?

披露: 您的支持有助于保持网站的正常运行!我们会为此页面上推荐的某些服务收取推荐费.


RavenDB是面向文档的NoSQL数据库系统,它以JSON格式存储每个文档.

它是由于缺乏可在Windows系统上运行而不会引起重大问题的可用文档数据库而开发的。尽管有处理文档数据库的应用程序,但没有专门针对.NET框架开发的应用程序.

入门:什么是数据库?

数据库用于存储和组织大量数据。有许多不同类型的数据库,但是在软件开发方面,最常用的类型是关系数据库。大多数关系数据库使用SQL查询语言来访问存储在预定义表中的数据。 SQL数据库的复杂性导致开发人员找到了一种更简单的方法,从而产生了NoSQL数据库.

什么是NoSQL数据库?

NoSQL数据库提供了一种更简单,更快速的方式来组织大量不同数据类型。 NoSQL数据库无需使用预定义的结构来存储数据(需要使数据库脱机以进行更改),而是允许程序员即时添加新数据。 NoSQL数据库有不同类型,具体取决于它们用于存储数据的模型。一种存储数据的模型是面向文档的数据库,例如XML或RavenDB。其他包括键值存储(例如BerkelyDB),宽列存储(例如Cassandra),图形数据库(例如Neo4J)等等.

什么是面向文档的数据库?

面向文档的数据库通常以JSON或XML格式存储与单个文档中的单个对象有关的所有数据。这使得将对象映射到数据库要容易得多.

RavenDB历史

该数据库系统背后的人是Oren Eini,他是一位独立顾问,他致力于提升优质软件并减少软件开发中的痛点。像许多寻求扩展技能的程序员和软件开发人员一样,Oren希望进一步提高其Erlang能力,因此他着手阅读CouchDB源代码。.

这激起了他对NoSQL的兴趣。结果,他开始实现自己的文档数据库。这是成为RavenDB的第一个版本,事情从那里自然发展了.

一旦Oren意识到文档数据库可以有更广泛的应用,并且.NET开发人员可以从中受益,他便完善了最初的想法,RavenDB诞生了。它仍然是一个年轻的项目,但它为.NET生态系统带来了很多好处.

特征

RavenDB是开源的,并具有商业许可证。它具有以下功能:

  • 它包含功能齐全的.NET和Java客户端API.
  • 开发人员可以利用JavaScript来访问库,因为它基于REST.
  • 它具有触发器支持,允许开发人员执行诸如文档合并,审核,版本控制和授权之类的操作.
  • 它可扩展且安全.
  • 它在Windows上本地运行.
  • 它在构建时就考虑到了性能—一台计算机上的存储最多可处理16 TB.

资源资源

尽管它还比较年轻(最初的概念是在2009年左右开发的),但仍有各种资源可用来帮助您开始使用RavenDB。它们包括在线资源,书籍和几个在线社区,您可以在其中提问并与他人共享您的问题和解决方案.

官方资源

以下资源提供了官方网站,文档和开始步骤的列表.

  • 官方网站:RavenDB的在线主页,您可以在其中了解更多信息并下载它.
  • RavenDB文档:这是所有正式文档的存储位置.
  • 休眠Rhinos:在RavenDB上因工作而诞生的公司拥有一个很棒的博客,其中包含许多教程和文章.
  • Ayende.com:Oren Eini的官方博客,他以化名Ayende Rahien写作,并定期发布博客文章,展示正在使用的系统的示例.

在线教程

本节中的教程从入门到更高级,涵盖从一般概念到特定应用程序的所有内容.

  • RavenDB —简介:入门级文章,通过代码示例解释基础知识.
  • RavenDB入门:Code Mag发布的另一篇入门级文章.
  • RavenDB的隐藏功能:本文探讨了RavenDB的两个鲜为人知的功能,并展示了它们如何极大地改善您的应用程序和业务.
  • RavenDB概述:演示文稿,其中包含其功能和特性的高级技术概述.
  • 文档数据库和RavenDB:另一个幻灯片放映,概述了各种文档数据库.
  • 使用RavenDB进行地理空间搜索:更高级的教程,展示了如何执行复杂的地理空间搜索.
  • 休眠Rhinos Youtube频道:在RavenDB上提供了许多视频教程.

图书

如果您喜欢全面的阅读材料,以下书籍将为您提供大量信息和有用的建议.

  • Khaled Tannir撰写的RavenDB 2.x初学者指南(2013):介绍了关键概念并教您从安装到创建文档以及查询索引的所有内容。本书将为您提供创建.NET应用程序的坚实基础。.
  • Brian Ritchie撰写的RavenDB High Performance(2013年):这本书超越了基础知识,并指导您使用系统的丰富功能和可扩展性构建可扩展的应用程序.
  • Itamar Syn-Hershko撰写的RavenDB in Action(2013):完整的指南,涵盖了从基础到深入研究核心功能和技术.

在线社区

如果您在此过程中需要任何帮助,或者只是想按照与您相同的步骤与他人交谈,请考虑加入以下小组.

  • Google网上论坛:一个非常活跃的Google网上论坛,用于常规支持和讨论.
  • StackExchange:所有与编程有关的问题的首选,StackExchange讨论Raven的主题很多.

向前走和乌鸦大师

此列表中的资源只是冰山一角,但是对于任何希望过渡到面向文档的数据库的人来说,应该提供一个不错的起点。一旦掌握了它,我们相信您会想到一些自己的想法。所以现在是时候开始掌握RavenDB.

进一步阅读和资源

我们有更多与编码和开发有关的指南,教程和信息图:

  • ASP资源:了解有关.NET框架的脚本的信息.
  • SQL资源:我们的常规SQL资源,对所有关系数据库开发人员都至关重要.
  • ADO.NET简介:了解有关此系统的全部信息,以便在.NET框架内完全使用任何数据库.

网页寄存终极指南

如果要创建数据库驱动的应用程序,则需要将它们托管在某个位置。查阅我们的《虚拟主机终极指南》。它将解释您做出明智选择所需了解的所有内容.

网页寄存终极指南
网页寄存终极指南

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me