Community journal

The latest from the MySQL community

Ideas, releases, practical guides, and perspectives from the people building with MySQL.

Follow the feed
Showing entries 31 to 40 of 3186 « Previous | Next »
MySQL GIS拡張関数: STX_MinimumBoundingCircle()

自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_MinimumBoundingCircle(geom [, segs]) 最小外接円を求めて、Polygon として返す関数。 動作紹介 正方形の最小外接円。大量のPOINTにより擬似的に円を表現していることがわかる mysql> SET @g=ST_GeomFromText('POLYGON((0 0, 10 0,…

MySQL 9.6.0とMySQL 9.7.0-er 公式ビルド済みバイナリの測り比べ

MySQL 9.7.0-erではPGO(Profile Guided Optimization)が有効になっているらしいので、それまでのバイナリよりもちょっと性能が良さそう。あと、これはビルドの中で有効にするので手でビルドしたものよりもちょっと性能が良いはず。

というわけで雑ベンチ。


$ cat /etc/os-release

NAME="Oracle Linux Server"

VERSION="8.10"

ID="ol"

ID_LIKE="fedora"

VARIANT="Server"

VARIANT_ID="server"

VERSION_ID="8.10"

PLATFORM_ID="platform:el8"

PRETTY_NAME="Oracle Linux Server 8.10"

ANSI_COLOR="0;31"

CPE_NAME="cpe:/o:oracle:linux:8:10:server"

HOME_URL="https://linux.oracle.com/"

BUG_REPORT_URL="https://github.com/oracle/oracle-linux"

ORACLE_BUGZILLA_PRODUCT="Oracle …
[さらに読む]
MySQL GIS拡張関数: STX_GeneratePoints()

自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_GeneratePoints(geom, n [, seed]) 与えられたPOLYGON内に、与えられた個数(n個)のPOINTを生成し、MULTIPOINT型として返す。 動作紹介 mysql> SET @g=ST_GeomFromText('POLYGON((1 1, 5 1, 5 5, 1 5, 1 1))'…

MySQL GIS拡張関数: STX_MakePolygon()

自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_MakePolygon(ring [, inner_rings]) LINESTRINGを与えてPOLYGONを生成する。 MULTILINESTRINGを与えると、2つめ以降の部分はくりぬきとして扱われる。 LINESTRINGは始点と終点が一致している(閉じている)必要がある。 動作紹介 LINESTRINGを与…

MySQL GIS拡張関数: STX_MakeLine()

自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_Makeline(p1, p2) / STX_Makeline(multipoint) 与えられた複数のポイント群からLINESTRINGを生成する関数です。 動作紹介 2つのPOINTを与えてLINESTRINGにする例 mysql> SET @g1=ST_GeomFromText('POINT(1 1)'); m…

MySQL GIS拡張関数: STX_Points()

自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_Points(geom) 与えられたジオメトリを構成する点をすべてPOINTにし、MULTIPOINT型として返す。LINESTRINGであればその構成点を、POLYGONの場合も同様に構成点を返します。POLYGONの場合は始点と終点が同じ点になりますが、結果にはそれぞれ(つまり同じ点が2つ)含まれます。 動作紹介…

MySQL GIS拡張関数: STX_PointOnSurface()

自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_PointonSurface(geom) 与えられたジオメトリ内にあることが保証されている点をひとつ返す。POINTでもLINESTRINGでも動作するが、おそらくPOLYGONで使うことが多そう。 「ポリゴンの内側にその点がある」というだけであり、点の位置そのものには意味はない(ようなシーンで使う)。 動作紹介 P…

MySQL GIS拡張関数: STX_LineLocatePoint()

自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_LineLocatePoint(line, point) 第2引数のPOINTから最も近い第1引数のLINESTRINGの点を求め、その位置をLINESTRING上の始点から比率で返す。戻値は0.0~1.0の範囲。 動作紹介 長さ10のLINESTRING上に、少し離れたPOINTから最短の位置を決定して、割合を返す…

MySQL GIS拡張関数: STX_ClosestPoint()

自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 STX_ClosestPoint(geom1, geom2) geom2にもっとも近い位置となるような geom1上の点を返す。実は STX_ShortestLine() 関数が返すLINESTRINGの第1点と結果は同じ。 動作紹介 第一引数がPOINTならば、必ずそのPOINTが結果となる。 mysql> SELECT ST_AsText(STX_ClosestPoint( -> ST_GeomFromText('POINT(1 0)'), -> ST_Geom…

MySQL GIS拡張関数: STX_ShortestLine()

自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 STX_ShortestLine(g1, g2) 2つのジオメトリ間の最短線分を返します。つまり、2つの点から構成される LINESTRING型を返します。 動作紹介 POINTとLINESTRINGの最短距離。この例ではLINESTRING側の端点が、POINTに一番近い mysql> SELECT ST_AsText(STX_Shortestline( -> ST_GeomFromText('POINT(0 0)'), -> ST_GeomFromText('L…