タグ

ブックマーク / developers.freee.co.jp (3)

  • pingcap/parser (MySQL互換) で SQL を手軽に解析 - freee Developers Hub

    この記事は freee Developers Advent Calendar 2021 の23日目の記事です🎄 freeeDBRE チームに所属している caterpillar です. なんだか大きなデータベースを眺める仕事をしています. 突然ですが, pingcap/parser を使って SQL を簡単に解析していきたいと思います. Go 製 の SQL Parser で, MySQL への高い互換性を謳う TiDB で利用されています. この parser の嬉しい点はこんな感じです. シンプルで使いやすい TiDB に利用されていることから, ある程度結果を信頼できる mask 済 SQL もおおよそ構文解析可能 3つ目について, mask済の SQL は select * from users where id = ? のように一部が別の文字に置き換わっているものを指しま

    pingcap/parser (MySQL互換) で SQL を手軽に解析 - freee Developers Hub
  • MySQLでIN句の中に大量の値の入ったクエリがフルスキャンを起こす話 - freee Developers Hub

    こんにちは、freee Developers Advent Calendar 2021、19日目のid:shallow1729です。昨日はtdtdsさんで【マジで】サイバー演習シナリオの作り方【怖い】でした!障害訓練後に攻撃方法を解説された時はリアリティの高さに驚きました。 僕はMySQLを使っていて発生した不思議な挙動の調査の話をしようと思います。 今回問題となったクエリ 今回話題にするクエリは以下のようなシンプルなものです。 SELECT * FROM hoge WHERE id IN (...) MySQLのパラメーター次第ですが、デフォルトの設定だとこのIN句の中の値の数が数万になると適切なインデックスが用意されていてもフルスキャンが発生する事がありました。このクエリがテーブルのほとんどのレコードを網羅するような場合や高速でレコードを大量にinsertして統計情報が追いつかないケー

    MySQLでIN句の中に大量の値の入ったクエリがフルスキャンを起こす話 - freee Developers Hub
  • goによるOCRエンジン実行のまとめ - freee Developers Hub

    会計フリー周りのエンジニアをしているよーだ(@rtryoda)です。この記事は freee Developers Advent Calendar 2019 の11日目です。最近各ベンダーやOSSのOCRエンジンをgoで触る機会があったので、実行方法と結果をまとめました。 OCRとは OCRとは光学的文字認識(Optical Character Recognition)のことで、画像などに記されている文字を読み取りテキストデータに変換することです。例えば以下のような画像に対してOCRを実行すると"あいうえお 12345"と認識されることを期待します。 ※各OCRの実行にはこちらの画像を使用します。 今回試すOCRエンジン一覧 OCRエンジン 日語対応 クライアントライブラリ(go) Google Cloud Vision APIgoogleapis/google-cloud-go A

    goによるOCRエンジン実行のまとめ - freee Developers Hub
    delegate
    delegate 2019/12/12
  • 1