Re: ERIndexing (was: How to achieve a fuzzy match searcher)

2009-10-20 Thread Johnny Miller
Hi Anjo, I should qualify that I'm not using ERIndexing but my own homegrown version of a Lucene index. In my solution I have EOs that update their index when their state transition changes i.e. awakeFromInsertion, didDelete etc... After reading your post I became nervous that I might ha

Re: ERIndexing (was: How to achieve a fuzzy match searcher)

2009-10-19 Thread Anjo Krank
The changes go into two queues, so there is no telling which order they get in two different instances. Cheers, Anjo Am 19.10.2009 um 22:46 schrieb Johnny Miller: Hi Anjo, I kind of understand what you are saying but I have a couple of questions. Wouldn't p1 and p2 have to be editing

Re: ERIndexing (was: How to achieve a fuzzy match searcher)

2009-10-19 Thread Johnny Miller
Hi Anjo, I kind of understand what you are saying but I have a couple of questions. Wouldn't p1 and p2 have to be editing the same EO for the index to become out of sync with the database? If you have two users editing the same EO wouldn't the normal WO mechanisms resolve the issue? T

Re: ERIndexing (was: How to achieve a fuzzy match searcher)

2009-10-19 Thread Josh Paul
FWIW, I've used the OpenBase Lucene stored procedures in an app, and been quite happy with the results. ___ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list (Webobjects-dev@lists.apple.com) Help/Unsubscribe

Re: ERIndexing (was: How to achieve a fuzzy match searcher)

2009-10-19 Thread Asa Hardcastle
We do what David is describing, but how about this: - one instance makes the changes and updates to the lucene index - many instances may make changes to the databases, but use change notification to propagate updates, by doing so the lucene instance makes the appropriate updates to the luce

Re: ERIndexing (was: How to achieve a fuzzy match searcher)

2009-10-19 Thread David LeBer
On 2009-10-19, at 9:23 AM, Anjo Krank wrote: It's not a matter of thread safety, it's a matter of data in lucene being the same as in your DB. When you run with multiple instances and have heavy edits, you can easily construct a case like: p1 changes data, p2 changes data, p2 updates index

Re: ERIndexing (was: How to achieve a fuzzy match searcher)

2009-10-19 Thread Anjo Krank
It's not a matter of thread safety, it's a matter of data in lucene being the same as in your DB. When you run with multiple instances and have heavy edits, you can easily construct a case like: p1 changes data, p2 changes data, p2 updates index, p1 updates index. When you only have one edi

Re: ERIndexing (was: How to achieve a fuzzy match searcher)

2009-10-19 Thread David LeBer
On 2009-10-19, at 8:26 AM, David LeBer wrote: On 2009-10-19, at 8:13 AM, Mike Schrag wrote: it's not like you wouldn't have the exact same problems in lucene- proper, though ... We are using ERIndexing for a multiple instance single server deployment. However, the app is readonly for the

Re: ERIndexing (was: How to achieve a fuzzy match searcher)

2009-10-19 Thread David LeBer
On 2009-10-19, at 8:13 AM, Mike Schrag wrote: it's not like you wouldn't have the exact same problems in lucene- proper, though ... We are using ERIndexing for a multiple instance single server deployment. However, the app is readonly for the indexed EOs, there is an admin app that writes

Re: ERIndexing (was: How to achieve a fuzzy match searcher)

2009-10-19 Thread Anjo Krank
it's not like you wouldn't have the exact same problems in lucene- proper, though ... Yeah. In particular the multi instance thing would still need implementing. Probaly sth like the jgroups notifications... Cheers, Anjo PS: I wrote this thing for one particular purpose: to have my one- i

Re: ERIndexing (was: How to achieve a fuzzy match searcher)

2009-10-19 Thread Asa Hardcastle
Don't give up hope! The severe drawbacks that Anjo describes are worth solving, in my opinion. It isn't just about fast searching, it is about the incredible flexibility that Lucene provides. Resolving easily to EO is a big benefit too. Asa On Oct 19, 2009, at 7:50 AM, Gustavo Pizano

Re: ERIndexing (was: How to achieve a fuzzy match searcher)

