Mozilla Full Text Search

1,871 views

Published on

Published in: Technology, News & Politics
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,871
On SlideShare
0
From Embeds
0
Number of Embeds
13
Actions
Shares
0
Downloads
9
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Mozilla Full Text Search

  1. 1. Mozilla, Places and Full Text Index By Kunal
  2. 2. Mozilla <ul><li>Netscape </li></ul><ul><li>Mozilla.org - 1998 </li></ul><ul><li>Mozilla.com - 2003 </li></ul>
  3. 3. Mozilla Framework XPCom Object Chrome, Gecko
  4. 4. XPCOM Component
  5. 5. Beauty <ul><li>Highly extensible codebase </li></ul><ul><li>XPConnect, Javascript, C++ </li></ul><ul><li>Embedding Mozilla </li></ul><ul><ul><li>Layout Engine </li></ul></ul><ul><ul><li>Javascript Engine – Tamarin </li></ul></ul><ul><li>Application Platform - XULRunner </li></ul><ul><li>Firefox (Stripped down mozilla)‏ </li></ul><ul><ul><li>browser </li></ul></ul><ul><ul><li>toolkit </li></ul></ul>
  6. 6. Extension Framework <ul><li>XUL </li></ul><ul><li>Overlays </li></ul><ul><li>Configuration files </li></ul><ul><li>You can use </li></ul><ul><ul><li>Javascript </li></ul></ul><ul><ul><li>COM objects </li></ul></ul><ul><ul><li>Roll your own COM </li></ul></ul><ul><ul><ul><li>JS, c++ </li></ul></ul></ul><ul><ul><li>Now, Python, Java, Ruby, Perl </li></ul></ul>
  7. 7. Netscape Portable Runtime <ul><li>Type </li></ul><ul><li>n/w </li></ul><ul><li>i/o </li></ul><ul><li>String </li></ul><ul><li>memory </li></ul><ul><li>threads </li></ul><ul><li>Safe Ptr </li></ul>
  8. 8. Other Features <ul><li>XPInstall </li></ul>
  9. 9. Infrastructure <ul><li>One of the largest developer code base </li></ul><ul><li>Bugzilla </li></ul><ul><li>Wiki </li></ul><ul><li>Tinderbox </li></ul><ul><li>Bonsai </li></ul><ul><li>MXR </li></ul>
  10. 10. Places <ul><li>New bookmark system </li></ul><ul><li>Currently Enabled in firefox3 alpha 5 </li></ul><ul><li>Aim </li></ul><ul><ul><li>Faster </li></ul></ul><ul><ul><li>API </li></ul></ul><ul><ul><li>Rewrite, seamless </li></ul></ul><ul><li>SQLite </li></ul>
  11. 11. Places: Full Text Indexing <ul><li>Objective: To enable user search through terms among all the visited pages </li></ul><ul><li>Google Desktop Search, Beagle etc.. </li></ul><ul><li>Why? </li></ul><ul><ul><li>Privacy </li></ul></ul><ul><ul><li>API and Extensions </li></ul></ul>
  12. 12. FTI: Design Descision <ul><li>How does indexing work? </li></ul><ul><ul><li>Formal Course </li></ul></ul><ul><ul><li>terms, doc, Posting table </li></ul></ul><ul><ul><li>ranking algorithm </li></ul></ul><ul><li>Clucene? </li></ul><ul><li>FTS1 and FTS2? </li></ul><ul><li>B-Tree? </li></ul><ul><li>Relational Database </li></ul>
  13. 13. Using Relational Database for Full-Text-Index <ul><li>Variable Length Encoding </li></ul><ul><li>Blocks </li></ul><ul><li>Table </li></ul><ul><ul><li>word </li></ul></ul><ul><ul><li>firstdoc </li></ul></ul><ul><ul><li>flags(0, 0 < flags < 128, 128, flags > 128)‏ </li></ul></ul><ul><ul><li>block </li></ul></ul>
  14. 14. Modules <ul><li>Indexing Module </li></ul><ul><li>Analyzer </li></ul><ul><li>Query Parser </li></ul><ul><li>Integration </li></ul>

×