並び順

ブックマーク数

期間指定

  • から
  • まで

361 - 400 件 / 1748件

新着順 人気順

postgresの検索結果361 - 400 件 / 1748件

  • MySQLバージョンアップによるInnoDB性能劣化可能性事件簿

    一般論ですが、どんな基盤ソフトでもCPUスケールを上げようとすれば、何らかの排他制御を細かく行うことになるのでCPUのパイプライン処理にブレーキをかけるアトミックな処理が増えて、バージョンが上がるとある程度はシングルスレッドの処理は重くなっていきます。前エントリのような言語の高度化により遅くなる事情もあります。(中には、Redisのように並列を捨てて排他処理を完全排除する潔い逆振りプロダクトもありますが。) とはいえ、「これは(条件付きとはいえ)急に遅くなりすぎだろ!」と私も思うバージョン(回避策はある&一開発者の一存ではどうにもできない)があるので遡って何点か挙げて注意喚起したいと思います。 これらはある程度限られた条件で発生するので世間では怪奇現象扱いされている可能性もあります。 何故こんなことになるのかというと、基盤となるmysqld側の変更に上手くついていけなくなってるか、性能上メ

    • 「ダブルチェックを頑張る」でごまかさない、スクウェア・エニックスのサーバ設定漏れ防止策

      変化の激しい現在のビジネス環境において、アプリケーションやサービスもその変化に素早く対応する必要がある。もちろん、それを支えるインフラについても同様だ。クラウドサービスやIaC(Infrastructure as Code)などを活用し、効率的にインフラを管理している企業も多いだろう。 ただ、ある意味でインフラは生き物だ。作った当初は問題なくても、管理する対象が増えたり、長期間運用していたりすると最初の方法ではうまくいかないことが増えてくる。ゲームビジネスで有名なスクウェア・エニックスにおいても、似たような課題があった。同社が提供するサービス(ゲーム)は種類も量もかなりの数で、気が付くと管理するサーバは「ちょっと手に余る台数」になっていたという。 大量のサーバを効率的に管理するためにはどのようなアプローチが有効なのか。「Cloud Operator Days Tokyo 2023」で発表さ

        「ダブルチェックを頑張る」でごまかさない、スクウェア・エニックスのサーバ設定漏れ防止策
      • 「脱 Oracle」 速習ガイド (PostgreSQL 11〜15 対応版) - 株式会社インサイト

        はじめに 本ガイドの目的と対象読者 本ガイドは Oracle から PostgreSQL へのデータベース移行リファレンスである。移行に要する工数の算定を容易化することを目的として、考慮すべき非互換情報をシンプルかつ具体的に整理してある。「脱 Oracle」を推進するマネジャーやリーダーのみならず、すべてのメンバーにとって必携のガイドとなることを目指した。本ガイドの情報の多くはインターネット上に公開されているが、それらが体系的、一元的に、かつ最新の PostgreSQL に対応しているものが見当たらなかった(2023年3月12日現在)。そのため、読者の便宜を図る点において本ガイドの果たす役割は大きいと考えている。 本ガイドの前提 本ガイドの内容は下記のデータベース間の移行を前提に記載してある。 移行元データベース

          「脱 Oracle」 速習ガイド (PostgreSQL 11〜15 対応版) - 株式会社インサイト
        • 主キーサイズの違いによるPostgreSQLの検索性能の違いを比較する - ドワンゴ教育サービス開発者ブログ

          導入 実行環境 テーブル定義 レコード作成 テーブルサイズ 検索速度 結論 We are hiring! 導入 みなさん、RDBのテーブル設計はしていますでしょうか。 テーブル設計時の大きな関心事の1つとして、主キー設計があります。 主キー設計では、「自然キー vs サロゲートキー」や「連番 vs 乱数」が主題になることが多いですが、今回はカラムサイズに注目して、主キーのサイズが検索性能に与える影響について調査してみたいと思います。 インデックスを使った検索が高速であることはRDBの常識中の常識ですが、その時もディスクやメモリからインデックスの値を読み取ってCPUを使って比較を行う操作が発生するわけで、値のサイズが小さいことは理屈上ではCPUキャッシュの利用やその他IO処理などにおいて有利に働くはずです。 今回は主キーを指定した単体取得のクエリにおいて、その影響がどの程度なのかを実際に計測

            主キーサイズの違いによるPostgreSQLの検索性能の違いを比較する - ドワンゴ教育サービス開発者ブログ
          • Aurora MySQLのメモリ不足の原因を特定する

            シンプルフォーム株式会社で SRE をしている守屋です。 本記事では Aurora MySQL の OOM(メモリ不足)エラーについて、原因となるクエリを特定するために役立つ Tips を弊社での実例を交えてご紹介します。 発端 突如 Slack に鳴り響く不吉な通知。 「パターン青!障害です!!」 どうやら本番環境の Aurora クラスターがフェイルオーバーしてアプリケーションが DB コネクションエラーを引き起こした模様です。幸いインスタンスは冗長化していて Aurora のフェイルオーバーは高速であるため、ユーザー目線では瞬断が発生した程度の比較的影響が小さめな障害に留まりました。しかし SRE としては捨ておけない状況です!早速原因の調査を始めました。 フェイルオーバーの原因 結論から言うとメモリ使用量がスパイクして OOM エラーが発生したことが原因でした。根拠としては Aur

              Aurora MySQLのメモリ不足の原因を特定する
            • Faster MySQL with HTTP/3 — PlanetScale

              Want to learn more about unlimited IOPS w/ Metal, Vitess, horizontal sharding, or Enterprise options? Talk to Solutions By Matt Robenolt | January 4, 2023 Over here at PlanetScale, we offer you a MySQL database. As a part of this offering, it is critical that we offer you a MySQL protocol-compatible interface to access. This enables using mysql-client as well as any MySQL-compatible driver for you

                Faster MySQL with HTTP/3 — PlanetScale
              • マイクロソフト、NoSQL標準の策定を目指し、Cosmos DBで使われている「DocumentDB」をオープンソースで公開。PostgreSQLをベースに

                マイクロソフト、NoSQL標準の策定を目指し、Cosmos DBで使われている「DocumentDB」をオープンソースで公開。PostgreSQLをベースに マイクロソフトはNoSQLデータベースの実装として「DocumentDB」をオープンソースで公開したことを発表しました。 DocumentDBは、Microsoft Azure上のvCore-based Azure Cosmos DB for MongoDBとして提供されているNoSQLデータベースのオープンソース実装です(AWSもMongoDB互換の「Amazon DocumentDB」と呼ばれるサービスを提供していますが、別の実装です)(追記:当初、「Azure DocumentDB」のオープンソース実装と記述していましたが、間違いでしたので記述を改めました。お詫びして訂正します)。 Announcing DocumentDB,

                  マイクロソフト、NoSQL標準の策定を目指し、Cosmos DBで使われている「DocumentDB」をオープンソースで公開。PostgreSQLをベースに
                • DuckDB雑紹介

                  DuckDBを触っていて特に興味を持った機能を中心に雑解説します。

                    DuckDB雑紹介
                  • PGlite

                    PGliteEmbeddable Postgres Run a full Postgres database locally in WASM with reactivity and live sync.

                    • 無償版PaaSだけでGithubでログインするNext.jsアプリを作る - Qiita

                      最近next.jsでいろいろアプリを作っているのですが、そのときにnextauthというライブラリで認証機能をさくっと作れることを知りまして、作ってみようと思いました。 自分のGithubのレポジトリはこちらです。 やりたいこと Next.jsでウェブアプリを作る Githubで認証できるようにする データベースにログイン情報を保存できるようにする すべて無料サービスで行う 使う技術構成 Next.js Typescript nextauth mysql Docker Prisma 使うサービス Github App Vercel Heroku ClearDB ファイル構成 tree -I node_modules . ├── README.md ├── app │   ├── LICENSE │   ├── README.md │   ├── components │   │   ├──

                        無償版PaaSだけでGithubでログインするNext.jsアプリを作る - Qiita
                      • クエリログを使ったAurora MySQLの負荷テスト - クックパッド開発者ブログ

                        最近はZX-25Rが気になっている菅原です。4気筒250ccといえば、以前バリオス2に乗っていたんですが、あれもよく回るよいバイクでした。足つきの良さが懐かしいです。 この記事では、クエリログを使ったAurora MySQLの負荷テストの話を書きます。 MySQLの負荷テスト サービスに使われているデータベースは、Webサーバと比べて自動的なスケールアップ・スケールアウトが簡単ではないためキャパシティプランニングは非常に重要です。サービスへのアクセス増による負荷増大の結果、急激に性能が低下するためなるべく事前にキャパシティを把握しておきたいところです。 クックパッドではサービスのデータベースとして主にAurora MySQLを利用しているのですが、キャパシティを把握するための負荷テストには以前から苦労してきました。 1. シナリオを書くのが大変 サービスで使われているデータベースの負荷テス

                          クエリログを使ったAurora MySQLの負荷テスト - クックパッド開発者ブログ
                        • Free Postgres Databases

                          Free Postgres Databases Author Name Kurt Mackey @mrkurt @mrkurt Author Name Chris Nicoll Image by Annie Ruygt Postgres on Fly.io is now free for small projects. The hard part about free Postgres is storage, so this post is also about free storage. Read about it here, or try us out first. You can be up and running in just a few minutes. We like building side projects and also hate paying for hostin

                            Free Postgres Databases
                          • DMS を利用した継続的なデータ変更検知 - クックパッド開発者ブログ

                            SRE の鈴木 (id:eagletmt) です。先日、この開発者ブログで赤松から One Experience プロジェクトについての紹介がありました。 自分もこの One Experiene プロジェクトに携わっており、このプロジェクトが始まったちょうど1年くらい前にはイギリスにあるオフィスに行き、グローバル版のシステムを開発・運用しているメンバーと直接顔を合わせたりもしていました。自分は One Experience プロジェクトにおいて主にデータ移行について担当していました。データ移行に必要な作業はいくつかありますが、この記事ではその中から日本版のシステムのデータベースで発生したデータの変更をどのようにしてグローバル版のシステムのデータベースに継続的に反映したかの部分について紹介します。 One Experience でのデータ移行 赤松の記事にも書かれていたように、日本版とグロー

                              DMS を利用した継続的なデータ変更検知 - クックパッド開発者ブログ
                            • 第230回 MySQLの遅延レプリケーションについて | gihyo.jp

                              MySQLではレプリケーションがよく利用されます。また、アプリケーションは負荷分散のために、ソースだけでなくレプリカを参照系として利用することも多いです。しかし、レプリケーションは遅延するリスクがあります。そのため、アプリケーションは高負荷やロングトランザクションによる想定外の遅延が起こることを考慮して、設計や実装を検討しなければなりません。 MySQLでは遅延レプリケーションをサポートしています。遅延レプリケーションとは、ソースよりもレプリカへの適用を指定した時間だけ意図的に遅らせることができる仕組みです。ステートメント単位ではなく、トランザクション単位で遅延を発生させます。ソースへのトランザクション実行から指定した時間後に、レプリカに対してそのトランザクションを適用することになります。トランザクション内の各ステートメントは待機時間なく実行されます。 今回はこの遅延レプリケーションの設定

                                第230回 MySQLの遅延レプリケーションについて | gihyo.jp
                              • FlutterのためのDart製サーバフレームワーク「Serverpod 1.0」正式リリース。Dartでサーバからクライアントまで開発可能に

                                FlutterのためのDart製サーバフレームワーク「Serverpod 1.0」正式リリース。Dartでサーバからクライアントまで開発可能に FlutterアプリケーションをクライアントとしたバックエンドサーバのためのDart製フレームワーク「Serverpod 1.0」がオープンソースとして正式にリリースされました。 これでFlutterによるクライアント開発だけでなく、サーバでもDartを用いた開発体験を得ることができるようになります。 We are live! Watch the @ServerpodDev 1.0 release keynote on Youtube. Over a year in the making. Finally you can write your #Flutter app #backend in #Dart.https://t.co/c5P1SGqiO

                                  FlutterのためのDart製サーバフレームワーク「Serverpod 1.0」正式リリース。Dartでサーバからクライアントまで開発可能に
                                • MySQLの知らないと怖い話-注意点を記載

                                  今回はMySQLの怖い話(注意点)について書いていきます。知っていれば大丈夫! 具体的には以下の点について書いていきます。 デフォルト設定では大文字と小文字を区別しませんNULLと空文字は別ものですIN句の中に大量の値の入れるとパフォーマンスが劣化するREPLACE句の挙動CONCATで文字列連結時に、ひとつでもNULLな項目があると、結果はNULLになるUNIQUE インデックス制約では、文字列の後のスペースが無視される知っていれば大丈夫なので、1つずつ確実に理解していきましょ★ デフォルト設定では大文字と小文字を区別しません検索時に「hoge」をキーとして検索した場合、テーブルデータに「hoge」「HOGE」「Hoge」があったとすると、全てヒットします 大文字・小文字を区別せずに検索しますUNIQUE インデックスがあるテーブルにデータ登録する場合、テーブルデータに「hoge」がある

                                    MySQLの知らないと怖い話-注意点を記載
                                  • DuckDBでお手軽!データフェデレーション - Techtouch Developers Blog

                                    tl;dr はじめに DuckDB とは DuckDB では何が読めるのか 使ってみる S3 上のJSON を読んでみる リレーショナルデータベース 他ツールではなく DuckDB を使うメリット しくじりポイント (特にリリースされたばかりの)バージョンには気をつける S3 のオブジェクト数が多い場合不都合がありがち スレッドの調整が必要な場合も Redshift には未対応 終わりに 付録 MySQL のデータを読み込む例の MySQL 側の準備 tl;dr DuckDB 便利だよ。分析以外でも使えるよ 色々な場所のデータを閲覧・結合できるよ。標準SQLも使えるよ ただし、細かい落とし穴は色々あるので気をつけてね はじめに2023年4月にデータエンジニアとして入社したmin(@not_rogue)です。暖かくなるにつれ、YouTube で見た南伊豆ロングトレイル | 松崎町に行く機運が

                                      DuckDBでお手軽!データフェデレーション - Techtouch Developers Blog
                                    • DMM.com が Amazon Aurora MySQL に移行して、最大 70% のパフォーマンス向上と運用コストの大幅削減を実現 | Amazon Web Services

                                      Amazon Web Services ブログ DMM.com が Amazon Aurora MySQL に移行して、最大 70% のパフォーマンス向上と運用コストの大幅削減を実現 DMM.com は動画配信事業とオンラインゲーム事業、FX 等の金融サービスを主力として、オンライン英会話サービスなど 60 以上のサービスを展開している企業です。DMM.com では、オンプレミスの MySQL で稼働していたユーザーレビュー機能を、Aurora MySQL に移行しています。データの移行は AWS Database Migration Service (DMS) を使用してダウンタイムを最小限に抑えつつ、移行元への逆同期や SageMaker を使用したデータ検証の仕組みなど、様々な工夫をしながら移行を成功させることができました。本ブログでは、DMM.com でオンプレミスの MySQL

                                        DMM.com が Amazon Aurora MySQL に移行して、最大 70% のパフォーマンス向上と運用コストの大幅削減を実現 | Amazon Web Services
                                      • Next.js Database with Prisma | Next-Generation ORM for SQL Databases

                                        Next.js blurs the lines between client and server. It supports pre-rendering pages at build time (SSG) or request time (SSR). Prisma is the perfect companion if you need to work with a database in a Next.js app. You can decide whether to access your database with Prisma at build time (getStaticProps), at request time (getServersideProps), using API routes, or by entirely separating the backend out

                                          Next.js Database with Prisma | Next-Generation ORM for SQL Databases
                                        • MySQLの約30億レコードをRedshiftにDMSでニアリアルタイム同期した - クラウドワークス エンジニアブログ

                                          概要 こんにちは。クラウドワークス SREチームの@kangaechuです。最近好きなラジオ番組は空気階段の踊り場です。 企業にとってデータは非常に重要です。さまざまなデータを組み合わせて分析を行うことにより、ユーザをより深く知ることができ、それによりサービスやビジネスモデルを継続的に変革することが可能になります。 クラウドワークスでも同様に、施策やマーケティング、新サービスの開発など、さまざまな取り組みの源泉としてデータを活用しています。 crowdworks.jpではマスタデータベースにAWS RDSで稼働するMySQLを使用し、分析系のデータベースにはAmazon Redshiftを使用しています。Redshiftに同期されたテーブルは約270テーブル、レコードにして約30億件あり、1か月に1.5億件のレコードが同期されています。 今回はMySQLからRedshiftへの同期の仕組み

                                            MySQLの約30億レコードをRedshiftにDMSでニアリアルタイム同期した - クラウドワークス エンジニアブログ
                                          • 時代に即したMySQレの新機能:PLEASE句 - sakaikの日々雑感~(T)編

                                            最近は、会社などの組織において仕事の指示をする場合に、単に上司が命令をするだけでは組織は動かないと言われています。部下に仕事をしてもらうには--そう、まさにこの「してもらう」の気持ちこそが本質なのですが--「命令」ではなく「依頼」の形を取ることで、お互いに気持ちよく仕事をすることができ、より良いチームとなるのです。 この世の中の流れは近年、ソフトウェアの世界にも強く適用されるようになってきました。ソフトウェアに於いても、常に、より中立的な立場での対応が求められてきています。 MySQレも例外ではなく、最近の修正ではレプリケーションの master-slave を source-replica と呼ぶように変更したり、blacklist を blocklist に変更したりなどの話題を目にした方も多いと思います。 これら一連のポリティカリーにコレクトな対応に今回新たに加わったのが、冒頭で紹介

                                              時代に即したMySQレの新機能:PLEASE句 - sakaikの日々雑感~(T)編
                                            • MySQLのcollationの動作を体系的に理解する - shallowな暮らし

                                              はじめに collationとは二つの文字の間の順序を定義するものです。こう言われるととても単純に聞こえるのですが、MySQLのcollationの詳細な動作は実は結構複雑です。 この記事はcollationの挙動に関する体系的な解説と様々な具体例を元にcollationに対する理解を深め、collationの問題のトラブルシューティングの筋道を立てる事を目的としています。なお、この記事は大まかなcollationの動作の説明を目的としており、全てを網羅しているわけではありません。詳細な動作はMySQLの公式ドキュメントの方が丁寧ですので実際のトラブルシューティングではドキュメントもご活用ください。 なお、この記事での検証はMySQL8.0.31を利用しています。 collationの基礎 collationは冒頭で説明したように二つの文字の順序関係や同値関係を決めるものです。collat

                                                MySQLのcollationの動作を体系的に理解する - shallowな暮らし
                                              • Visual Studio Codeで使えるリモート環境のdevcontainerが意外と便利そうだったのでまとめ

                                                試してたらたまたまVisual Studio Code(vscode)のdevcontainer(Remote Container)が、Remote SSH経由でリモート環境でも使えることを知ったので、devcontainer用の環境構築方法やdevcontainerの構築方法についてまとめてみた 今まではローカル環境のdockerか、codespaceでしか利用できないのかなと思っていたのだけど、リモート含めて利用できるとかなり便利そうな印象だったので一通り試してみました 最近はRemote SSHでリモート環境を利用するケースが多いのでリモート環境で使えないならそんなに使えないかなと思ってたんだけど、普通にRemote SSH経由でdevcontainer使えたのでかなり便利そうだった devcontainerについてはこちらを参照してもらえればと はじめに 結論から言うと以下のような

                                                  Visual Studio Codeで使えるリモート環境のdevcontainerが意外と便利そうだったのでまとめ
                                                • 【30歳/完全未経験/独学】webアプリを作製しました【Golang, Next.js, MySQL, Docker, GitHub Actions CI, AWS Fargate on ECS】 - Qiita

                                                  完成物 ER図 画面遷移図 figma, 原寸画像 AWS構成図 ※備考※ GitHub Actions CIは構築済みです。 GitHub Actions CD, apiのprivate subnet化にも取り組んでいます。 EC2インタンスは通常時停止です。 技術選定理由 プログラミング、IT業界ともに未経験で着手し独学で作りました。 Go 比較対象:JAVA、Ruby、Python、PHP コンパイラ言語であり実行速度が高速である 静的型付けであり、コンパイル前にバグを発見しやすい 静的型付けかつ記述自由度が低いことから、以下2点を利点と考えた 開発を中長期まで続けた際にも、加筆・改修しやすい 他人のコードを読んだ際に学びやすい Javaも多少書いてみたが、簡素にかけるGoの方がしっくりきた SHOWROOM、IRIAM、Twitch、AbemaTVといった動画配信サービスにも採用さ

                                                    【30歳/完全未経験/独学】webアプリを作製しました【Golang, Next.js, MySQL, Docker, GitHub Actions CI, AWS Fargate on ECS】 - Qiita
                                                  • Postgresqlのltreeを活用した階層構造の便利な利用法 - RAKUS Developers Blog | ラクス エンジニアブログ

                                                    はじめに ltreeとは ltree型 ltreeの操作 活用法 1. 承認フローの構築 事前準備 テーブル作成 データ追加 2. テーブルに細かくアクセス制御をかける 事前準備 ltreeの有効化 テーブル作成 ポリシー作成 行セキュリティポリシーの有効化 ポリシーの設定 データを追加 ユーザー作成 試す まとめ はじめに こんにちは! エンジニア2年目のTKDSです! 今回はltreeについて調べ、その活用法を考えてみました。 ltreeについて、ltreeの活用法の2段構成です。 ltreeとは 階層ツリー構造を模した構造を格納する機能を提供する拡張機能です。 詳しくはドキュメントをみてください。 ltree型 階層ツリー構造を表す型です。 例)`Company.Department.Team1 ドット区切りで大文字小文字は区別しないようです。 各データはラベルと呼びます(上記でのC

                                                      Postgresqlのltreeを活用した階層構造の便利な利用法 - RAKUS Developers Blog | ラクス エンジニアブログ
                                                    • UNIQUE制約の理解が甘くて二重にインデックスを張りそうになった件 - Techouse Developers Blog

                                                      はじめに こんにちは、株式会社 Techouse のクラウドハウス採用でエンジニアインターンをしている ReLU と申します。 いきなりですが、以下のグラフをご覧ください。 これは PostgreSQL の実行計画を取得した結果です。 あえてグラフタイトルや横軸の説明は隠しているのですが、実行時間の差が非常に大きいことがわかると思います。 実行計画とは、データベースが SQL クエリを実行する際に、どのようにデータを操作するかを決定するための詳細な手順のことです。クエリを実行して期待される結果を得る方法にはいくつかの選択肢があり、その選択によって処理の効率が大きく異なります。PostgreSQL は、これらの選択肢の中から最も効率的だと判断した方法を実行計画として作成し、それに基づいてクエリを実行します。この選択は、これまでに収集された統計情報(テーブルのサイズやデータ分布)、インデックス

                                                        UNIQUE制約の理解が甘くて二重にインデックスを張りそうになった件 - Techouse Developers Blog
                                                      • MySQLで全文検索機能を試したら実行速度が遅かったので調査してみた - iimon TECH BLOG

                                                        ◼️ はじめに ◼️ 前提条件 マシン環境 データベースについて ◼️ データ挿入に関して ◼️ 100万レコードでLIKE検索(前後の部分一致)と全文検索の比較 LIKE検索 全文検索 ◼️ EXPLAINで実行計画を確認 LIKE検索のEXPLAIN結果 全文検索のEXPLAIN結果 ◼️ EXPLAIN ANALYZEを確認 LIKE検索のEXPLAIN ANALYZE結果 全文検索のEXPLAIN ANALYZE結果 ◼️ リソース使用状況確認 全文検索のクエリのプロファイリングを確認 ◼️ INNODB_FT_INDEX_TABLEを確認 ◼️ テストデータを修正 最初に作成したレコード内容の一部 新たに作成したレコード内容の一部 LIKE検索 全文検索 ◼️ まとめ ◼️ 最後に ◼️ はじめに こんにちは!株式会社iimonでフロントエンジニアをしているあめくです! 本記事は

                                                          MySQLで全文検索機能を試したら実行速度が遅かったので調査してみた - iimon TECH BLOG
                                                        • PythonでMySQLのスロークエリログを集計 | 外道父の匠

                                                          久々に溜まったブログネタ放出をしようかなと、その前に下書きから掘り起こしてきた、いまさらなスロークエリ関連で準備運動です。 RDSのスロークエリ情報は当然、集計を自動化していつでも見れるようにしてあるのですが、ちょいと必要があったので、今回はあえて単発ログを集計する形に切り出したものを用意してみました。 スロークエリログの必要性 最近はNewRelicとかで、アプリケーションの処理を分別して処理時間などを集計するので、それで課題となるクエリを確認したりもします。 非常に便利な仕組みですが、アプリケーション外のジョブなどが実行したクエリは集計されないことや、負荷試験で課題を炙り出すときだとテスト環境にエージェントやライブラリを仕込む必要がある、といったデメリットとまでは言わないまでも面倒さがあります。 その点、スロークエリはサーバー側で記録するものなので、0.1秒とかでONにしておけば、対象

                                                            PythonでMySQLのスロークエリログを集計 | 外道父の匠
                                                          • pg_graphql: A GraphQL extension for PostgreSQL

                                                            We found both options to be largely viable for the core feature set. Which left us with one final hang-up: we host free-tier projects on VMs with 1 GB of memory. After tallying the resources reserved for PostgreSQL, PostgREST, Kong, GoTrue, and a handful of smaller services, we were left with a total memory budget of ... 0 MB 😬. Unsurprisingly, our pathological memory target disqualified any opti

                                                              pg_graphql: A GraphQL extension for PostgreSQL
                                                            • DHHが考えるRailsのバリデーション設計

                                                              3行まとめ 単純なバリデーション(必須・範囲・文字数など)はHTMLとDB制約、CHECK制約があれば十分であるというのが最近のDHHの主張。 SQLiteではCHECK制約が少し貧弱なため、制約変更の可能性がある場合は従来通りアプリケーションでもバリデーションした方がいい。 Rails初心者はDHHの方法をそのまま採用するのはやめた方が良い。 調べたきっかけ 最近DHHがonce.comでのCampfireをはじめとしたプロダクトで、NULL制約やDB制約で防げるようなRailsのモデルのバリデーションを積極的には利用しないでいるという主張をしている。 DHHの主張を要約すると以下のようになる。[1] HTMLでのバリデーションが優れている 例えば、input type=“email” にしておくとブラウザで勝手にメールアドレス形式ではない場合にエラーにしてデータ送信をしないようにしてく

                                                                DHHが考えるRailsのバリデーション設計
                                                              • 検索基盤を安全にElasticsearchに置き換えるためにやったこと

                                                                Feature Toggleとダークローンチで安全にElasticsearchクラスタをリリースした話。

                                                                  検索基盤を安全にElasticsearchに置き換えるためにやったこと
                                                                • 業務システム開発でsqlcを導入して良かった点とハマった点 | フューチャー技術ブログ

                                                                  はじめにTechnogoly Innovation Group 辻です。Go には Gorm や SQLBoiler をはじめとして様々な O/Rマッパ があります。2021 年には当社のブログで OR マッパーの連載を行ったこともありました。絶対的な O/Rマッパ があるわけではなく、業務システムの特性やチーム構成などに合わせて O/Rマッパ を選択することになるでしょう。 今回、私たちのチームでは、バッチ処理が中心的な業務システム開発において Go の O/Rマッパ に sqlc を採用しました。素の SQL を書いていくチームの開発方針1とマッチし、開発体験は非常に良かったです。一方、枯れきってはいない O/Rマッパ ではあります。いくつか想定外の挙動が発生し GitHub の Issue を見ながら問題を切り分けることもありました。 これから sqlc を導入してみようかな、と考え

                                                                    業務システム開発でsqlcを導入して良かった点とハマった点 | フューチャー技術ブログ
                                                                  • MySQL のインデックスと EXPLAIN の社内講習会しました!|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ

                                                                    MySQL のインデックスと EXPLAIN の社内講習会しました! みなさんMySQL使っていますか? インフラエンジニアの nobuh こと波多野です。 弊社はサーバー開発に携わることが多く、サーバー開発の言語としては PHP をはじめ C# などいろいろな言語を使っています。そのサーバーと合わせて必須となるデータベースについては MySQL ないし AWS RDS Aurora など MySQL 互換データベースを含め、ほぼ 100% MySQL を使っています。 そして、どんなサービスやプロダクトでもデータを管理し提供するデータベースは、性能でも重要な部分になります。 今回そんな MySQL の性能で重要となるインデックスについて、またクエリをチューニングする場合に必要となる EXPLAIN についての社内講習会を「新卒講義」の場を借りて実施いたしました。その内容について紹介したい

                                                                      MySQL のインデックスと EXPLAIN の社内講習会しました!|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ
                                                                    • 初めてのPerformance Insights入門 | Amazon Web Services

                                                                      Amazon Web Services ブログ 初めてのPerformance Insights入門 テクニカルソリューションアーキテクトの笹川です。 本記事ではRDS MySQL使用時のPerformance Insightsの使い方についてご紹介させて頂きます。 Performance Insightsを聞いたことがあるけれど何ができるのか分からない、実際にどのように活用すれば良いのかイメージができないという方もいらっしゃるのではないでしょうか。今回は初めてのPerformance Insights入門と題してサンプルのクエリを実行しながらPerformance Insightsの使い方をご紹介していきます。 Performance InsightsとPerformance Schema Performance InsightsではDBの負荷状況がMySQLにログインすることなくAWS

                                                                        初めてのPerformance Insights入門 | Amazon Web Services
                                                                      • PostgreSQL 15ではpublicスキーマへの書き込みが制限されます | DevelopersIO

                                                                        PostgreSQLではデータベースを作成すると、デフォルトで public スキーマが作成され、任意のユーザーがこのスキーマにオブジェクトを作成できました。 CVE-2018-1058 でpublicスキーマのこの仕様とsearch_pathを使ったトロイの木馬攻撃の脆弱性(仕様の潜在リスク)が報告されました。 この攻撃から守るために、以下のような方法が推奨されています。 public スキーマの CREATE 権限を REVOKE ユーザーごとにスキーマを割り振る search_path に public スキーマが含まれないように調整 PostgreSQL 15からは、1つ目の回避策がデフォルトで有効になり、データベースのオーナーだけがpublicスキーマにオブジェクトを作成できるようになります。 Remove PUBLIC creation permission on the pu

                                                                          PostgreSQL 15ではpublicスキーマへの書き込みが制限されます | DevelopersIO
                                                                        • Atlas | Manage your database schema as code

                                                                          Define database schemas in declarative code. Use HCL, SQL or any ORM or language. Supports all popular ORMs, such as GORM, Sequelize, Django, SQLAlchemy, Hibernate, and more. Test your schemas and migrations using the Atlas testing framework.

                                                                            Atlas | Manage your database schema as code
                                                                          • MySQL 8.4 LTS登場!!

                                                                            記事を書くのが遅くなってしまったが、先日MySQL 8.4シリーズが登場したので紹介をしておこうと思う。新機能の解説については機会を改めて書くとして、今回は主にアップグレードにまつわる重要なポイントを書き記しておく。 LTS = Long Term Support 以前の記事でも紹介した通り、MySQL 8.4はLTS = Long Term Supportのバージョンとなっている。長期間サポートするために互換性を最大限保証するバージョンである。前のメジャーバージョンであるMySQL 8.0シリーズのように、シリーズの途中で互換性が破壊されるような変更が入ることは基本的に無い。「バグ修正のためにどうしても仕様を変えなければならない」というような事態が生じる可能性はゼロではない。なので絶対に互換性が保たれるとは言い切れないところであるが、基本的には仕様変更はない方向で今後リリースされていくこ

                                                                              MySQL 8.4 LTS登場!!
                                                                            • PlanetScaleとは何か、なぜ外部キー制約をサポートしていないのか

                                                                              PlanetScaleとは PlanetScaleはMySQLのマネージドサービスです。 内部の実装には元々YouTubeのために開発されたMySQLのクラスタリングシステムであるVitessが使用されています。 Vitessの開発に携わってらっしゃるSugu SougoumaraneさんがCTOとして在籍しており、スケーラブルなデータベースを構築するためのサービスとなっています。 すでにSlack, Square, GitHubなどの企業で採用されているそうです。 この記事ではPlanetScaleのどういった点が優れているのか、これまでMySQLが抱えていた問題点をどのように解決しているのかといったことをまとめます。 その中でタイトルにもつけましたが、なぜ外部キー制約をサポートしていないのかといった点も交えて説明します。 これまでのMySQLの問題点 大量のレコードが存在するテーブルの

                                                                                PlanetScaleとは何か、なぜ外部キー制約をサポートしていないのか
                                                                              • Ruby on Railsと素のPostgreSQLで日本語全文検索 - 2020-12-22 - ククログ

                                                                                PostgreSQLに超高速な日本語全文検索機能を追加するPGroongaを開発している須藤です。今回はPGroongaやpg_bigmなど拡張モジュールを使わずにPostgreSQLの組み込み機能だけで日本語全文検索を実現する方法を紹介します。PGroongaを使う方法はRuby on RailsでPostgreSQLとPGroongaを使って日本語全文検索を実現する方法を参照してください。 Heroku PostgresなどDBaaSとして提供されているPostgreSQLではPGroongaを使えません。(DBaaSとして提供しているベンダーがPGroongaをインストールしてくれないから。)PostgreSQLの組み込み機能だけでは日本語全文検索を満足に実現することができないので、DBaaSのPostgreSQLを使っていると次のように日本語全文検索で困ってしまいます。 日本人のプ

                                                                                  Ruby on Railsと素のPostgreSQLで日本語全文検索 - 2020-12-22 - ククログ
                                                                                • MySQLのOOMと戦った話

                                                                                  The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024

                                                                                    MySQLのOOMと戦った話

                                                                                  新着記事