40
Hosted by Tikal. w w w . t i k a l k . c o m Cost-Benefit Open Source Israel JB oss U ser G roup Session 10 / 11.12.2008 Compass By : Shay Banon, Compass Founder

Compass - JBUG presentation

  • Upload
    kimchy

  • View
    2.135

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Compass - JBUG presentation

Hosted by Tikal. w w w . t i k a l k . c o m Cost-Benefit Open Source

Israel JBoss User GroupSession 10 / 11.12.2008

Compass

By : Shay Banon, Compass Founder

Page 2: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Introduction

Page 3: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Relational Model

Search is more than “select ... like “%test%”

Page 4: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

I want Google

Users want any application to be google like

searchable

Page 5: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

More than Google?

We know more

than Google

when it comes to

our application.

Shh, don’t tell

Google

Page 6: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Navigation Model

Actions based on types

Search and Rank based navigation

Page 7: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Integrate Search

Used to be very complex

http://www.kimchy.org/the_birth_of_compass/

Page 8: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

The ubiquitous IR library for search enabling

application

Very powerful

Very low level

Still hard to integrate

Page 9: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Enter Compass

Page 10: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Introducing Compass

Simplify Search

Open Source (Apache Licensed)

3.5 years old (started at version 0.4)

2.1 GA released 1-NOV-2008

2.2 M1 very close

Page 11: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Compass Core

Page 12: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

RSEM - Basic

Page 13: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

RSEM - Converters

Page 14: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

RSEM - Index Settings

Page 15: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

RSEM - Search and Load

Page 16: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

OSEM - Basic

Page 17: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

OSEM Basic - Search & Load

Page 18: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

OSEM - Component

Page 19: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

OSEM Component - Search & Load

Page 20: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

OSEM Basic - Searchable Property

Page 21: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

OSEM - Collections

Page 22: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

More Mappings

More RSEM options

More OSEM options

XSEM - XML to Search Engine Mapping

JSEM - JSON to Search Engine Mapping

Page 23: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Compass Gps

Page 24: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Overview

Integration Module with other “data driven”

frameworks

Mainly integration with ORMs

» Embedded

» Through JPA

» External

Page 25: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Compass Gps Index

DB

SE

ORM Tool

Compass Core

Compass Gps

Application

Mapping

Mapping

1: Index

2: Get Common

Mapping Def

3: Fetch

4: Read

5: Save

6: Write

Page 26: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Compass Gps Mirror

DB

SE

ORM Tool

Compass Core

Compass Gps

Application

Mapping

Mapping

2: Operation

1: Register Event

Listeners

3: Operation

4: Notify Listeners

5: Has Mapping?

6: Operation

7: Operation

Page 27: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Embedded Hibernate

Page 28: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Embedded Hibernate

Page 29: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Embedded JPA - EclipseLink

Page 30: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Embedded JPA - Hibernate

Page 31: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Embedded JPA - OpenJPA

Page 32: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Embedded JPA - TopLink

Page 33: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Embedded JPA - One API

Page 34: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

External JPA

Page 35: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Compass Needle

Page 36: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Overview

Integration with distributed products / libraries.

Store the index on a data grid: GigaSpaces,

Terracotta, Coherence.

Automatically index data grid content such as

GigaSpaces and Coherence.

Page 37: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Index Stored in a Data Grid

Page 38: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Index the Data Grid

Page 39: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Collocated Indexing and Search

Page 40: Compass - JBUG presentation

Hosted by Tikal www.tikalk.com

Compass Future

Open Discussion