Androsynth

About me:
Website: http://
Email:

Send private message

You must be logged in to send a private message.

Friends

No friends yet.

Activity

  • Androsynth has updated their profile
  • Androsynth commented on the plugin Zend Lucene Search Engine
    It does override current search functionality, although it is using Elgg functions to search for users and tags. The indexing process will eat up memory pretty quickly if you have more than a few thousand objects to index.  I don't have an...
  • Androsynth has updated their profile
  • Androsynth commented on the plugin Zend Lucene Search Engine
    Lucene only returns the GUIDs of all matching objects.  It then uses the ELGG functions: get_entity and elgg_view_entity_list to get and display the entities.  These have the access mechanisms built in to properly display data.
  • Androsynth has a new avatar
    Androsynth
  • Androsynth uploaded a new plugin: Zend Lucene Search Engine
    • @Androsynth AWESOME! Thank you.

      Does this complete overide/replace all searching functions on elgg? I'm assuming so since step 7 is simple SEARCH! :-)

      what kind of load can this generate on the server, during indexing. I'm sure search hitting the index is ridiculously fast :-)

      There are those of us that are on shared hosting at the moment until our communities gain momentum, I'd hate to be shutdown by an indexing operation.

       

    • It does override current search functionality, although it is using Elgg functions to search for users and tags.

      The indexing process will eat up memory pretty quickly if you have more than a few thousand objects to index.  I don't have an exact number, but I think 1k should be indexable on a shared host.

      I initially developed this script on a shared hosting server so I was under the constraints of running the script in under 32M of Ram but I had to update an ecommerce-like catalog of 50k items on a weekly basis.  The solution was to index 300 objects items hour of every day.  Then you mark them as indexed, and once a week you set them all to unindexed.  (fyi: I was able to index ~300 items/minute)

      This solution worked for me, but I didn't put it into the plugin because it is somewhat specific and I wanted this plugin to be as general as possible.  My solution requires a small amount of tweaking to: 1-only get objects where $entity->indexed=0, 2-break out of the loops in the indexdata process after XX items are indexed, 3-set $entity->indexed=1 when it is indexed and 4-Updata metadata set indexed=0 for all indexable objects once a week. This requires two cron jobs, one hourly and one weekly.

      This will at least balance the load of indexing your catalog across the week rather than nightly.  It does require tweaking the php though.

    • Thanks for your great plugin.

      Will it works in 1.7x ?  pls give some idea to work in 1.7x.