领先一步
VMware 提供培训和认证,以加速您的进步。
了解更多受云平台兴起启发的主要趋势之一是对传统关系数据库的替代存储技术的兴趣日益增长。一种这样的存储机制是Redis,这是一种高性能的键/值存储,在未来的云基础设施中发挥着重要作用。
Grails 社区对 Redis 非常感兴趣,并且紧随Redis 2.0.0 版本发布之后,我们很高兴地宣布GORM for Redis 里程碑 1现已可用。
什么是 GORM for Redis?简单来说,它允许习惯于使用诸如动态查找器、条件查询和命名查询等功能的 Grails 开发人员利用 Redis 作为其底层存储,而不是 Hibernate。
一旦您启动并运行 Redis,就可以从 Grails 命令行安装 GORM for Redis
grails install-plugin redis
如果您卸载 Hibernate 插件,则 grails-app/domain 中的所有域类都将变成 Redis 实体,否则您可以使用以下方法将单个实体指定为可持久化的 Redis 实体
static mapWith = "redis"
一旦您的 Redis 域类准备就绪,您就可以继续使用常规的 GORM API 方法,例如 save()、delete()、动态查找器等。
如果您想构建自己的索引,则还包括一个低级 API
def theSimpsons = Person.findAllByLastName("Simpson")
def list = redis.list("the.simpsons")
theSimpsons.each { list << it.id }
然后查询索引
def theSimpsons = redis.entities(Person, "the.simpsons")
theSimpsons.each {
println it.firstName
}
请参阅完整文档,以获取有关使用低级 API 和其他功能的更多信息。还有一个示例应用程序可供下载。
Redis 插件本身构建在Inconsequential代码库之上,该代码库被设计为 NoSQL 存储之上的抽象层。我们还在进行对其他替代存储(如 Cassandra 和 JCR)的支持。
该项目是开源的,我们有兴趣与 NoSQL 社区合作,构建与 GORM for Redis 中发现的类似支持。有一个 GORM TCK,您可以针对实现运行以测试兼容性,我们会继续扩展它以涵盖尽可能多的 GORM 功能。
如果您有兴趣帮助我们完成这项任务,请在 Inconsequential邮件列表上与我们联系。
这是一个里程碑版本,因此我们希望在接近里程碑 2 和最终发布时听到您的反馈。
享受!