Cloud World

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Thursday, 26 September 2013

App Engine 1.8.5 released – featuring Search API and PHP updates

Posted on 08:00 by Unknown
We’re back with Google App Engine 1.8.5, and this release focuses on an upgrade to the Search API and improvements to the PHP runtime. Next week we’ll be at Zendcon, one of the largest conferences for PHP developers, where we’ll have some cool things to share about the PHP runtime.



Search API is now Generally Available

Surfacing Google technology to developers everywhere is one of our goals with Cloud Platform. The Search API does exactly this. With just a few lines of code, you can use Google Search technology to index and query millions of documents that contain structured data. Today, we’re making the Search API Generally Available so any developer can dive in and get started.



To understand how easy it is to get going with the API, let’s say you were a real estate company that wanted to add search capabilities. To do so, we’ll first import the Search library, and add some listings (referred to generically as Documents in the Search world).



from google.appengine.api import search

listingLocation = search.GeoPoint(37.78, -122.39)
listing = search.Document(
fields=[
search.TextField(name='description', value='Great condo in the city'),
search.NumberField(name='bedrooms', value=2),
search.GeoField(name='location', value=listingLocation)
# omitting the other fields for this example
])


Next we add the newly created listing to our index using the put() method.



try:
index = search.Index(name='listingsForSale')
index.put(listing)
except search.Error:
logging.exception('Make sure you handle this error')


After we’ve added documents to an index, we’ll grab an index and specify our search query.



index = search.Index(name='listingsForSale')

# search for listings within 8050 meters (~5 miles) of the 94109 zip code
query_string = 'distance(location, geopoint(37.7929, -122.4212)) < 8050'


Finally we’ll perform the search and iterate over the results.



try:
results = index.search(query_string)
# Iterate over the documents in the results
for scored_document in results:
pass # handle results
except search.Error:
logging.exception('...and this one too')


And that’s just a small example. The Search API allows developers to:

  • index Atom, Text, HTML, Number, Date, Geopoint fields

  • perform queries across all field types, including geospatial queries, partial text matching

  • score and sort results



We have many customers using the Search API for a variety of use cases. Key Ingredient, for example, uses the Search API to allow users to perform searches over the 1.6 million recipes in their database. Harlan Beverly, their CEO, said, “Our users are often shocked and delighted by the speed of our search results and our site overall.”



By moving to GA, the Search API is fully supported and comes with a monthly 99.95% SLA. For more information, be sure to check out our docs (Python and Java).



Improvements to the PHP runtime

The Cloud Platform team focuses a lot on providing great developer tools so that you can be as agile as possible in development. In this release, we’ve packaged a PHP interpreter binary in the Windows and Macintosh SDKs, including integration with the App Engine launcher, so that you no longer need to install PHP yourself.



We also believe modularized applications are the right way to go for architecting solutions in the cloud. So the PHP runtime now supports App Engine modules – the ability to split out large-scale applications into logical components that are able to share stateful services and communicate securely.



Finally, we’ve added the Logs API to the PHP runtime, which provides you access to the application and and request logs for your application.



That’s a lot of PHP goodness in 1.8.5, and we’re accepting more users, so sign up to give it a try.



Eclipse Tooling

We took your feedback that our Google Plugin for Eclipse should fully support Cloud Endpoints in the Eclipse standard Web Tools Platform and Java EAR files which are familiar to many Java developers as the most common pattern used in Eclipse for on-premise and cloud environments. Now, check out how to add an App Engine backend to your Android or iOS mobile app.



The complete list of features and bug fixes for 1.8.5 can be found in our release notes. For App Engine coding questions and answers check us out on Stack Overflow, and for general discussion and feedback, find us on our Google Group.



-Posted by Chris Ramsdale, Product Manager
Email ThisBlogThis!Share to XShare to Facebook
Posted in | No comments
Newer Post Older Post Home

0 comments:

Post a Comment

Subscribe to: Post Comments (Atom)

