Return-Path: Delivered-To: apmail-lucene-java-user-archive@www.apache.org Received: (qmail 18085 invoked from network); 30 May 2010 20:11:55 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 30 May 2010 20:11:55 -0000 Received: (qmail 1717 invoked by uid 500); 30 May 2010 20:11:53 -0000 Delivered-To: apmail-lucene-java-user-archive@lucene.apache.org Received: (qmail 1666 invoked by uid 500); 30 May 2010 20:11:53 -0000 Mailing-List: contact java-user-help@lucene.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: java-user@lucene.apache.org Delivered-To: mailing list java-user@lucene.apache.org Received: (qmail 1658 invoked by uid 99); 30 May 2010 20:11:53 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 30 May 2010 20:11:53 +0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of visual.logic@gmail.com designates 209.85.212.48 as permitted sender) Received: from [209.85.212.48] (HELO mail-vw0-f48.google.com) (209.85.212.48) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 30 May 2010 20:11:46 +0000 Received: by vws1 with SMTP id 1so3135749vws.35 for ; Sun, 30 May 2010 13:11:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:content-type:mime-version :subject:from:in-reply-to:date:content-transfer-encoding:message-id :references:to:x-mailer; bh=bQFGU73rq2dlxHODYyq7hzVhmzZscdnSGrbzOieuXss=; b=iUY+f228deYgfU3elJEihmYbFygoYIf0vnUuqk6dxWHajYLOtzeNS/8clKi8qO64qv Cz7SgRjHbM+JQiMswTZJf3zsKy9ehscCuPPfuC7wVvJKrvH6jijrobRwDjeIS3WVRH6H criL2ev6kMAZL6ksKbx0+RRNeb2zPC9Neo5IQ= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=content-type:mime-version:subject:from:in-reply-to:date :content-transfer-encoding:message-id:references:to:x-mailer; b=J/me32ZPuG15Xwww4gmnfuO4vJB7Cc+7ML9soUWQVK4oVWbWzEwhMbnpsrLZIGdzxe oay6ovlTogcuwzJ6wJKw7RxmEe5MFysqaKnyIe0Il7Bs1vjL8pe5atAP00cffJYotM+U oLDMoVTdWuiwU6whBvi5GRq1gFUBL9+4m7C/M= Received: by 10.220.123.136 with SMTP id p8mr2592523vcr.244.1275250285399; Sun, 30 May 2010 13:11:25 -0700 (PDT) Received: from [192.168.100.159] (205-200-14-92.static.mts.net [205.200.14.92]) by mx.google.com with ESMTPS id s9sm21386343vcr.15.2010.05.30.13.11.23 (version=TLSv1/SSLv3 cipher=RC4-MD5); Sun, 30 May 2010 13:11:24 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Apple Message framework v1078) Subject: Re: Using JSON for index input and search output From: Visual Logic In-Reply-To: Date: Sun, 30 May 2010 15:11:17 -0500 Content-Transfer-Encoding: quoted-printable Message-Id: <8815C552-9B8A-4963-AD59-8AB4553A17AB@gmail.com> References: <02C687A6-A1FB-4C82-B173-034133BFBE48@gmail.com> To: java-user@lucene.apache.org X-Mailer: Apple Mail (2.1078) This is interesting. I'm coming into this with only the knowledge I gained from the 1st = version of the Lucene in Action book, which I read a few years ago. So = when I think of embedded I think that Solr would be integrated into my = app like any API would be. Instead you say Solr is a separate process = that could work adjunct to my app. In other words in my mind it would be = a extension module or even plugin for my app. Would be possible to = start/stop it from my app as well? Hope I'm seeing the picture clearly = now? What I find most useful in Lucene is its searching capability. Since I = have pre-structured data which are the different configurations the = different tools and tiers of my app use the analysis stage is not that = involved. Once data is indexed, likely in several indexes/cores, I would = like to search for specific documents and set them to be the current = context for different tools. There are a number different contexts and = index documents specific to each of them. I guess what I am after is a = searchable configuration engine for a RIA. Some of my use cases can tolerate a bit of latency but for others it = would not work so well. Here are two of the more dynamic use cases = (slightly simplified to make them clear) where searching has to be = blazingly fast: 1 - I have a draw tool that places different shape types while dragging = (each drag forms a string of shapes) across a canvas. I track the types = of shapes the current drag has placed so far and then what to recommend = other shape strings (prior drawn strings are indexed as they were made) = that are similar in order to help the user complete the current draw = string. The query would be created on the fly based on what shapes have = been drawn so far and then used to search the index, the search would = also need to be refreshed every time the user moves the mouse. This use = case is similar to type-ahead phrase completion but completely mouse = driven with fired searches in the background and immediate graphics on = the canvas. Will Solr running as a separate local process be able to = keep up with the user driven drawing? 2 - My app features a Painter with Renderers for different shapes. The = many possible layout and style details for these shapes and their = relation to each other are defined as configurations per Renderer. The = index would contain multiple versions of a configuration for a given = Renderer. A search would then be used to bring up a set of = configurations, the set would have a configuration for each Renderer. = This set would then be the active rules (context) for rendering each = type of shape. Then as the user creates shapes by drawing different = shape types they are rendered by their specific Renderer. The given = Renderer in turn looks up all the rules for layout and styling it should = have from the active set of configurations. The question is if the = lookup can be on the fly searches to a index or if it is better to pull = up the set of configurations from the index and transfer them to = hashmaps that the Renderers would query instead of querying the index = directly? Would Solr be able to keep up with all the real-time lookups = the Renders would be making? VL On 2010-05-30, at 1:38 PM, Yonik Seeley wrote: > On Sun, May 30, 2010 at 2:27 PM, Visual Logic = wrote: >> Solr is embeddable but does that not just mean that SolrJ only = provides the ability to call Solr running on some server? >=20 > Nope - embeddable as in running in the same JVM as your application. >=20 >> For some of my use cases using Solr on a remote server would work = fine. For other cases it will not be quick enough, >=20 > Running as a separate server can be on the same host and be very > quick. Was it too slow when you tried it? > It's a common misconception that HTTP is slow... it's really just a > TCP socket (which can be reused with persistent connections) with some > standardized headers. Solr also has a binary protocol that works just > fine over HTTP, so it's really not more overhead than doing something > like talking to a database. >=20 > But the right solution probably depends on the details of your > specific usecases - if you elaborate on them, people may be able to > provide more specific recommendations. >=20 > -Yonik > http://www.lucidimagination.com >=20 > --------------------------------------------------------------------- > To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org > For additional commands, e-mail: java-user-help@lucene.apache.org >=20 --------------------------------------------------------------------- To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org For additional commands, e-mail: java-user-help@lucene.apache.org