Stanford Parser as a Google App Engine Service - google-app-engine

I'm new to Goole App Engine. I'm struggling to find a way to use Stanford Parser as a backend for a mobile app (iOS, Android). Is it possible to run the Parser as a service in GAE so that the app can send the string in wich the parsing will be done and after the processing, the app gets a JSON with the results?
If yes, any hints or tutorial that you can direct me to?
Thank you.

I can't answer your exact question, but I'm also very interested in this.
Have you tried running the parser locally on iOS or Android? I suspect it would be somewhat slow, but I wonder if it's "tolerably slow" for small sentences. The official page just mentions a 100MB memory minimum, I can't find any mention of a minimum requirement for CPU power.
Here they explain how they run their own online parser:
https://mailman.stanford.edu/pipermail/parser-user/2011-March/000954.html

Related

Are Cloud Endpoints with Go Google App Engine Standard possible?

I have implemented a simple API in Go on Google App Engine Standard using just:
func init() {
http.HandleFunc("/api/v1/resource",submitResource)
}
Nothing special. However I want to port this code to using Cloud Endpoints instead in order to get the better monitoring and diagnostics.
Is it even possible with STANDARD instances or must I move to FLEXIBLE?
I can't find any documentation on this. Nor answers to this seemingly simple question. At the moment I half wish I had chosen Python because its support seems more mature. I chose Go because it seems more appropriate for API-like code because my minimal research suggested Go offered better performance.
If it is possible, are there any pointers to how please?
Only Python and Java are supported on GAE Standard via the Endpoints Frameworks. However, Go is supported on GAE Flexible.
Here is the Go GAE Flexible sample:
https://github.com/GoogleCloudPlatform/golang-samples/tree/master/endpoints/getting-started
After much research and trial and error, the simple answer is "No." - as of Dec 2016.
The longer answer is it's possible if you want to put far too much effort into making up to date libraries of your own. There is basically no support, even in alpha, for the current Google Cloud Endpoints using Go with Google App Engine Standard.
It's possible to run Go+endpoints on GAE Standard environment, however libraries might be outdated now.
Libraries and sample app can be found on github:
https://github.com/GoogleCloudPlatform/go-endpoints
I have successfully deployed "Greetings" as AppEngine SE app, and it works.

Does AWS have an image processing service?

At past I have used ImageMagick in order to code some web app that performs some image processing.
Then I encountered this from Google App engine -
https://cloud.google.com/appengine/docs/java/images/
Which looks quite interesting, however I would like to work with AWS related technologies, and I wonder if AWS have a similar service?
Thanks,
Yair
No they don't have an image processing service. They do have transcoding services for audio and video, though:
http://docs.aws.amazon.com/elastictranscoder/latest/developerguide/introduction.html
But that's not what you are looking for. The closest you can get to that with AWS is probably by creating your own on-demand instance which can process a batch of images and then stops again. Or maybe have a look into Data Pipelines or Simple Workflows. Might be overkill for what you want to achieve, though, depending on the scale.

Running Drools rules on Google App Engine

A client of mine has asked me to look into moving an app that's using Drools from AWS to Google App Engine. I've done a bit of research, and from some old postings on the net, there seemed to be some problems using Drools on GAE, due to the fact that it does file I/O which is not allowed.
Does anyone know if this has been addressed in a newer version of Drools? I've tried searching, but the only responses I get are fairly old (> 1 year)
As far as I know it will not work out-of-the-box with newest version, did you try it at least? If you have errors we can help you to solve them if we see at least a possibility to make it work.
Cheers

How can one perform full text search in Google App Engine?

It's a simple question, but I haven't found the answer anywhere. Thoughts and input appreciated.
I'm using Django, too, for what it's worth. :)
Cheers.
The Search API is now available as experimental for Java and Python .
With Java GAE, you could use Compass, but that won't help with Django. For Python, Bill Katz offers one solution -- open source -- and these guys offer a Django-specific approach which, however, is free only for non-commercial applications (i.e. if your app makes money they want you to pay for their full-text search). I have no real-world experience with either of these solutions so I can't really give well-grounded recommendations, but from what one can see with just a little playing around they seem quite useful.
An overview of the Python App Engine searches that I am aware of:
Google did add a cut down search using SearchableModel although that has limitations (5000 indexed word limit, String property only not Text):
http://groups.google.com/group/google-appengine/browse_thread/thread/f64eacbd31629668/8dac5499bd58a6b7?lnk=gst&q=searchablemodel
Or as another posters have pointed out there are these options:
The Quick and simple text search:
http://www.billkatz.com/2009/6/Simple-Full-Text-Search-for-App-Engine
This product which has a fairly comprehensive free version and a more extensive commercial version:
http://gae-full-text-search.appspot.com/customers/download/
I've read that Google do have a project to bring full text search to App Engine although this is not scheduled to happen any time soon
I'd really like to see a comparison of the various searching frameworks and see how they stack up to each other. Does anyone know of any report like this?
Edit:
Google Search API now available (although still experimental)
For now, the real answer is that there is no real full-text search on Google App Engine. The solutions provided by the other answers here are fine for toy data sets, but do not scale to anything more than O(10000) documents or so. Google will have to provide search as an infrastructural feature of GAE. See the feature request for (mostly superfluous) discussion.
# The Quick and simple text search:
http://www.billkatz.com/2009/6/Simple-Full-Text-Search-for-App-Engine
this solution did not work for me - and looking at the limitations below, it is unlikely to be useful for real use cases.
It uses StringListProperty to store phrases which has a limitation of 500 characters.
It does not work with the standard query filters.
Issue 217 Bill Katz released a package to deal with and http://gae-full-text-search.appspot.com/ is available alternatively, levensthein is a another match measure
You should be able to adapt Whoosh! to write in the datastore instead of on disk. It's a pure python full-text search engine. It's not as fast or full-featured as Lucene, but it should run on GAE without too many modifications.

Is it possible to deploy ColdFusion code on Google App Engine for Java?

Since ColdFusion is itself Java-based, I would imagine it's not too much of a stretch to suggest that CFML code could be deployed on Google App Engine.
BlueDragon is a commercial solution for deploying CFML code on Java servers.
It's described in this thread how someone got OpenBD (Blue Dragon) running on App Engine:
OpenBD on Google App Engine for Java
Are there any open source alternatives
that could be used for App Engine?
Railo is another obvious candidate here, and some people appear to be trying to tweak it for use on Google App Engine.
I am putting together some demos that run on Open BlueDragon, which in turn is running on Google App Engine. The list is small at the moment, but eventually it should give you a good idea of what is opssible with OpenBD and GAE.
http://www.brighthub.com/hubfolio/matthew-casperson/blog/archive/2010/05/12/cold-fusion-demos.aspx
Check out
http://www.stax.net/ - Stax networks made by a former Allaire(r)?
Works great, supports coldfusion out of the ..cloud. You download a precompiled source file, put your stuff in, upload it and it all works, no fighting with it.
I know google app engine is quite restrictive, it will involve opening up the source and removing everything that attempts to write to the file system, and changing your database interaction.
You can checkout this thread and group as a resource for Open BlueDragon as well as the wiki. Looks like they have a branch already which is working towards GAE compatibility.
On the Railo side of the CFML open source pond you can reference this article from help compiling Railo on your own from the source.
Joining both of their respective google groups and asking questions should yield fruitful as well.
Good Luck!

Resources