FinOps有望降低企业50%+的云成本! 了解详情
写点什么

Compass 2.0:简化、集成及性能提升

  • 2008-05-16
  • 本文字数:1351 字

    阅读完需:约 4 分钟

Compass 项目是基于 Lucene 的一个开源项目,其主旨在于简化将搜索集成到 Java 应用的过程。最近,该项目发布了 2.0 版本。InfoQ 就此采访了 Compass 的创始人 Shay Banon 以获得关于该版本更多更详尽的信息,并且对 Compass 为 Java 社区所做的贡献进行了一番深入的了解。

Banon 罗列了该版本最主要的几个特性在于:

  • 简化 ****O/R 映射(ORM)的集成——所有集成特性,比如实时将 ORM 的变化在搜索索引上生成镜像和完成基于映射(mapping-based)的数据库索等特性,现在可以通过 Hibernate/JPA 的配置文件中的配置属性得以实现。
  • 分布式数据网格的集成——该版本目前可以支持与 GigaSpaces Terracotta Coherence 的集成,用于实现 Lucene 索引存储的方法现在被作为数据网格的一部分。此外,通过 Lucene 类库和工具仍然能够透明地使用 Lucene 索引。
  • 可搜索数据网格功能——在数据网格上发生的变化会通过对象到搜索引擎的映射(Object to Search Engine mapping)以及与 Coherence CacheStore、GigaSpaces 镜像服务的集成自动在 Lucene 索引上生成镜像。
  • 性能优化——Compass 内部的主要强化和 Lucene 2.3 中的优化直接催化了 Compass 性能的提升。
  • Compass 1.2 升级简易——主要的 API 仍然保持不变,有所更改的是一些配置和微小的 API 方面的修改,相关的升级文档( upgrade notes )覆盖了这些变化。由于一些内部修改,导致应用需要重新创建索引(reindex),但总体来说,升级过程相当简单。

另外,Compass 新建了一个项目官方网站: http://www.compass-project.org ,在这个网站上,你可以检索到该版本完整的修改列表

Banon 还描述了 Compass 的核心特性,以及如何将 Compass 与 Solr Nutch 和基础 Lucene 进行对比:

Compass 的核心目标在于将搜索集成到 Java 应用的过程进行简化。Compass 试图在结合搜索引擎工作的时候简化 API。对于习惯了 ORM 类库的开发人员来说,这些 API 应该非常熟悉。Compass 的另一主要特性是,它能够轻松地将 Java 对象模型映射到搜索引擎中,也能够映射另外一些格式,比如像 XML 和 Map 类似的结构。更重要的是,Compass 不仅仅能轻松地映射数据,还能提供应用与 ORM 类库、数据网格等天衣无缝的集成。关于 Lucene,Compass 创建于 Lucene 之上。通过 Compass,你可以得到 Lucene 所有的特性,但 Compass 试图简化其用法,尤其是在一些典型的 Java 应用中。至于 Solr,我猜想它的目标也是为了简化 Lucene,但它采用的方法和 Compass 不同,它将暴露了一个 http 服务用来进行索引和搜索,但是我也听说它的一个“嵌入式”版本也将公布于世。我想最主要的不同点是两者对于如何将搜索集成到应用程序中持有不同的看法。我只想指出的是,在 Compass 上创建一个 http 服务非常简单,已经有很多用户在 Compass 上创建了 http 服务。

当被问到 Compass 的未来计划的时候,Banon 表示 Compass 大部分特性都是由用户需求驱动开发的。潜在的未来动向包括面向一些不同的索引格式(比如 JSON);提供更全面、更多特性的数据网格集成来实现托管的索引和搜索(colocated indexing and searching);以及提供一个 UI 层的搜索集成来创造更好的开箱即用体验。Banon 表示他非常欢迎和期待关于 Compass 的各种反馈和帮助。

查看英文原文: Compass 2.0: Simplification, integration, and performance improvements

2008-05-16 01:572275
用户头像