2009-10-19 Thread Mike Schrag
it's not like you wouldn't have the exact same problems in lucene- proper, though ... On Oct 19, 2009, at 7:50 AM, Gustavo Pizano wrote: NICE!, now my hopes are gone!. so I guess I must make use de facto lucene framework. and follow the examples in LIA? ok.. what can one do... :( thx G.

Re: ERIndexing (was: How to achieve a fuzzy match searcher)

2009-10-19 Thread Gustavo Pizano
NICE!, now my hopes are gone!. so I guess I must make use de facto lucene framework. and follow the examples in LIA? ok.. what can one do... :( thx G. On Mon, Oct 19, 2009 at 1:45 PM, Anjo Krank wrote: > Be aware that ERIndexing is only an experiment (and was write-only code, I > don't use it

ERIndexing (was: How to achieve a fuzzy match searcher)

2009-10-19 Thread Anjo Krank
Be aware that ERIndexing is only an experiment (and was write-only code, I don't use it yet). In particular it has several severe drawbacks: - it doesn't really handle multiple instances (possibly) or servers (definitely). That means, for the cases where you actually *do* need the speed o

Re: How to achieve a fuzzy match searcher

2009-10-19 Thread Asa Hardcastle
Hi Gustavo, I think you may need to override finishInitialization in Application.java (which I assume extends ERXApplication and calls ERXApplication.main(argv, Application.class); in main ) @Override public void finishInitialization() { super.finishInitialization(); NSLo

Re: How to achieve a fuzzy match searcher

2009-10-19 Thread Gustavo Pizano
MMM :(:(.. something is wrong: [2009-10-19 9:16:52 CEST] java.lang.IllegalArgumentException: Attempt to insert null into an com.webobjects.foundation.NSArray. it happens when Im doing this, NSArray indices = new NSArray(new ERAutoIndex[] { autoIndex } ); so the line before ERAutoIndex auto

Re: How to achieve a fuzzy match searcher

2009-10-19 Thread Gustavo Pizano
David. Thanks. Im placing this code: NSLog.out.appendln("Setting the index"); ERAutoIndex autoIndex = (ERAutoIndex)ERIndex.indexNamed("TransFromBaseIndexs"); NSArray indices = new NSArray(new ERAutoIndex[] { autoIndex } ); ERIndexer indexer = new ERIndexer( indices

Re: How to achieve a fuzzy match searcher

2009-10-17 Thread David LeBer
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 user

Re: How to achieve a fuzzy match searcher

2009-10-17 Thread Gustavo Pizano
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?.

Re: How to achieve a fuzzy match searcher

2009-10-17 Thread David LeBer
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 manual

Re: How to achieve a fuzzy match searcher

2009-10-17 Thread Asa Hardcastle
As your EOs are modified, they are reindexed, I believe. Attached is a sample. :) Asa ProductInFileStore.indexModel Description: Binary data 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,

Re: How to achieve a fuzzy match searcher

2009-10-17 Thread Gustavo Pizano
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 loade

Re: How to achieve a fuzzy match searcher

2009-10-16 Thread Asa Hardcastle
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

Re: How to achieve a fuzzy match searcher

2009-10-16 Thread Gustavo Pizano
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

Re: How to achieve a fuzzy match searcher

2009-10-16 Thread Asa Hardcastle
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 indices = new NSArray(new ERAutoIndex[] { autoIndex } ); ERIndex

Re: How to achieve a fuzzy match searcher

2009-10-15 Thread Gustavo Pizano
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 a

Re: How to achieve a fuzzy match searcher

2009-10-15 Thread Gustavo Pizano
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 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: >>

Re: How to achieve a fuzzy match searcher

2009-10-15 Thread David Avendasora
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 Lu

Re: How to achieve a fuzzy match searcher

2009-10-15 Thread David LeBer
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

Re: How to achieve a fuzzy match searcher

2009-10-15 Thread Kieran Kelleher
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 On Oct 15, 2009, at 10:19 A

Re: How to achieve a fuzzy match searcher

2009-10-15 Thread Simon McLean
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 match

Re: How to achieve a fuzzy match searcher

2009-10-15 Thread Gustavo Pizano
Hello All. What would be the best way to implement this, I mean, the server where Im deploying right now its a G5, with 3 GB Ram, and I need the fuzzy matches to be as fast as possible, So I was thininking to surround the textefield where the user can type with a WOForm, and place inside a AjaxOb

Re: How to achieve a fuzzy match searcher

2009-10-09 Thread Gustavo Pizano
Well I don't need to be 100% exact, but let's say an 80%, Im looking at the 2 algorithms that Andri suggested, also i ERXIndexes wraps Lucene then I will take a look at also. if I understood good, these algorigthms chech the strings and return a number which means the number of changes I have to

Re: How to achieve a fuzzy match searcher

2009-10-09 Thread David LeBer
On 2009-10-09, at 8:39 AM, Gustavo Pizano wrote: mm I have seen the ERXStringUtilities has some fuzzy matcher stuff, can somebody explain me how can (if possible) use this in my case? I dodn't get it .. whats the fuzzymatchercleaner? G. On Fri, Oct 9, 2009 at 1:51 PM, Gustavo Pizano >

Antw: How to achieve a fuzzy match searcher

2009-10-09 Thread Andri vonAllmen
Hi Gustavo, "approximate string mathcing" is the keyword. The most performant method is (most likely) achieved by using the Levenstein-Algorithm (you'll find many examples for this one, e.g.: http://www.merriampark.com/ld.htm#JAVA). Another one would be the Boyer-Moore Algorithm (in one of its m

Re: How to achieve a fuzzy match searcher

2009-10-09 Thread Gustavo Pizano
mm I have seen the ERXStringUtilities has some fuzzy matcher stuff, can somebody explain me how can (if possible) use this in my case? I dodn't get it .. whats the fuzzymatchercleaner? G. On Fri, Oct 9, 2009 at 1:51 PM, Gustavo Pizano wrote: > HEllo, ok this is what I need to think about: > >

How to achieve a fuzzy match searcher

2009-10-09 Thread Gustavo Pizano
HEllo, ok this is what I need to think about: I have a table called TransFromBase which containes slovak translations of english words/phrases , I want to allow the user to choose an option shown after he start typing a TransFromBase for a given English Phrase, Im rememebering my AI class, but I