• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: How to achieve a fuzzy match searcher
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How to achieve a fuzzy match searcher


  • Subject: Re: How to achieve a fuzzy match searcher
  • From: David LeBer <email@hidden>
  • Date: Sat, 17 Oct 2009 15:43:50 -0400


On 2009-10-17, at 3:15 PM, Gustavo Pizano wrote:

Asa.. THANKS TONS!!!!!! :D:D:D.

So I don't need to add anything else to the index ?, thats cool, I just need to initialize it once then.. let's say before deploying so the index file will be created with the current data, and once the users start updating the table it will get update it?.

Yes.


G.


On Oct 17, 2009, at 8:27 PM, David LeBer wrote:


On 2009-10-17, at 1:41 PM, Asa Hardcastle wrote:

As your EOs are modified, they are reindexed, I believe. Attached is a sample.

Yeah. ERIndexing ties into the EC notifications and does a pretty good job of doing a targeted re-indexing any updated entities. However, you do need to manually trigger a full index if you change the model, decide you want to index different things, or import content outside of your application.



:)

Asa


<ProductInFileStore.indexModel>




On Oct 17, 2009, at 4:17 AM, Gustavo Pizano wrote:

Asa,

Yes yesterday I was looking that api trying to understand where to put that code, now that you mention it then it must be a file in the Resource folder... hehe.. So if I got it right, I have to create a file Document.indexModel and setup there all what the api doc shows, then I loaded with :

ERAutoIndex  index =  (ERAutoIndex)ERIndex.indexNamed("Document");
...
...

An example will be GREAT :D:D, you will make my weekend.. :D:D:D.
A few questions:
- Im expecting my users to modify the table TransFromBase(the one I want to index), so I will need once they modify it, add the EO to the index? isn't it.?
- Also im expecting this modifications on the table to done by more than one user at the same time, fortunately I made sure that they are not modifying the same records, :P, in fact as I design it its not possible to do it, So what should I have into consideration then?


Thanks a LOT

Gustavo



On Oct 16, 2009, at 11:18 PM, Asa Hardcastle wrote:

Hi Gustavo,

I run this in my application startup. Do you have an indexModel file in your Resource folder? This file is used by ERAutoIndex to specify the entities and attributes to index.

http://webobjects.mdimension.com/hudson/job/Wonder53/javadoc/er/indexing/ERAutoIndex.html

I have an example that I use for a Product entity if you need an example.

Asa





On Oct 16, 2009, at 4:58 PM, Gustavo Pizano wrote:

Asa hello.

Thanks for the code,

few questions the index then its created each time the instance of the component its initialized isn't it? or can I put this in the Application.java, so it will be initialized at the beginning...
Also instead of passing all the EOModel I can pass the EOEntity, this will index me all the records in the table of that EOEntity isn't it?


Well I will see how it goes, and then the funny part. ... the searcher.. :P

Thanks a lot for the code.


G.


On Oct 16, 2009, at 7:01 PM, Asa Hardcastle wrote:

Hi Gustavo,

This is the code I use to do an initial index on a large product database:

// MyIndexModel.indexModel is located in Resources folder
ERAutoIndex autoIndex = (ERAutoIndex)ERIndex.indexNamed ("MyIndexModel");
NSArray<ERAutoIndex> indices = new NSArray<ERAutoIndex>(new ERAutoIndex[] { autoIndex } );
ERIndexer indexer = new ERIndexer( indices );
EOModel eomodel = EOModelGroup.defaultGroup().modelNamed ("MyModel");
indexer.indexAllObjects(eomodel);


The only caveat is that I modified the ERIndexing framework slightly, and I do not have the code in front of me or checked in to SVN, arg... it was one of those special cases, and it is on a hard drive that I had in my previous development machine.

Hope this helps,

Asa


On Oct 16, 2009, at 2:49 AM, Gustavo Pizano wrote:

Ok Im reading the LIA, so if I understand good I must first create an Index, this is the ERXIndex, isn't it?, in the examples of the book they create a IndexWriter, dunno what is this in the er.indexing. Then they create a document and add to the document the file they are indexing, theyn thye add the keywrord for the filepath, then they add the docuemtn to the writer.

Let's put that in the WOrld
So the entity I want to index its called TransFromBase, but from that I just want to index the attribute trans.
So following the example,
1. Create the index.
I see ERIndex, and ERAutoIndex, I don't understand the documentation well on what ERXAutoIndex configuration, is the comment in api doc, the indexDef NSDictionary must pass in the Constructor?. Anyway I have the follwoing :
ERIndex index = ERIndex.indexNamed("fuzzyIndex");
-Now I need to create the documents for each EO, this is like 50.000 !!!. becuase createDocumentForObjetcs its oprotected, I guess I must use then
index.addObjectsToIndex(session().defaultEditingContext (),tbArray); //previusly fetched.


