Most GISs require a relational database (MySQL, POSTGIS).
What are some GIS tools that use Google App Engine Datastore.
Some prelim research:
Point queries at GeoModel
Areal queries at GISCloud
WFS at GeoDatastore
Related
Since I am not using the Google Cloud Platform App engine service anymore, I disabled it and got the following error on Firestore:
The workaround I could find is just to deploy a dummy app engine fully managed application. Still I think this should not be the right way of doing things.
Is there another way? Why did Google choose to link Firestore to App Engine?
firebaser here
Cloud Firestore is an evolution of Cloud Datastore, which in turn is the (originally unnamed) database in App Engine.
So it's not as much that Firebase chose to link Firestore to App Engine, as it is that we can't unlink it from App Engine without rewriting a lot of infrastructure. That may happen at some point, but at the moment you'll need to keep App Engine enabled to use Firestore.
By the way: this is also the reason that for a long time you could set a spending limit on Firestore, but not on other Firebase products: it inherited its spending limit from its App Engine lineage. When the ability to set a spending limit disappeared from App Engine, Firestore also lost that ability.
A lot of Google Cloud products are actually linked to App Engine deep down inside cloud projects. I'm not sure anyone is going to be able to give you a satisfactory explanation of why this is (unless it's coming from an engineer from Google). But I can tell you that it's a long-standing legacy of the way cloud projects work. App Engine is the original Google Cloud product, and much cloud infrastructure was built around it. That's all implementation details, and you don't need to know why that is - all you have to do is enable the App Engine API, even you don't use it directly.
I'm converting a small web api from Node.js to .net core. We use Google Firebase for our database. For the new api, I am using FireSharp as my basic library for accessing the db, and I like it a lot.
However, I can't figure out how to access Google's GeoFire library from .net? Is there any way to do this?
Thanks!
There is no pre-built Geofire library provided by Firebase for .NET.
But a quick search show this SideGeoFire library that looks promising.
If that doesn't work for you, consider building your own. The code for Firebase's GeoFire library is open-source, and while it isn't trivial, it's not the hardest code to port either. To learn more about the basics of how Geohashes, GeoFire, and Geoqueries work, have a look at the video of my talk Querying Firebase and Firestore based on geographic location or distance.
All my app's data is stored in Firebase. I'd like to build some reports with my data that aren't necessarily accessible through the web/app front-end. I don't see any good options for this in the Console. Has anyone found a good reporting solution for Firebase? I am looking for something like Crystal Reports or just an easy way to render Firebase data based on a query.
Thanks,
Rima.
I found a issue with the solution above. Firebase stores its data in JSON format, which cannot be consumed by solutions such as BigQuery, because it is expecting JSONL format and you get an error. It beats me why Google are not providing an elegant solution when integrating between two of their products, but I believe they have something planned.
Firebase does not have any "built-in" reporting tools other than the defined querying APIs.
If your database is small, you dump the JSON from the Firebase Console and then manually run analysis on it.
If your database is large, you can upgrade to the Flame or Blaze plans and sign up for daily private backups. This will create a JSON dump in the background without affecting your database performance and store it in the cloud. You could then use tools to grab that dump and perform advanced reporting on it.
1) Via BigQuery
Official Docs:
https://cloud.google.com/bigquery/docs/loading-data-cloud-firestore
Codelab Walkthrough:
https://codelabs.developers.google.com/codelabs/modern-data-pipeline-firestore-bigquery-dataflow-templates/index.html?index=..%2F..next17
Connect whatever BI tool you want to BigQuery. Google Data Studio is
free as is Metabase. Almost every Enterprise BI tool has a BigQuery
connector.
From https://www.reddit.com/r/Firebase/comments/arps42/reportingbi_tools_and_firestore/
2) Via "Custom Data Sources"
Cloud Firestore (and probably Realtime-Db) has a RESTFUL API. Many popular reporting tools support "custom", "restful", "ajax", and/or "HTTP" sources.
You should search your favorite reporting tools, and internet search accordingly.
I can see that Stimulsoft seems to support custom/RESTFUL sources. A PowerBI data connector seems to provide a lot of latitude - https://github.com/Microsoft/DataConnectors
Of course, this means that you need to create several data sources, and they probably won't be as optimised as a built-in source type. For example, the report engine probably won't know how to translate any front-end UI filters into custom-source query filters. Perhaps some platforms support the ability for you to create your own adaptors.
I've been looking into the Phonegap and PouchDB docs for days but I don't seem to get a clear answer.
Is it correct that when I add the Cordova plugin Cordova-sqlite-storage and use PouchDB using the PouchDB API, I'll have unlimited storage in my iOS webview?
I'm actually confused since I thought PouchDB was based on CouchDB (which seems like NoSQL). SQLite is using SQL queries for data storage.
Thanks!
Yes, you don't have traditional storage limits when using cordova-sqlite-storage. I've worked on an app that's in the App Store and Google Play today that uses >100Mb of data in SQLite. Cordova documentation backs this up.
PouchDB has a SQLite adapter which you might be able to use but I have no direct experience here and the documentation notes you should only use it with SQLite unless you really need >50Mb storage as there can be performance issues.
LokiJS with persistence might also be an option for you.
If I'm developing an application that will run on the google container engine, but still wish for it to use cloud datastore, do I have any options to simulate cloud datastore for local development?
Please note for the sake of correctly understanding my question: My application will not be Python, PHP or Java. It will not be running via App Engine, but via Container Engine.
Have you tried using cloud datastore's local development server? It sounds like exactly what you are looking for.