index plug in basics

Upload: flavio-percoco-premoli

Post on 10-Apr-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/8/2019 Index Plug in Basics

    1/17

    Indexing plugins: Basics and Concepts!For those that want mongodb to prepare coffee

    Flavio Percoco [email protected]

    Research & Development, The Net Planet Europe

    October 04th, 2010

    mailto:[email protected]:[email protected]
  • 8/8/2019 Index Plug in Basics

    2/17

    Indexing plugins: Basics and Concepts!

    Introduction

    The When and Why

    Creating an IndexPlugin is not a big deal and the most important thing is that anyonecan do it to satisfice his needs but when/why should someone put his hands into this?

  • 8/8/2019 Index Plug in Basics

    3/17

    Indexing plugins: Basics and Concepts!

    IndexPlugin

    Why

    should I be interested?

    Why not?. . .MongoDBs index system didnt satisfice my needs.

    I d i l i B i d C !

  • 8/8/2019 Index Plug in Basics

    4/17

    Indexing plugins: Basics and Concepts!

    IndexPlugin

    When

    should I create a new IndexPlugin?

    You need to index data in a certain manner.

    You need to use/query an external indexing system.

    You need to extend the way you query your indexed data.

    You dont have anything else to do.

    I d i l i B i d C t !

  • 8/8/2019 Index Plug in Basics

    5/17

    Indexing plugins: Basics and Concepts!

    IndexPlugin

    When

    should I create a new IndexPlugin?

    You need to index data in a certain manner.

    You need to use/query an external indexing system.

    You need to extend the way you query your indexed data.

    You dont have anything else to do.

    Indexing plugins: Basics and Concepts!

  • 8/8/2019 Index Plug in Basics

    6/17

    Indexing plugins: Basics and Concepts!

    IndexPlugin

    When

    should I create a new IndexPlugin?

    You need to index data in a certain manner.

    You need to use/query an external indexing system.

    You need to extend the way you query your indexed data.

    You dont have anything else to do.

    Indexing plugins: Basics and Concepts!

  • 8/8/2019 Index Plug in Basics

    7/17

    Indexing plugins: Basics and Concepts!

    IndexPlugin

    When

    should I create a new IndexPlugin?

    You need to index data in a certain manner.

    You need to use/query an external indexing system.

    You need to extend the way you query your indexed data.

    You dont have anything else to do.

    Indexing plugins: Basics and Concepts!

  • 8/8/2019 Index Plug in Basics

    8/17

    Indexing plugins: Basics and Concepts!

    IndexPlugin

    Classes

    Diving into the API

    IndexPlugin: Base class that represents a plugin.

    IndexType: Represents the plugin instance. A single instance will be created foreach plugin which allow mongodb to keep cache.

    Cursor: Base Cursor class used to iterate over the results found. It is based onthe internal mongodb btree index system.

    Command: Used to create custom commands.

    Indexing plugins: Basics and Concepts!

  • 8/8/2019 Index Plug in Basics

    9/17

    Indexing plugins: Basics and Concepts!

    IndexPlugin

    Classes

    Diving into the API

    IndexPlugin: Base class that represents a plugin.

    IndexType: Represents the plugin instance. A single instance will be created foreach plugin which allow mongodb to keep cache.

    Cursor: Base Cursor class used to iterate over the results found. It is based onthe internal mongodb btree index system.

    Command: Used to create custom commands.

    Indexing plugins: Basics and Concepts!

  • 8/8/2019 Index Plug in Basics

    10/17

    g p g p

    IndexPlugin

    Classes

    Diving into the API

    IndexPlugin: Base class that represents a plugin.

    IndexType: Represents the plugin instance. A single instance will be created foreach plugin which allow mongodb to keep cache.

    Cursor: Base Cursor class used to iterate over the results found. It is based onthe internal mongodb btree index system.

    Command: Used to create custom commands.

    Indexing plugins: Basics and Concepts!

  • 8/8/2019 Index Plug in Basics

    11/17

    g g

    IndexPlugin

    Classes

    Diving into the API

    IndexPlugin: Base class that represents a plugin.

    IndexType: Represents the plugin instance. A single instance will be created foreach plugin which allow mongodb to keep cache.

    Cursor: Base Cursor class used to iterate over the results found. It is based onthe internal mongodb btree index system.

    Command: Used to create custom commands.

    Indexing plugins: Basics and Concepts!

  • 8/8/2019 Index Plug in Basics

    12/17

    IndexPlugin

    Limitations

    What cant I do with an IndexPlugin?

    Index data outside mongodb. SERVER-1436

    Indexing plugins: Basics and Concepts!

  • 8/8/2019 Index Plug in Basics

    13/17

    IndexPlugin

    Suggestions

    What should/shouldnt I do?

    Extend mongodbs internal classes.

    Keep your mongodb source files up to date.

    Write as many cursor classes as you need.

    Let mongodb know whats happening.

    Indexing plugins: Basics and Concepts!

  • 8/8/2019 Index Plug in Basics

    14/17

    IndexPlugin

    Suggestions

    What should/shouldnt I do?

    Extend mongodbs internal classes.

    Keep your mongodb source files up to date.

    Write as many cursor classes as you need.

    Let mongodb know whats happening.

    Indexing plugins: Basics and Concepts!I d Pl i

  • 8/8/2019 Index Plug in Basics

    15/17

    IndexPlugin

    Suggestions

    What should/shouldnt I do?

    Extend mongodbs internal classes.

    Keep your mongodb source files up to date.

    Write as many cursor classes as you need.

    Let mongodb know whats happening.

    Indexing plugins: Basics and Concepts!I de Pl gi

  • 8/8/2019 Index Plug in Basics

    16/17

    IndexPlugin

    Suggestions

    What should/shouldnt I do?

    Extend mongodbs internal classes.

    Keep your mongodb source files up to date.

    Write as many cursor classes as you need.

    Let mongodb know whats happening.

    Indexing plugins: Basics and Concepts!The End

  • 8/8/2019 Index Plug in Basics

    17/17

    The End

    A little bit about me

    Full Name: Flavio Percoco Premoli

    IRC: FlaPer87 at irc.freenode.net

    Twitter: FlaPer87

    blog: http://www.flaper87.org

    e-mail: [email protected]

    Anywhere else: FlaPer87

    Short Background:

    GNOME a11y and Open a11y Contributor (MouseTrap[http://live.gnome.org/MouseTrap])

    Open Source Developer/Contributor (Web and Desktop)

    R&D Developer at The Net Planet EuropeKnowledge Management SystemsSearch EnginesIndexing EnginesCloud ComputingNoSQL Technologies

    Linux Lover/User and Mac user too

    http://www.flaper87.org/mailto:[email protected]:[email protected]://www.flaper87.org/