並び順

ブックマーク数

期間指定

  • から
  • まで

201 - 240 件 / 2426件

新着順 人気順

RDBの検索結果201 - 240 件 / 2426件

  • 業務でどれだけSQL力がつくのか ~SQLアンチパターンを用いて確認~ 前編

    はじめに こんにちは。 GMOアドマーケティングのKONCEです。 新卒で入社し、数年経ちました。日々の業務で学ぶことは多いですが、今年度は技術の深堀りをテーマにやっていきたいと思っています。 今回は入社してDBやSQLに関しては業務内で学ぶことが多く、特別訓練をしていたわけではなかったのですが、「SQLアンチパターン」を用いて学びながら、改めて自分の現状を見つめ直していけたらと思います。 今回は学習を行う側面と自分自身のレベルについて見直していきたいので 知っていた → ○ 部分的に知っていた → △ 知らなかった → × を付けてみようと思います。 目次 SQLアンチパターンについて Ⅰ部 データベース論理設計のアンチパターン 2-1. [○]1章 ジェイウォーク(信号無視) 2-2. [×]2章 ナイーブツリー(素朴な木) 2-3. [○]3章 IDリクワイアド(とりあえずID) 2

      業務でどれだけSQL力がつくのか ~SQLアンチパターンを用いて確認~ 前編
    • 「分析SQLスタイルガイド」をかなり真面目に考えた - Qiita

      インデントルール 1段目から3段目にかけて徐々に処理の粒度を細かくしていく。同じ階層に異なる粒度の処理を書かない。 【メリット】コードを構造的に読むことができ、理解しやすい 1段目は処理の大区分を示す句だけ(select,from,groupby,with,orderby) 一段目は大区分にすることで、コード全体のどこに何が書いてあるかがすぐに分かる。 2段目は処理関数、列名、テーブル名を並べる(列名、テーブル名、case whenのcase) 2段目を見ることで処理の概要とインプットとアウトプットが理解できる。 3段目は処理の補足を記載する(joinのon、case whenのwhen) 3段目を見ることで、より詳細な処理の内容を詳しく知ることができる 別名ルール SQLの別名は、うまく使えば読みやすくなり、下手に使うと読みづらくもなります。 テーブルの別名は先頭の文字を使う。重複する場

        「分析SQLスタイルガイド」をかなり真面目に考えた - Qiita
      • 【2025年】爆速でゼロイチ開発するための技術スタック

        はじめに 個人開発やゼロイチの立ち上げに最適な技術スタックを書いていく。 なるべく安上がりな構成を目指す。 TypeScriptをベースに よっぽどパフォーマンスにこだわりがなければTypeScriptを採用したい。 1つの言語でフルスタック開発可 脳の言語スイッチング不要 型定義を使い回せる トレンドで将来性がある 小〜中規模開発ならこの恩恵はでかいため、フルスタックTypeScriptフレームワークを採用したい。 Next.js or React Router よっぽどパフォーマンスにこだわりがなければReact Routerを採用したい。 個人的にNext.jsはゼロイチ開発にはオーバースペックだと感じる。 以下のような点からNext.jsの採用は見送りたい。 Server/Clientの境界線がわかりづらい Server Components, Actions, Functions

          【2025年】爆速でゼロイチ開発するための技術スタック
        • より速い WEB を目指す Next.js / nextjs-make-the-web-faster

          【Next.js Update!】v12リリースを踏まえ、Next.jsの採用を考える 本発表は以下URLでアーカイブ視聴が可能です。https://youtu.be/KaS3bgz_CA4 イベントページ:https://forkwell.connpass.com/event/228457/

            より速い WEB を目指す Next.js / nextjs-make-the-web-faster
          • 高効率なSQLクエリの書き方 - Qiita

            概要 この記事では、SQLクエリをより効率的に記述するためのベストプラクティスとテクニックに焦点を当てています。データベースのクエリはシステム全体のパフォーマンスに直結するため、最適な書き方を知ることは重要です。インデックスの効果的な活用方法、適切な結合の選択、そして条件の効果的な書き方など、SQLの最適化に関する具体的な手法を解説します。各SQL文に関する実行計画の結果も掲載していますので、ぜひご確認ください。 なお、Oracle19cとOracle12cでの利用実績がありますが、他のデータベースやバージョンにおいての検証は行っておりません。 新しい情報は随時追加されますので、お楽しみにしてください。 SQLの最適化に関連する基本的なアイデア 以下の通りと考えています。 1.インデックスの利用 2.正しいJOINの選択 INNER JOIN、LEFT JOIN、RIGHT JOINなど、

              高効率なSQLクエリの書き方 - Qiita
            • SQLわかんねーーーーーーーー!!!!!!

              学生時代に独学でVBAやってたのが零細企業でなぜか評価されてDB管理をやらされかけてるけど SQLマジでわかんねーーーーーーーーーーー!!! なんだこれーーーーーーーーーーーーー!! ああああああああああああああ!!!! わかんねーーーーーー!!!!

                SQLわかんねーーーーーーーー!!!!!!
              • 排他制御のためだけに Redis 渋々使ってませんか?データベース単独でアドバイザリーロックできるよ!

                トランザクション分離レベルについての教養があったほうがこの記事の内容を理解しやすいため,必要に応じてまず以下を参照されたい。 背景 以前, Qiita で以下の記事を投稿した。今回の議題に直接的な関係はないが,関連している部分があるため引用する。 MySQL/Postgres とも, MVCC アーキテクチャの恩恵で, SELECT と UPDATE は基本的には競合しない。 単一レコードのシンプルな UPDATE でも排他ロックされ,排他ロック中のレコードへの UPDATE での変更操作は トランザクション分離レベルによらず ブロックされる。UPDATE 文に含まれる WHERE 句での検索もブロックされ,これはブロックされない SELECT による検索とは別扱いになる。 但し UPDATE 文の WHERE 句上で,更新対象をサブクエリの SELECT から自己参照している場合は例外。

                  排他制御のためだけに Redis 渋々使ってませんか?データベース単独でアドバイザリーロックできるよ!
                • 履歴データテーブルとの向き合い方_PHPerKaigi2024

                  PHPerKaigi2024 の登壇資料です。 履歴データテーブルとの向き合い方 https://fortee.jp/phperkaigi-2024/proposal/47cf9f17-825a-4021-bf33-86e4a62bc222

                    履歴データテーブルとの向き合い方_PHPerKaigi2024
                  • 9時間足すんだっけ引くんだっけ問題~あるいは、諸プログラミング言語はいかにタイムゾーンと向き合っているか - エムスリーテックブログ

                    私は日付時刻の処理が大好きです。 タイムゾーンの問題でデータ抽出が9時間分漏れていたとか、朝9時の始業前のログが昨日付けになってしまっていたなんていう問題が起こると喜んじゃうタイプ。 そんな私にとって、各プログラミング言語が標準で持っている日付時刻型クラスにはそれぞれ思うところがあり、今日はちょっとその品評会をしてみたいと思います。 エムスリーエンジニアリンググループ、Unit1(製薬企業向けプラットフォームチーム)三浦(@[email protected]) [記事一覧 ]がお送りいたします、エムスリー Advent Calendar 2023の2日目です。 至高の日付時刻型を持つ言語、BigQuery SQL 不足はないが蛇足、Java 8 日付時刻で画竜点睛を欠いたC# C#よりややまし、Python 型は良い構成、なのに命名と処理関数で損しているPostgreSQL まとめ We ar

                      9時間足すんだっけ引くんだっけ問題~あるいは、諸プログラミング言語はいかにタイムゾーンと向き合っているか - エムスリーテックブログ
                    • SQL滅ぶべし | ドクセル

                      SQL • リレーショナルデータベースシステムと会話するための言語 • 1970年 Codd が RDB モデルと同時に提案 (Alpha言語) • 1974年 Chamberlin と Boyce が改良 • 元々は SEQUEL (Structured English Query Language) だったが、商標登録されていた • 読み方は エスキューエル とそのまま読む (Glliespie 2012) SQL • SQL は目的別に 4つに分けられる • DCL (データ制御言語) GRANT とか • DDL (データ定義言語) CREATE TABLE とか • TCL (トランザクション制御言語) ROLLBACK とか • DML (データ操作言語) • INSERT, UPDATE, DELETE, SELECT • データ分析者にとって重要なのは SELECT 文

                        SQL滅ぶべし | ドクセル
                      • エムスリーのデータ基盤を支える設計パターン - エムスリーテックブログ

                        こんにちは、エムスリー エンジニアリンググループ の鳥山 (@to_lz1)です。 ソフトウェアエンジニアとして 製薬企業向けプラットフォームチーム / 電子カルテチーム を兼任しています。 ソフトウェアエンジニアという肩書きではありますが、私は製薬企業向けプラットフォームチームで長らくデータ基盤の整備・改善といったいわゆる "データエンジニア" が行う業務にも取り組んできました。 本日はその設計時に考えていること / 考えてきたことをデータ基盤の設計パターンという形でご紹介しようかと思います。多くの企業で必要性が認識されるようになって久しい "データ基盤" ですが、まだまだ確立された知見の少ない領域かと思います。少しでもデータエンジニアリングを行う方の業務の参考になれば幸いです。 データ基盤の全体像 収集部分の構成 RDBデータ ログデータ 活用部分の構成 データマートの実例 「データ基

                          エムスリーのデータ基盤を支える設計パターン - エムスリーテックブログ
                        • LEFT JOINの論理削除はWHERE句でしぼるな

                          レバテック開発部ではエンジニアを募集中です! カジュアル面談はこちら ■ 主な開発業務 オウンドメディアの開発 SFAシステムの開発 各システムの改善やリプレイス ■ 最近のトピック TiDB, NewRelicの導入 Devin等のAI導入 ■ エンジニア支援制度 MacBookPro/HHKB/MagicTrackPad/アーロンチェア等の貸与 毎月1万円の技術書購入支援 認定スクラムマスターなどの資格取得支援 外部技術顧問への相談

                            LEFT JOINの論理削除はWHERE句でしぼるな
                          • Amazon DynamoDB の論文を読んでいく - Qiita

                            Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 概要 AWS で人気のサービス DynamoDB についての論文が公表され巷で噂になっていたと思う。 今回は、その論文を読み込んでいき、ざっくりまとめていくという記事になります。 完全趣味な記事なので、興味ある人がいれば幸いです笑 Abstract まず論文のタイトルですが、「Amazon DynamoDB: A Scalable, Predictably Performant, and Fully Managed NoSQL Database Service」と題したものとなっています。 Amazon DynamoDB は、NoSQL

                              Amazon DynamoDB の論文を読んでいく - Qiita
                            • 作って理解する RDBMSのしくみ

                              Kaigi on Rails 2024「作って理解する RDBMSのしくみ」の発表スライド。 #kaigionrails https://kaigionrails.org/2024/talks/ydah/

                                作って理解する RDBMSのしくみ
                              • みんなの校則データベース:広島県内公立高校版【2021年3月公開】|中国新聞デジタル

                                概要 広島県内の公立高(全日制)と中等教育学校、計88校の校則を一覧できるデータベースです。中国新聞が2020年8月に広島県教委、広島市教委、福山市教委、呉市教委に開示請求した「生徒指導規程」などの資料を基に、服装、頭髪、化粧や装飾品についての決まりを抜き出して整理しています。 使い方 関心のあるキーワードや学校名、地名などで自由に検索できます。複数のキーワードをスペースで区切っての検索も可能です。トップページに表示される「キーワードボタン」を押すことでも利用できます。 注意事項 学校によって開示する資料やその範囲が異なっています。また、「服装」などの分野ごとに整理するため、基とした資料とは記述の順番が変わっていることがあります。そのため「(1)」などの通し番号を「◆」などの記号に置き換えている場合があります。

                                • [ピッコロが悟飯に行った修業には、科学的意味があった? 二人の「師弟関係」を発達心理学の専門家が解説]| 【公式】ドラゴンボールオフィシャルサイト

                                  名シーンの多いドラゴンボールですが、印象深いエピソードと聞いて、孫悟飯とピッコロの特訓を思い出す人は多いのではないでしょうか。悟空と敵対関係にありながらその息子である悟飯を鍛え上げるピッコロ、そして修業を通じて二人の関係が変化していく一連の流れは、作中でも非常に人気のあるエピソードのひとつです。 とはいえ、地球に襲い来るベジータ・ナッパを迎え撃つため、ピッコロに鍛えられていた頃の悟飯はわずか4歳。獣がはびこる土地で6か月間放置され、その後はピッコロとの闘いの日々……いくら悟飯に才能があったとしても、修業の辛さは生半可なものではなかったはず。悟飯はどのようにして修業を乗り越え、さらにピッコロと信頼関係を育んでいったのか、作中に描かれていない過程についてもついつい考察してしまいます。 そこで今回は、東京大学の教授で、発達心理学の専門家である遠藤利彦先生に「ピッコロと悟飯の師弟関係」についてお話

                                    [ピッコロが悟飯に行った修業には、科学的意味があった? 二人の「師弟関係」を発達心理学の専門家が解説]| 【公式】ドラゴンボールオフィシャルサイト
                                  • データベースの在庫の持ち方をビットで管理してる話 - 一休.com Developers Blog

                                    こんにちは、一休.comスパ(以下、「スパ」)の開発を担当しているshibataiと申します🙏 今回はスパのデータベースの在庫の持ち方で試行錯誤した話をさせていただきます。 背景 2024-03-29追記: 一休.comスパにおける在庫の特徴について 一休.comスパが扱う「在庫」は、「ある日付の特定の時間に対する空き枠」です。以降の説明では、スパ施設ごと、日付ごと、また時間ごとに増えていく「在庫」をいかに効率よく扱うかについて説明しています。 詳細については次のスレッドも参照してください! https://t.co/Y0SPmDE4yZ この記事のコメントみてると、少し我々のシステムの要件が伝わってないというかそこの説明が記事に不足しているように思った。ので以下その補足— naoya (@naoya_ito) March 29, 2024 現在の実装 スパは予約を受け付けるために在庫の

                                      データベースの在庫の持ち方をビットで管理してる話 - 一休.com Developers Blog
                                    • 次世代SQLクライアントArctypeを触ってみる

                                      どうも、株式会社プラハCEOの松原です 先日社内のエンジニアに「このSQLクライアントがイケてそう!」と教わったので早速Arctypeを触ってみました TL;DR クエリの補完が最高 チャートやダッシュボードを通して簡単に可視化できる 操作性に優れていて、見た目が綺麗 クエリやダッシュボードごとに権限管理できる プレースホルダーを使えば非開発者ともクエリを共有しやすい 説明しよう、Arctypeとは なんかイケてるSQLクライアントです セットアップ それぐらいしか分からないので、ひとまずDBを立ち上げて実際に使ってみようと思います。こちらのmysql-employeesを使わせていただきましょう docker run -d \ --name mysql-employees \ -p 3306:3306 \ -e MYSQL_ROOT_PASSWORD=college \ -v $PWD/

                                        次世代SQLクライアントArctypeを触ってみる
                                      • ★★再追記 レンタルサーバは、自由度が低くてストレスになるからやらない..

                                        ★★再追記 レンタルサーバは、自由度が低くてストレスになるからやらない。SQLでwith使いたいからMySQL8をって言ってもさくらレンタルサーバじゃ無理なんでしょ? あと同居利用者のせいで高負荷ってのも避けたい。そこを気にしない人はレンタルサーバでいいと思うよ。 あと LB $0.025/h だった。月2000円くらいか。 ★追記 LBは独自ドメイン+自動更新無料SSL証明書のためね。Cloud Storageの無味乾燥なドメインでいいなら、SSL自動かつ無料でほんとに月数円。 ------- もうねめんどくさいんだわ。もちろん以前はそうやってたよ。 PHPだのApacheだのMySQLだのインストールしたり設定ファイル置いたり、 脆弱性対応したり、SSL証明書更新したり、一応落ちてないか無料監視サービス使ったり。 でも仕事ならともかく、趣味だからこそこんなことやりたくないじゃん。 なの

                                          ★★再追記 レンタルサーバは、自由度が低くてストレスになるからやらない..
                                        • Youtubeは無限のクラウドストレージ - Qiita

                                          みなさん、こんな経験はありませんか もちろんありますよね。ということで無料で無限にクラウドストレージを使う方法を考えました。(月額130円で50GBは破格だけど) Youtube好き 今回使うのはYoutubeです。ほぼ全員Youtubeを見たことあると思いますが、Youtubeに動画をあげたことがある人はあんまりいないんじゃないでしょうか。 なんとこのYoutube、動画のアップロード数に制限がありません!!!じゃあファイルを動画にしてアップロードしたら好きな時にダウンロードして使えるじゃん。 動画化の方法 ということでやっていきます。まず、ファイルを動画化する方法を考えます。 すべてのファイルはバイト列なので、そいつらをそのまま画像のピクセルにして、そいつらを動画にしたらいいんじゃないかというのが一番最初に思いつくと思いますが、それは甘いです。甘すぎます。 Youtubeに動画をアップ

                                            Youtubeは無限のクラウドストレージ - Qiita
                                          • MySQL 5.7 から 8.0 にしたらテストが激遅になった - Qiita

                                            この記事は、株式会社カオナビ Advent Calendar 2023 の3日目です。 はじめに 株式会社カオナビの高橋(@kunit)です。 今回は MySQL バージョンアップ(5.7 -> 8.0) で起きた問題とそれに対してどのように対処したのかを書いていこうと思います。 何が起きたのか MySQL 5.7 から 8.0 にバージョンアップをするにあたって、CI およびローカル環境でテストができるように MySQL 8.0 のイメージを作成し、それをつかって各機能の担当者にテストを開始してもらっていたのですが、以下のような事が起きました。 接続を MySQL 5.7 から 8.0 に切り替えただけでテストの時間が3倍くらいかかるようになった そこを変更するだけで3倍遅くなるってやばいぞということで報告してくれた担当者と同じテストを自分でも実施してみると再現性があり、それが以下のどの

                                              MySQL 5.7 から 8.0 にしたらテストが激遅になった - Qiita
                                            • ワンランク上のSQLを書くためのポイント3つ - Qiita

                                              この記事はNuco Advent Calendar 2022の17日目の記事です。 ワンランク上のSQLとは? 1年近く、データ分析に関わる業務に携わっってきた中で、良いSQL、いまいちなSQLをいろいろ見てきました。 自分が書くSQLも、最初の頃は目も当てられないSQLも書いてきました。そんな中で、こんなことを意識していくと、より良いSQLになるのでは?というポイントをまとめていきます。 とりあえずSQLの文法は一通り勉強して、取得したいデータをとってくるSQLをかけるようになったぞ。という人に向けたものなので、本当に基礎的な文法は解説していません。 ワンランク上のSQLを書くためのポイントは、 ・読みやすい ・再利用しやすい ・処理が早い の3つを押さえられているかどうかだと感じています。 可読性が高いメリット 間違いにくくなる/デバックが容易になる エラーが出てくれれば間違っているこ

                                                ワンランク上のSQLを書くためのポイント3つ - Qiita
                                              • 100億レコード超のDBを“障害ゼロ”でマイグレーション 新卒1年目が考えた2つのアプローチと3つの工夫 | ログミーBusiness

                                                インターネットやAIを駆使しながら、領域に捉われずにさらなる挑戦を行うDeNAの取り組みを紹介する「DeNA TechCon 2023」。ここで成田氏が登壇。PocochaのDBをマイグレーションしたことについて話します。 新卒1年目が100億レコード超のDBマイグレーションをした話成田篤基氏:発表を始めます。みなさんはじめまして。成田と申します。私は2021年にディー・エヌ・エーに新卒で入社して、現在入社から2年が経とうとしています。 私は新卒1年目で、大規模なデータベースマイグレーションを行う貴重な経験ができました。本日はそのマイグレーションプロジェクトについて、体験から得た学びをみなさんにお伝えします。題して「新卒1年目が100億レコード超のDBマイグレーションをした話」です。どうぞよろしくお願いいたします。 目次です。本日はこちらの目次に沿って発表を進めていきます。 まずは私たちデ

                                                  100億レコード超のDBを“障害ゼロ”でマイグレーション 新卒1年目が考えた2つのアプローチと3つの工夫 | ログミーBusiness
                                                • ER図の作図について、 Draw.io, PlantUML, Mermaid を比較してみる。(VSCode拡張機能など) - Qiita

                                                  はじめに データベース設計のER図について、VSCodeなどで作成する以下3つの方法を比較した記事です。 Draw.io PlantUML Mermaid 以前、Webアプリケーションを作成した際には、 Draw.io を使用して、作図しました。 (そのアプリのER図を今回サンプル図としています) 最近、 PlantUML を利用するようになり、ER図や、シーケンス図、クラス図の作図に利用しているのですが、とても編集しやすいと感じています。 ただ、どのツールにも、一長一短あるかと思いますので、それぞれ以下目次の内容を書いて、ご紹介したいと思います。 目次 1. Draw.io 1-1. VSCodeでの使い方 1-2. ER図 1-3. 感想 2. PlantUML 2-1. VSCodeでの使い方 2-2. ER図 2-3. 感想 3. Mermaid 3-1. VSCodeでの使い方

                                                    ER図の作図について、 Draw.io, PlantUML, Mermaid を比較してみる。(VSCode拡張機能など) - Qiita
                                                  • アルパカ証券 技術ノート|アルパカ証券の裏側 - はじめに

                                                    こんにちは。shirou(@r_rudi) と申します。アーキテクトという名の雑用係をしています。 Alpaca Japanでは、2021年8月に「アルパカ証券」という証券サービスをはじめました。 この一連の文章は、アルパカ証券の裏側のシステムやその開発体制などについて述べたものです。なるべく証券分野に限らず説明していく予定ですので、証券サービスを立ち上げようとしている人たちにはもちろん、それ以外の方にも参考にしていただけるような文章を目指したいと思っています。 アルパカ証券とはアルパカ証券の詳細はホームページをご覧ください。また、第一種金融商品取引業者登録完了時のプレスリリースにも、「アルパカ証券」サービスの特徴が記載されています。 全体設計方針まず最初に、アルパカ証券を構成するシステムの全体設計方針について説明します。 マイクロサービス vs モノリシック設計は2018年中頃ぐらいから

                                                      アルパカ証券 技術ノート|アルパカ証券の裏側 - はじめに
                                                    • GraphQL実践ノウハウ/graphql-knowhow

                                                      GraphQL実践ノウハウv2 https://speakerdeck.com/sonatard/graphql-knowhow-v2 宣言的UIの状態管理とアーキテクチャSwiftUIとGraphQLによる実践 https://speakerdeck.com/sonatard/swiftui…

                                                        GraphQL実践ノウハウ/graphql-knowhow
                                                      • はじめに|図解 DB インデックス

                                                          はじめに|図解 DB インデックス
                                                        • 5分で覚えるトランザクション分離レベル

                                                          これはなに ども、レバテック開発部のもりたです。 今回はトランザクション分離レベルについてまとめました。トランザクション分離レベルって基本情報技術者試験とかで学ぶものの、座学だけだとあんまりピンとこずに忘れちゃいますよね。もりたも長らく曖昧な状態で生きていたのですが、よい理解の仕方があったので今回はその解説をします。 トランザクション分離レベルを構成するふたつの変数 トランザクション分離レベルとは まず初めに、概要を掴むところからいきましょう。 トランザクション分離レベルとは、あるトランザクションのデータベースに加えた変更が、他のトランザクションにどの程度影響を与えるか? というもの(分離性、独立性)を一定基準でレベルに分けてまとめたものです。 どの程度影響を受けるか? については三つの影響が定義され、その影響度合いに応じて分離レベルが4つ存在します。これは大体こんな図で解説されます。 よ

                                                            5分で覚えるトランザクション分離レベル
                                                          • 世界最速レベルの性能を持つリレーショナルデータベース管理システム「劔(Tsurugi)」を開発

                                                            日本電気(株)と(株)ノーチラス・テクノロジーズはNEDOの「高効率・高速処理を可能とするAIチップ・次世代コンピューティングの技術開発」(以下、委託事業)において、世界最速レベルの性能を持つリレーショナルデータベース管理システム「劔(Tsurugi)」(以下、劔)を開発しました。 劔は、次世代のデータベースに用いられるハードウエア環境(メニーコア・大容量メモリーなど)に適合したシステムであり、ハードウエアの性能が向上するほどシステムの性能も高まる特性を有しています。32以上のコア数を有するハードウエアにおいては、世界最速レベルの処理性能456万TPSと219ナノ秒の応答遅延を実現しました。 劔の導入によって、複雑なバッチ処理とオンライン処理をハイスピードで同時に行うことが可能となり、例えば画像データをカメラで取り込みながらリアルタイムでの解析や、ペタバイト級データの高速処理を実現するなど

                                                              世界最速レベルの性能を持つリレーショナルデータベース管理システム「劔(Tsurugi)」を開発
                                                            • SQL道場 - SQLの実践的な学習サイト

                                                              SQL道場は、実践的なSQLの問題を解きながら学べるオンライン学習プラットフォームです。

                                                              • UUIDとULIDを理解していない方は見た方がいい記事

                                                                Auto increment(自動採番)型を採用したくない場合 Auto Incrementは、データベースにおいて自動的に一意の識別子を生成するメカニズムです。通常、数値型の列が対象となり、新しいレコードが挿入されるたびにその列の値が自動的にインクリメントされます。典型的なIDですかね。 ここでは一意性の確保の話や、データ移行やバックアップのデメリットには言及せず、セキュリティとプライバシーの懸念にフォーカスして考えます。 予測可能性 Auto Increment型のIDは連番であるため、次に生成されるIDが容易に予測可能です。これにより、攻撃者がシステムの内部構造を推測し、不正アクセスを試みるリスクが高まります。 情報漏洩のリスク 連番のIDはデータベースの挿入順序を反映しているため、公開されることで企業の活動パターンやデータ生成の頻度が漏洩する可能性があります。 例) 競合他社は、公

                                                                  UUIDとULIDを理解していない方は見た方がいい記事
                                                                • ペットの犬や猫にマイクロチップ装着義務化へ 概要が明らかに | NHKニュース

                                                                  犬や猫が捨てられたときなどに飼い主が分かるようマイクロチップの装着を販売業者に義務づける法律が来年6月に施行されるのを前に、環境省はマイクロチップに登録する情報の詳細や手続きの進め方などの概要をまとめました。 環境省によりますと、迷子や飼育放棄などで自治体に引き取られる犬と猫は、令和元年度には8万5000匹余りに上るなどしていて、対応が課題となっています。 こうした中、飼い主がすぐに分かるよう、犬や猫にマイクロチップの装着を義務づける改正動物愛護管理法が来年6月に施行されることになっていて、これを前に環境省は3日、動物の専門家などで作る審議会に概要を示しました。 それによりますと、繁殖を行うブリーダーやペットショップなどの業者には、販売用の犬や猫にマイクロチップを装着し、犬や猫の名前や性別、品種、毛の色のほか、業者名を国のデータベースに登録することが義務づけられます。 また、犬や猫を購入す

                                                                    ペットの犬や猫にマイクロチップ装着義務化へ 概要が明らかに | NHKニュース
                                                                  • MySQLロックについて〜基礎編〜 を開催しました! - ANDPAD Tech Blog

                                                                    こんにちは!エンジニアの福間(fkm_y)です。 先日、弊社でデータベースの技術顧問をして頂いてる三谷(mita2)さんに開発部向けのMySQLロックのデータベース勉強会を実施したのでそのレポートをお伝えします。 開催背景 弊社では三谷さんによるデータベース勉強会を定期的に開催しています。以前にもロックに関するMySQL勉強会を開催していたのですが、1年半経過しており参加していない開発メンバーのほうが多くなっていたことやプロダクトの成長によりデッドロックなどのロックに起因する問題が目立ち始めていたことから増強版のMySQLロックのデータベース勉強会を開催することになりました。 概要 データベースのロックについて ロックタイムアウトについて デッドロックについて まとめ データベースのロックについて なぜデータベースにロック機構があるのかから知ることが重要です。性能と安全性を両立するためにあ

                                                                      MySQLロックについて〜基礎編〜 を開催しました! - ANDPAD Tech Blog
                                                                    • WEB+DB PRESS Vol.122に特集「Rustで実装!作って学ぶRDBMSのしくみ」を書いた - Write and Run

                                                                      KOBA789 です。 時が経つのは早いもので、気づけば2月末に無職になってから1ヶ月以上が過ぎていました。 その間に何をしていたのかといえば、表題の特集記事の執筆をしていました。 宣伝 このブログ記事は WEB+DB PRESS Vol.122 を読みたくなるためのものです。ぜひ買ってね。買ったらちゃんと読んでね。 作って学ぶ RDBMS のしくみ、書きました。みんな大好き Rust を使って解説してます https://t.co/nm526qQYnm— KOBA789 (@KOBA789) April 8, 2021 gihyo.jp 使用言語は Rust だし、RDBMS はそもそも難しいトピックだしで結構重めの内容ですが、まずは読み物として寝転びながらでもいいので読んでみてほしいです。 ゴールデンウィーク*1の自由研究のお供にもどうぞ。たぶんちょうどいい分量なんじゃないかなぁ。ゴー

                                                                        WEB+DB PRESS Vol.122に特集「Rustで実装!作って学ぶRDBMSのしくみ」を書いた - Write and Run
                                                                      • 開発者が知るべきキャッシュ設計でよく遭遇する問題

                                                                        はじめに 分散システムの設計および開発において、キャッシュはパフォーマンス向上のための非常に重要な要素です。頻繁にアクセスされるデータをキャッシュすることで、アクセス速度が遅いデータベースへのアクセスを削減し、データへの迅速なアクセスを可能にします。これにより、システムの全体的な効率とパフォーマンスが向上します。 しかし、キャッシュは慎重に設計しないとむしろパフォーマンス上のデメリットになるケースが存在します。 この記事ではよく遭遇するキャッシュ設計の問題とその回避策について解説します。 Cache penetration DBに存在しない値を検索したときに、DBから返された空の結果をキャッシュしない場合に発生するシナリオです。 このシナリオではDBに存在しない値を繰り返し検索することにより、その値がキャッシュされていないため検索ごとにDBへのアクセスが必要になってしまいます。 存在しない

                                                                          開発者が知るべきキャッシュ設計でよく遭遇する問題
                                                                        • 詳細設計の書き方 - Qiita

                                                                          Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに システム開発において詳細設計という工程があります。 プログラマーはこの詳細設計を確認しながら開発を行うことになります。そのため詳細設計ではシステムの構造や仕様、動作などを細かく定義することが必要になります。 詳細設計を行うことでシステム開発の方向性が明確になり、コーディングやテストをスムーズに行うことができます。 詳細設計の成果物としてはクラス図やシーケンス図、画面設計書やデータベース設計書などがあり、システムの動きや機能を具体的に表現するものです。 今回は詳細設計を作成する機会があったので、詳細設計の書き方についてまとめたい

                                                                            詳細設計の書き方 - Qiita
                                                                          • RDBアンチパターンと戦う - 削除フラグ 完全攻略ガイド / delete flag

                                                                            PHPカンファレンス関西の登壇資料です。 WEB+DB PRESS Vol.134に詳細があります https://gihyo.jp/magazine/wdpress/archive/2023/vol134

                                                                              RDBアンチパターンと戦う - 削除フラグ 完全攻略ガイド / delete flag
                                                                            • データベース研修(SQL基礎編)【ミクシィ22新卒技術研修】

                                                                              22新卒技術研修で実施したデータベース研修(SQL演習編)の講義資料です。 動画:https://youtu.be/dseGQ2MZF1U 演習用Colab Notebook https://colab.research.google.com/github/mixigroup/2022Begi…

                                                                                データベース研修(SQL基礎編)【ミクシィ22新卒技術研修】
                                                                              • 重いALTER TABLEの実行中に進捗状況を確認する方法 - CyberAgent SRG #ca_srg

                                                                                #SRG(Service Reliability Group)は、主に弊社メディアサービスのインフラ周りを横断的にサポートしており、既存サービスの改善や新規立ち上げ、OSS貢献などを行っているグループです。

                                                                                  重いALTER TABLEの実行中に進捗状況を確認する方法 - CyberAgent SRG #ca_srg
                                                                                • キャッシュを活用するために必要な知識と勘所 - そーだいなるらくがき帳

                                                                                  PHPerKaigi 2024の登壇資料のほうが図面がわかりやすいので記載する。 ※2024/06/25 追記 speakerdeck.com どうもキャッシュバスターズ、 id:Soudai です。 Cache(以下、キャッシュ)は特定の場面に置いて劇的な効果を発揮し、様々な問題を解決する反面、新たなコンポートやミドルウェアが追加され、複雑性が上がり、運用のレベルが上がるため、扱いに注意する必要があります。 キャッシュを活用することで、パフォーマンスの改善や負荷軽減が行われ、コンピュータリソースの最適化によるサーバコストの削減や、レスポンスの改善によるユーザエクスペリエンスの改善がされます。 反面、その劇的な効果に毒され安易に多用すると、サービスが強くキャッシュに依存してしまい、非常に壊れやすくなり、運用が難しくなってしまいます。これをWeb界隈では「キャッシュは麻薬」と比喩されて、戒め

                                                                                    キャッシュを活用するために必要な知識と勘所 - そーだいなるらくがき帳