Popular Posts

  • A Day in the Cloud, new articles on scaling, and fresh open source projects for App Engine
    The latest release of Python SDK 1.2.3, which introduced the Task Queue API and integrated support for Django 1.0, may have received a lot ...
  • Tutorial: Adding a cloud backend to your application with Android Studio
    Android Studio lets you easily add a cloud backend to your application, right from your IDE. A backend allows you to implement functionality...
  • Outfit 7’s Talking Friends built on Google App Engine, recently hit one billion downloads
    Today’s guest blogger is Igor Lautar, senior director of technology at Outfit7 (Ekipa2 subsidiary), one of the fastest-growing media enterta...
  • Bridging Mobile Backend as a Service to Enterprise Systems with Google App Engine and Kinvey
    The following post was contributed by Ivan Stoyanov , VP of Engineering for Kinvey, a mobile Backend as a Service provider and Google Cloud ...
  • TweetDeck and Google App Engine: A Match Made in the Cloud
    I'm Reza and work in London, UK for a startup called TweetDeck . Our vision is to develop the best tools to manage and filter real time ...
  • New Admin Console Release
    Posted by Marzia Niccolai, App Engine Team Today we've released some new features in our Admin Console to make it easier for you to mana...
  • Qubole helps you run Hadoop on Google Compute Engine
    This guest post comes form Praveen Seluka, Software Engineer at Qubole, a leading provider of Hadoop-as-a-service.  Qubole is a leading pr...
  • The new Cloud Console: designed for developers
    In June, we unveiled the new Google Cloud Console , bringing together all of Google’s APIs, Services, and Infrastructure in a single interfa...
  • Pushing Updates with the Channel API
    If you've been watching Best Buy closely, you already know that Best Buy is constantly trying to come up with new and creative ways to...
  • Google BigQuery goes real-time with streaming inserts, time-based queries, and more
    Google BigQuery is designed to make it easy to analyze large amounts of data quickly. This year we've seen great updates: big scale JOI...

Categories

  • 1.1.2
  • agile
  • android
  • Announcements
  • api
  • app engine
  • appengine
  • batch
  • bicycle
  • bigquery
  • canoe
  • casestudy
  • cloud
  • Cloud Datastore
  • cloud endpoints
  • cloud sql
  • cloud storage
  • cloud-storage
  • community
  • Compute Engine
  • conferences
  • customer
  • datastore
  • delete
  • developer days
  • developer-insights
  • devfests
  • django
  • email
  • entity group
  • events
  • getting started
  • google
  • googlenew
  • gps
  • green
  • Guest Blog
  • hadoop
  • html5
  • index
  • io2010
  • IO2013
  • java
  • kaazing
  • location
  • mapreduce
  • norex
  • open source
  • partner
  • payment
  • paypal
  • pipeline
  • put
  • python
  • rental
  • research project
  • solutions
  • support
  • sustainability
  • taskqueue
  • technical
  • toolkit
  • twilio
  • video
  • websockets
  • workflows

Blog Archive

  • ▼  2013 (143)
    • ►  December (33)
    • ►  November (15)
    • ►  October (17)
    • ▼  September (13)
      • We're building a community for the cloud-minded
      • How to mix and match web services, batch processin...
      • App Engine 1.8.5 released – featuring Search API a...
      • AppScale brings choice to App Engine developers
      • How Streak makes debugging easy in App Engine Data...
      • Sendgrid now supports Google Compute Engine for se...
      • Google BigQuery goes real-time with streaming inse...
      • Check out technical solutions and sample apps to g...
      • Where the cloud meets the road
      • Running Apache Hadoop on Google Cloud Platform
      • Cloud Platform updates: App Engine 1.8.4 and new C...
      • Introducing CORR() to Google BigQuery
      • Time to show what you can do with Google Cloud Pla...
    • ►  August (4)
    • ►  July (15)
    • ►  June (12)
    • ►  May (15)
    • ►  April (4)
    • ►  March (4)
    • ►  February (9)
    • ►  January (2)
  • ►  2012 (43)
    • ►  December (2)
    • ►  November (2)
    • ►  October (8)
    • ►  September (2)
    • ►  August (3)
    • ►  July (4)
    • ►  June (2)
    • ►  May (3)
    • ►  April (4)
    • ►  March (5)
    • ►  February (3)
    • ►  January (5)
  • ►  2011 (46)
    • ►  December (3)
    • ►  November (4)
    • ►  October (4)
    • ►  September (5)
    • ►  August (3)
    • ►  July (4)
    • ►  June (3)
    • ►  May (8)
    • ►  April (2)
    • ►  March (5)
    • ►  February (3)
    • ►  January (2)
  • ►  2010 (38)
    • ►  December (2)
    • ►  October (2)
    • ►  September (1)
    • ►  August (5)
    • ►  July (5)
    • ►  June (6)
    • ►  May (3)
    • ►  April (5)
    • ►  March (5)
    • ►  February (2)
    • ►  January (2)
  • ►  2009 (47)
    • ►  December (4)
    • ►  November (3)
    • ►  October (6)
    • ►  September (5)
    • ►  August (3)
    • ►  July (3)
    • ►  June (4)
    • ►  May (3)
    • ►  April (5)
    • ►  March (3)
    • ►  February (7)
    • ►  January (1)
  • ►  2008 (46)
    • ►  December (4)
    • ►  November (3)
    • ►  October (10)
    • ►  September (5)
    • ►  August (6)
    • ►  July (4)
    • ►  June (2)
    • ►  May (5)
    • ►  April (7)
Powered by Blogger.

About Me

Unknown
View my complete profile