And now I dunno what else to do. :( I need to specify that I want to index the tran attribute only, becyase on that its what Im gonna search, ..

Any more ideas that can help me please?

Thanks

Gustavo

PS: Oh yes and then I need to create the searcher.




On Fri, Oct 16, 2009 at 7:37 AM, Gustavo Pizano <email@hidden > wrote:
I wish I had been there, this is driving me crazy already.


I wanna make it work... :(

G.


On Thu, Oct 15, 2009 at 6:14 PM, David Avendasora <email@hidden > wrote:
WOWODC Presentation!!


Dave


On Oct 15, 2009, at 10:53 AM, David LeBer wrote:


On 2009-10-15, at 10:49 AM, Kieran Kelleher wrote:

Simon,

I recommend the "Lucene in Action" book .... easy to read and digest ....... excellent reference book. IIRC the book author is the original author of Lucene. Buying it on amazon is a no- brainer if you are trying to use ERIndexing IMHO.

Regards, Kieran

I agree.

I didn't really find any documentation when I used ERIndexing, but the LIA book along with the source made it pretty easy.

I really should go back and document what I did :-)

On Oct 15, 2009, at 10:19 AM, Simon McLean wrote:

do you know if there are there any docs on erindexing ? or maybe an old wowodc presentation or something to get me started ? i've checked the usual places (package.html, wiki, google)

if not i'll start poking around the code.

thanks, simon


Depending on how 'fuzzy' you really need your matches to be, you might want to check out Lucene. We've had great success using it to return type ahead suggestions. Results from the Lucene index are wickedly fast.


ERIndexing in Wonder wraps Lucene.

;david

--
David LeBer
Codeferous Software
'co-def-er-ous' adj. Literally 'code-bearing'
site:   http://codeferous.com
blog:   http://davidleber.net
profile:        http://www.linkedin.com/in/davidleber
twitter:        http://twitter.com/rebeld
--
Toronto Area Cocoa / WebObjects developers group:
http://tacow.org





_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden )
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden )
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden


;david

--
David LeBer
Codeferous Software
'co-def-er-ous' adj. Literally 'code-bearing'
site:   http://codeferous.com
blog:   http://davidleber.net
profile:        http://www.linkedin.com/in/davidleber
twitter:        http://twitter.com/rebeld
--
Toronto Area Cocoa / WebObjects developers group:
http://tacow.org




_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden )
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden



_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden )
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden


_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden )
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden





_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden

;david

--
David LeBer
Codeferous Software
'co-def-er-ous' adj. Literally 'code-bearing'
site: 	http://codeferous.com
blog: 	http://davidleber.net
profile:	http://www.linkedin.com/in/davidleber
twitter:	http://twitter.com/rebeld
--
Toronto Area Cocoa / WebObjects developers group:
http://tacow.org




_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden


;david

--
David LeBer
Codeferous Software
'co-def-er-ous' adj. Literally 'code-bearing'
site: 	http://codeferous.com
blog: 	http://davidleber.net
profile:	http://www.linkedin.com/in/davidleber
twitter:	http://twitter.com/rebeld
--
Toronto Area Cocoa / WebObjects developers group:
http://tacow.org




_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden
  • Follow-Ups:
    • Re: How to achieve a fuzzy match searcher
      • From: Gustavo Pizano <email@hidden>
References: 
 >How to achieve a fuzzy match searcher (From: Gustavo Pizano <email@hidden>)
 >Re: How to achieve a fuzzy match searcher (From: Gustavo Pizano <email@hidden>)
 >Re: How to achieve a fuzzy match searcher (From: David LeBer <email@hidden>)
 >Re: How to achieve a fuzzy match searcher (From: Simon McLean <email@hidden>)
 >Re: How to achieve a fuzzy match searcher (From: Kieran Kelleher <email@hidden>)
 >Re: How to achieve a fuzzy match searcher (From: David LeBer <email@hidden>)
 >Re: How to achieve a fuzzy match searcher (From: David Avendasora <email@hidden>)
 >Re: How to achieve a fuzzy match searcher (From: Gustavo Pizano <email@hidden>)
 >Re: How to achieve a fuzzy match searcher (From: Gustavo Pizano <email@hidden>)
 >Re: How to achieve a fuzzy match searcher (From: Asa Hardcastle <email@hidden>)
 >Re: How to achieve a fuzzy match searcher (From: Gustavo Pizano <email@hidden>)
 >Re: How to achieve a fuzzy match searcher (From: Asa Hardcastle <email@hidden>)
 >Re: How to achieve a fuzzy match searcher (From: Gustavo Pizano <email@hidden>)
 >Re: How to achieve a fuzzy match searcher (From: Asa Hardcastle <email@hidden>)
 >Re: How to achieve a fuzzy match searcher (From: David LeBer <email@hidden>)
 >Re: How to achieve a fuzzy match searcher (From: Gustavo Pizano <email@hidden>)

  • Prev by Date: Re: How to achieve a fuzzy match searcher
  • Next by Date: Re: Any way to remove a WOLips toolbar
  • Previous by thread: Re: How to achieve a fuzzy match searcher
  • Next by thread: Re: How to achieve a fuzzy match searcher
  • Index(es):
    • Date
    • Thread