Hi Sergei!

I moved this back to the mailing list, because of your .FRM explanation, and also because I'd like to explain rasters.  A GIS raster is an array of data represented as a raster image.  Rasters have "layers" and each layer can have a different measurement in it.  It is most commonly used for height maps.

The pgsql schema that I sent you is for a personal project of mine that uses Voxel.js (http://voxeljs.com/) to turn real world height maps from the space shuttle (SRTM v3 data) into interpolated 1 meter resolution voxel (minecraft-like, as 1 block = 1 sq meter) landscapes.  I intersect the raster data with the GIS data from OSM (open street map) so that I can render buildings, roads, forest areas, rivers, etc, somewhat correctly (overpasses, underhangs, and missing building heights cause significant problems.).  

The ST_PixelsAsCentroids or ST_PixelsAsPoints can be used to get the specific value for a band in the raster, such as the height in a specific 30sq meter area (for the 1 arcsecond resolution of the SRTM data).

I could never do such a thing in MySQL, and that makes me sad :(


On Wed, Oct 12, 2016 at 9:34 AM, Sergei Golubchik <serg@mariadb.org> wrote:
Hi, Justin!

On Oct 12, Justin Swanhart wrote:
>
> Regarding SET PERSIST, yes, it has dangers.  One of them would be to
> set the buffer pool too large, so I filed a MySQL FR to set the BP to
> the default size if the malloc fails.  It can be increased dynamically
> later.  But there are many changes that could cause problems.  This
> feature has to be managed carefully.  Then again, Oracle RDBMS has had
> pfile configuration for well over a decade, and it is functionally
> equivalent to a binary my.cnf in the data dir.

Right. Personally I fully expect that we will need to suport SET PERSIST
eventually. It's just so convenient. I only said it needs some very
careful thinking - and I was responsible for security@mysql.com for ten
years and now for security@mariadb.org for six, so I am a bit paranoid
about this :)

> re: GIS, well, gdal and proj are  used by almost every application
> that deals with GIS. What does the extra accuracy get you?  Anyway,
> rasters really aren't useful without table functions, as you can't get
> the data from each point without them.

I don't really know what rasters are.

And I do not actually *use* GIS, so may be extra accuracy is not useful.
I'd think it might be particularly important for functions like
ST_TOUCHES().

I really want MariaDB to have table functions - perhaps we will have
them in 10.3.

> Some more questions:
> Even though .FRM are optional, that still doesn't necessarily make DDL
> changes atomic, does it?

If the engine declares FRM optional, then the whole DDL is happening
inside the engine, and it's up to the engine to make it atomic. I
expect that when we'll make FRMs optional for InnoDB, InnoDB DDLs
will be atomic.

Regards,
Sergei
Chief Architect MariaDB
and security@mariadb.org