Skip to content

Instantly share code, notes, and snippets.

View smrgeoinfo's full-sized avatar
💭
In Tucson

Stephen Richard smrgeoinfo

💭
In Tucson
View GitHub Profile
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
[originally by Ryan Clark to Christoph and Raj, NGDS project]
You've got 1M points in your system. Here are the places where that's going to bottleneck you:
- Asking Geoserver for WMS or WFS results is going to mean pulling those 1M points from the database and then running them through a pipeline that results in either a) a large XML document (WFS) or b) an image (WMS). In both cases, query results will be held in memory on the server until the processing is complete.
- There is probably much less processing involved in building the XML doc than there is to render the image. However, the next step in the process is sending the result to the client. The XML doc will be huge (either in the "shortened" content model form, or the enormous flat form you mention). It will take forever to get across the wire, and you'll probably start timing out in various parts of the pipeline.
- The data arrives at the client's web browser. In the case of the WMS request, you're fine, because its a little file and a minimal
var _ = require('underscore'),
assert = require('assert');
// This is the input array of hkeys
var input = [
"0001",
"0001|0001",
"0001|0002",
"0001|0002|0001",
"0001|0003",
{
"id": "12340kjfha1092412",
"metadata_modified": "2013-09-13T20:35:03.757357",
"metadata_created": "2013-09-12T20:35:03.757357",
"title": "Whatever the title is",
"notes": "The abstract / description of this thing",
unit colors
Cba #ffebeb,#99b380
Cm #ebebcc,#ffccde
Ct #ffb3cc,#ccde66
Dtb #664dff
H20 #ebffff
IPMs #99ebde
Jc #ccffde
Je #cccc00
Jk #99de99
@smrgeoinfo
smrgeoinfo / schema.js
Created January 25, 2014 18:44 — forked from rclark/schema.js
var _ = require('underscore');
module.exports = function (additionals, overrides) {
additionals = _.isArray(additionals) ? additionals : [];
overrides = _.isObject(overrides) ? overrides : {};
function conditional (field) {
return _.contains(additionals, field);
}
{
"identifier": "gmd:fileIdentifier/gco:CharacterString",
"parentidentifier": "gmd:parentIdentifier/gco:CharacterString",
"language": "gmd:language/gco:CharacterString",
"dataseturi": "gmd:dataSetURI/gco:CharacterString",
"languagecode": "gmd:language/gmd:LanguageCode",
"datestamp": "gmd:dateStamp/gco:Date or gmd:dateStamp/gco:DateTime",
"charset": "gmd:characterSet/gmd:MD_CharacterSetCode/@codeListValue",
"hierarchy": "gmd:hierarchyLevel/gmd:MD_ScopeCode/@codeListValue",
"contact": {