この日記は、RDBMS-GIS(MySQL,PostgreSQLなど) Advent Calendar 2020 の 17日目のエントリーです。 はじめに MySQLで取り扱うことができる空間情報の型には、点、線、ポリゴン があります。それぞれ にそれらの集合を扱える型が存在してるので、都合6つとなります。これら相互の変換について考えてみたいと思います。なお、緑色線は本日記および今後の日記にて紹介を予定しているものです(スマートなやり方ではなく力ワザ(ちからわざ)のものも含む)。赤い点線は、今のところ試したことがないもの。 今回使うデータ 今回のお試しの範囲では、テーブルにデータを入れておく必…
アプリからのクソクエリを変更できない闇の魔術、に対する防衛術[MySQL]
本エントリは闇の魔術に対する防衛術 Advent Calendar 2020の17日目
1.プロローグ
兵隊1「隊長! 今度採用したアプリケーション、バックエンドはMySQLですが、やたら動作が遅いんです」
隊長「そんなときにはな、急いで口で...じゃなくて、一般クエリログを取得して、どんなクソクエリがきているか確認しろ」
兵隊1「わかりました〜、おやか...じゃなくて、隊長」
アイテム1: 一般クエリログ
兵隊1「わかりました〜、おやかた。このクエリAですね!」
…
この日記は、RDBMS-GIS(MySQL,PostgreSQLなど) Advent Calendar 2020 の16日目の記事です。 何をしたいか 先日の日記で雑に作成した大量のPOINTデータを使って、ある点から一定距離内にある点を検索します。普通にやると結構時間がかかりますが、空間インデックスがきちんと使用されて高速に検索できるところがポイントです。POINTの話だけに。 先日のデータ 先日の日記で書いたスクリプトを使って、テーブル sp1 に、約29万件のデータを作成しました。 mysql> select COUNT(*) FROM sp1; +----------+ | COUNT…
この記事は MySQL Advent Calendar 2020 の16日目の記事です。
MySQL Advent Calendar 2020 8日目、 lhfukamachi
さんの foreign_key_checks
に関する記事を見て思い付いたものです。
システム変数のforeign_key_checks の話は上記の記事によくまとまっています。
この記事では、「じゃあ foreign_key_checks
…
これは、RDBMS-GIS(MySQL,PostgreSQLなど) Advent Calendar 2020 の11日目のエントリだったはずのものです。実際には3日ほど遅れてしまいました。 MySQLで、空間情報を扱う動作の確認をしたいときに、ちょっとばかり多めのデータが欲しくなることがあります。 実際の世の中のデータを取り込む形で実現しても良いのですが、ある一定の範囲内に存在する点の分量を自由に増減できない点は不便です。 ということで、とってもザツに大量データを作成する機会があったので、本日記ではその方法を披露。 とりあえずテーブルを作る とりあえず ID めいたものと、POINT型のカラム…
初めに
この記事はMySQL Advent Calendar 2020の14日目の記事です。
アドベントカレンダー参加は、初めてなので至らないところもあるとは思いますが、お手柔らかにお願いします。
とても長い内容となってしまったので、結論だけご覧になりたい方は。
目次から〆や各まとめに飛んでください。
目次
[さらに読む]先週、MyNA(日本MySQLユーザ会) 忘年LT大会 2020に参加して、飲みながらLTをネタにワイワイしてきました。
自分からは、ここ最近取り組んでいた、MySQL Shell のバックアップ機能のバグについてLTしました。 実際にどうやってデバッグしたか*1 など、ワイワイしました。
MySQL Shell dumpInstance のバグを調べた件 from Satoshi Mitani …
[さらに読む]本日、MyNA(日本MySQLユーザ会) 望年LT大会2020 をオンラインで開催しました。 顔を突き合わせて、ちょっとばかりのアルコールを摂取しながら、楽しい気分で大好きな技術を語り合う場というのは、やっぱり素晴らしい何かが生まれる場でもあります。一方で、リアル店舗を予約しての開催は主催側としては様々なリスクを抱え込むことでもあり「それでもやりたい!」と思えるモチベーションとのバランスに勝った時にのみ開催可能なイベントでもあります。 そんな中で、なんとなく一番口実を作りやすい「年末に1年を振り返りましょう」ということで過去2回ほどリアル店舗で開催してきた「MySQLユーザ会 望年LT 大会」…
MySQL 8.0.20が来た! その2:
猫たち(CATS)の改善。(大おけ(VATS)から猫たち(CATS)を実装の後の改善)
本エントリはMySQL Advent Calendar 2020 の十日目です
今年の春(2020-04-27)にMySQL 8.0.xのメンテナンスリリースである8.0.20が出ました。
(その後8.0.21, 8.0.22がリリースされ、最新版は8.0.22です)
多くの機能が追加されましたが、本ブログではあまり他の人が取り上げなさそうなものをご紹介します。
…