发布了 71 篇内容, 共 18.6 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

解锁极狐GitLab 自动化功能:Webhook 触发 Pipeline 与计划流水线

极狐GitLab

DevOps pipeline ChatOps webhook ChatGPT

全息电网 数字孪生智慧电网Web3D运维系统

2D3D前端可视化开发

智慧电网 数字电网 智能电网 数字孪生智慧电网 智慧电网三维可视化

干货|常用3D建模软件有哪些?

Finovy Cloud

3DMAX Autodesk Maya 3D软件

跬智信息 (Kyligence) 入选2022年度上海市优质大数据服务供应商目录

Kyligence

大数据 数据分析

【1.27-2.3】写作社区优秀技术博文一览

InfoQ写作社区官方

热门活动 优质创作周报

抖音春晚直播观看人数破1.3亿,火山引擎技术助力“新年俗”新体验

火山引擎边缘云

云原生 CDN 边缘计算 抖音 视频云

写给go开发者的gRPC教程-protobuf基础

凉凉的知识库

golang 微服务 gRPC protobuf 微服务框架

Zebec 上线投票治理机制,全新流支付生态正在起航

EOSdreamer111

湖仓一体电商项目(十八):业务实现之编写写入DWD层业务代码

Lansonli

数据湖 湖仓一体电商项目

官宣:计算中间件 Apache Linkis 正式毕业成为 Apache 顶级项目

腾源会

开源

案例研究:让线上故障沉淀为团队的经验

石云升

极客时间 2月月更 技术领导力实战笔记

Zebec 上线投票治理机制,全新流支付生态正在起航

鳄鱼视界

深度剖析 Linux 伙伴系统的设计与实现

bin的技术小屋

Linux 内存管理 Linux内核 内存分配 Linux内核源码

2/8 19:00 直播 | StarRocks 实战系列第一期--部署&导入

StarRocks

数据库

基于 Flink+Pravega 的游戏服务器监控与调节系统设计

Apache Flink

大数据 flink 实时计算

喜讯!云起无垠实力入选多项中国网络安全行业全景图

云起无垠

gcc属性__attribute__((naked))使用场景

SkyFire

GCC 内嵌汇编

Jackson 的 DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES

HoneyMoose

大文件传输软件的优势有哪些?-镭速传输

镭速

青云 KubeSphere 与 OpenCloudOS 完成技术兼容互认证

OpenCloudOS

云原生 操作系统 KubeSphere

信用卡APP评测系列——工银e生活5.0打造个人生活服务平台,引领用户美好生活

易观分析

金融 银行 信用卡

C#/VB.NET 在Excel中添加水印

在下毛毛雨

C# .net Excel 添加水印

金兔迎福报、新春第一炮【2022 中国开源年度报告】!

腾源会

开源

快速入门pandas进行数据挖掘数据分析[多维度排序、数据筛选、分组计算、透视表](一)

汀丶人工智能

Python 数据挖掘 数据分析 pandas

我发现买不起自己出版的图书了,这到底是咋回事?

冰河

程序员 并发编程 高并发 架构师 编程开发

提名倒计时! | 2022 龙蜥社区优秀贡献者

OpenAnolis小助手

技术 操作系统 龙蜥社区 开源贡献者 奖项报名

沿着数字中国的大江大河,领略云上三峡

脑极体

华为云 三峡

活动预告 | 2023 QCon 全球软件开发大会 - AI 基础架构论坛

第四范式开发者社区

人工智能 机器学习 数据库 开源 特征

第三届腾讯Light·技术公益创造营正式启动:聚焦三大议题,探索技术公益可持续路径​

OpenCloudOS

开源

架构训练营模块四作业

gigifrog

架构训练营

Zebec 上线投票治理机制,全新流支付生态正在起航

股市老人

  • 需要帮助,请添加网站小助手,进入 InfoQ 技术交流群
Compass 2.0:简化、集成及性能提升_Java_Ryan Slobojan_InfoQ精选文章