並び順

ブックマーク数

期間指定

  • から
  • まで

321 - 360 件 / 4539件

新着順 人気順

sqlの検索結果321 - 360 件 / 4539件

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

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

      排他制御のためだけに Redis 渋々使ってませんか?データベース単独でアドバイザリーロックできるよ!
    • Amazon DynamoDB の論文を読んでいく - Qiita

      概要 AWS で人気のサービス DynamoDB についての論文が公表され巷で噂になっていたと思う。 今回は、その論文を読み込んでいき、ざっくりまとめていくという記事になります。 完全趣味な記事なので、興味ある人がいれば幸いです笑 Abstract まず論文のタイトルですが、「Amazon DynamoDB: A Scalable, Predictably Performant, and Fully Managed NoSQL Database Service」と題したものとなっています。 Amazon DynamoDB は、NoSQL とよばれる部類のデータベースサービスです。 一貫した耐久性、可用性、パフォーマンスを提供してくれるマネージドなサービスなのが特徴ですね。 冒頭、2021年に66時間にわたる「Amazon Prime Day」中にピーク時8920万リクエスト/秒をさばいてい

        Amazon DynamoDB の論文を読んでいく - Qiita
      • はじめに|図解 DB インデックス

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

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

            9時間足すんだっけ引くんだっけ問題~あるいは、諸プログラミング言語はいかにタイムゾーンと向き合っているか - エムスリーテックブログ
          • ペットの犬や猫にマイクロチップ装着義務化へ 概要が明らかに | NHKニュース

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

              ペットの犬や猫にマイクロチップ装着義務化へ 概要が明らかに | NHKニュース
            • データ収集の基本と「JapanTaxi」アプリにおける実践例

              データ収集の基本として、データソース毎に典型的なデータ収集方法を整理して説明しています。またJapanTaxiアプリにおいてどのように実践しているかを説明しています。Read less

                データ収集の基本と「JapanTaxi」アプリにおける実践例
              • データベースの在庫の持ち方をビットで管理してる話 - 一休.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を触ってみる
                  • 「もうさばき切れない」アクセスが激増したECプラットフォームにおける負荷対策 - BASEプロダクトチームブログ

                    はじめに CTOの川口 (id:dmnlk) です。 5月にオンラインmeetupをさせて頂きその中で「具体的な負荷対策に関しては開発ブログで!」と言っていた件ですが気づいたらもう9月になりかけていました。 コロナ禍においてネットショップ作成サービス「BASE」の利用者様が急増しました。 www.nikkei.com 5 月には 100 万ショップを超えるショップオーナー様にご利用していただいております。 今まで EC 事業を行っていなかった飲食店様や様々な業種の方が利用をはじめていただき、ショップオーナー様も購入者様共に短期の見通しでは想定をしていないアクセスが発生しました。 その途中でシステムとして対応しきれない面もあり、アクセス負荷によるサービスの不安定を招き皆様にはご不便や販売時間を変更していただくお願いなどをしてしまい大変申し訳ありませんでした。 現在では安定しておりますが、その

                      「もうさばき切れない」アクセスが激増したECプラットフォームにおける負荷対策 - BASEプロダクトチームブログ
                    • xzパッケージに仕込まれた3年がかりのバックドア、スケール直前に見つけたのはMicrosoftの開発者 | gihyo.jp

                      Linux Daily Topics xzパッケージに仕込まれた3年がかりのバックドア⁠⁠、スケール直前に見つけたのはMicrosoftの開発者 “アップストリームのxzリポジトリとxz tarballsはバックドア化されている(The upstream xz repository and the xz tarballs have been backdoored)⁠”―2024年3月29日、Microsoftに所属する開発者 Andres Freundが「Openwall.com」メーリングリストに投稿したポストは世界中のオープンソース関係者に衝撃を与えた。 backdoor in upstream xz/liblzma leading to ssh server compromise -oss-security 主要なLinuxディストリビューションにはほぼ含まれているデータ圧縮プログラ

                        xzパッケージに仕込まれた3年がかりのバックドア、スケール直前に見つけたのはMicrosoftの開発者 | gihyo.jp
                      • アルパカ証券 技術ノート|アルパカ証券の裏側 - はじめに

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

                          アルパカ証券 技術ノート|アルパカ証券の裏側 - はじめに
                        • エムスリーのデータ基盤を支える設計パターン - エムスリーテックブログ

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

                            エムスリーのデータ基盤を支える設計パターン - エムスリーテックブログ
                          • GraphQL実践ノウハウ/graphql-knowhow

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

                              GraphQL実践ノウハウ/graphql-knowhow
                            • ワンランク上のSQLを書くためのポイント3つ - Qiita

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

                                ワンランク上のSQLを書くためのポイント3つ - 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
                                • MySQLロックについて〜基礎編〜 を開催しました! - ANDPAD Tech Blog

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

                                    MySQLロックについて〜基礎編〜 を開催しました! - ANDPAD Tech Blog
                                  • 世界最速レベルの性能を持つリレーショナルデータベース管理システム「劔(Tsurugi)」を開発

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

                                      世界最速レベルの性能を持つリレーショナルデータベース管理システム「劔(Tsurugi)」を開発
                                    • 図で技術的に何が起きたかを解説 スマホゲーム『偽りのアリス』の不具合報告がやたら丁寧と話題に「BtoBみたいな報告で草」「なんだこの説明量は」

                                      偽りのアリス 公式アカウント @itsuwari_alice 今回のサーバー障害に関する詳細情報をご報告致します。 ユーザーの皆様には大変ご迷惑をお掛け致しました事 改めてお詫び申し上げます。 今後とも偽りのアリスを何卒宜しくお願い致します。 #イツアリ pic.twitter.com/0KSXAEA0Ab 2019-12-18 22:24:27

                                        図で技術的に何が起きたかを解説 スマホゲーム『偽りのアリス』の不具合報告がやたら丁寧と話題に「BtoBみたいな報告で草」「なんだこの説明量は」
                                      • 100億レコード超のDBを“障害ゼロ”でマイグレーション 新卒1年目が考えた2つのアプローチと3つの工夫

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

                                          100億レコード超のDBを“障害ゼロ”でマイグレーション 新卒1年目が考えた2つのアプローチと3つの工夫
                                        • SELECT ... FOR UPDATE同士でデッドロックさせる - かみぽわーる

                                          最近SELECT ... FOR UPDATEでデッドロックする話を何度かしたので。 前職のときにUPDATE同士がデッドロックしてたときに、SELECT ... FOR UPDATEで排他ロックを取ってからUPDATEしてデッドロックを防ぎますってPRをレビューしてたときのことで、複数レコードの排他ロックは一瞬ですべてのレコードのロックを取れるわけではなく、ロックを取る順番が揃っていないと簡単にデッドロックしますよという話です。 https://gist.github.com/kamipo/0bb4e37d58ba18a8cefb8aa02f778231 # frozen_string_literal: true require "mysql2" def client Mysql2::Client.new( host: "localhost", username: "root", dat

                                            SELECT ... FOR UPDATE同士でデッドロックさせる - かみぽわーる
                                          • 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
                                            • 2020年やったこと、考えたこと、触った技術のまとめ - mizchi's blog

                                              今年の本業は、 3rd party script で、そこから呼ぶウィジェットを最適化するコンパイラを書く、その仕様を考えて、実装するという感じだった。要は Google Analytics と、最適化コンパイラ付き GTM みたいなものを作っていた。その内容は以下に書いた。 サードパーティスクリプトの極限環境向け Svelte パフォーマンス改善に Core WebVitals という大義名分を得た 今年は、 パフォーマンスのエンジニアをやっていた、と思う。サードパーティスクリプトの配信を生業にする会社のエンジニアとしては、来年の Core WebVitals というパフォーマンス関連の大きな変化で、波にのってやりたいことがやれたと思う。 Core WebVitals の導入で実際にどれぐらいの影響がでるか不明だが、パフォーマンスが SEO に影響する、というのは、 若干やりすぎと思いつ

                                                2020年やったこと、考えたこと、触った技術のまとめ - mizchi's blog
                                              • 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/2022BeginnerTrainingDataBasePublic/blob/master/22db_sql.ipynb データベース基礎編 https://speakerdeck.com/mixi_engineers/2022-database-training

                                                    データベース研修(SQL基礎編)【ミクシィ22新卒技術研修】
                                                  • Webデザイン制作をもっと楽に!便利な最新オンラインツール45個まとめ

                                                    この記事では、Webデザイン制作をもっと楽にする最新オンラインツール45個をまとめてご紹介します。 ウェブデザインに限らず、グラフィックなどあらゆるクリエイティブな案件、プロジェクトで活躍しそうな新しいツールを中心に揃えています。 これまで面倒だった作業をワンクリックで完了したり、人工知能が自動で行ってくれたりと、より快適にプロジェクトを進めることができる便利ツールが揃います。 自分のワークフローにうまくツールを導入することで、制作時間の短縮につながるだけでなく、ストレス少なく作業を行うことができます。 カテゴリごとに整理しているので、目的にあったお気に入りツールを探してみましょう。 コンテンツ目次 1. Web制作便利ツール 2. 配色ツール 3. デザインコレクション 4. イラスト系ライブラリ 5. プロトタイプツール 6. アイコンツール 7. コラボ、リモートワークツール 8.

                                                      Webデザイン制作をもっと楽に!便利な最新オンラインツール45個まとめ
                                                    • ER図の作図について、 Draw.io, PlantUML, Mermaid を比較してみる。(VSCode拡張機能など) - Qiita

                                                      ※ 参考記事「PlantUML を VSCode で利用したいけど、プレビューが表示されずエラーが出る」 参考(PlantUML 導入後の編集中画面) 2-2. ER図 今回作成したER図 Qiita記事でも、コードブロック内でPlantUMLの構文がそのまま使えます。(このER図は、Qiitaのコードブロックで表示させています) 今回作成したER図のPlantUMLの表記 @startuml yonde ' hide the spot hide circle ' avoid problems with angled crows feet skinparam linetype ortho entity "families" as families { id -- name nickname introduction created_at updated_at } entity "users

                                                        ER図の作図について、 Draw.io, PlantUML, Mermaid を比較してみる。(VSCode拡張機能など) - Qiita
                                                      • 1文字でSQLを200倍遅くする方法

                                                        こんにちは、19のSysAd班の翠(sappi_red)です。普段はtraQのフロントエンドの保守を行ったりしています。 こんばんは、19のSysAd班のtemmaです。普段は普段どおりのことをしています。この記事の面白い部分はすべて僕が書いています。面白くないところは翠君が書いています。 この記事では、日々パフォーマンスに頭を悩ませる開発者の方のために、ワンタッチで劇遅SQLを200倍高速でキュートなSQLに劇的ビフォーアフターする方法を紹介します。 「おいおいおい、遅くしたくて記事を読み始めたのに話が違うじゃないか💢」と思ってるそこのあなた👈 早くできるということは遅くもできるんですね。 TL;DR ここにテーブルがあります。 CREATE TABLE messages ( id CHAR(36) NOT NULL PRIMARY KEY, text TEXT COLLATE ut

                                                          1文字でSQLを200倍遅くする方法
                                                        • バイト先で遭遇したドラゴンボールぽろりんおじさん | 文春オンライン

                                                          『岡崎に捧ぐ』などで有名な漫画家・山本さほさんによる新連載が始まりました。なぜか厄介な人々を引きつける山本さんが、トラブル続きな日々をつづります。毎週木曜日に更新します。

                                                            バイト先で遭遇したドラゴンボールぽろりんおじさん | 文春オンライン
                                                          • 詳細設計の書き方 - Qiita

                                                            はじめに システム開発において詳細設計という工程があります。 プログラマーはこの詳細設計を確認しながら開発を行うことになります。そのため詳細設計ではシステムの構造や仕様、動作などを細かく定義することが必要になります。 詳細設計を行うことでシステム開発の方向性が明確になり、コーディングやテストをスムーズに行うことができます。 詳細設計の成果物としてはクラス図やシーケンス図、画面設計書やデータベース設計書などがあり、システムの動きや機能を具体的に表現するものです。 今回は詳細設計を作成する機会があったので、詳細設計の書き方についてまとめたいと思います。 詳細設計の目的やメリット 詳細設計の目的は、システム開発の品質や効率を向上させることです。詳細設計では、システムの仕様や動作を細かく定義することで、以下のようなメリットがあります。 開発工程でのバグや遅延を減らすことができる テスト工程での不具

                                                              詳細設計の書き方 - Qiita
                                                            • なろうファンDB管理人@スコッパー on Twitter: "これ作者さんの言いたいことすごく分かるけど、読んでいると引っかかるのも事実なので悩ましい。 自分は異世界に「サンドイッチ」が登場すると毎回そこで引っかかる。「落ち着け、これはラノベだ。読者に馴染みの単語を選んで表現しているだけだ… https://t.co/ZD70T9eal1"

                                                              これ作者さんの言いたいことすごく分かるけど、読んでいると引っかかるのも事実なので悩ましい。 自分は異世界に「サンドイッチ」が登場すると毎回そこで引っかかる。「落ち着け、これはラノベだ。読者に馴染みの単語を選んで表現しているだけだ… https://t.co/ZD70T9eal1

                                                                なろうファンDB管理人@スコッパー on Twitter: "これ作者さんの言いたいことすごく分かるけど、読んでいると引っかかるのも事実なので悩ましい。 自分は異世界に「サンドイッチ」が登場すると毎回そこで引っかかる。「落ち着け、これはラノベだ。読者に馴染みの単語を選んで表現しているだけだ… https://t.co/ZD70T9eal1"
                                                              • 開発者が知るべきキャッシュ設計でよく遭遇する問題

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

                                                                  開発者が知るべきキャッシュ設計でよく遭遇する問題
                                                                • SQLアンチパターン簡単まとめ

                                                                  「SQLアンチパターン」について、自分の勉強がてら内容を簡単にまとめました。 「とりあえずSQLは触れてWebアプリが作れる」「シンプルなアプリを実務で作ったことがある」くらいの人が読むととても勉強になると思います。 また、「現場での良くない設計」が詳細に言語化されているので、経験豊富な人でも新たな発見があると思います。 詳しく知りたい方は是非本を買って実際に読んでみて欲しいです。 第一章 ジェイウォーク パターン 1カラムにコンマ区切りで値を入れて複数の紐付きを表現しようとする なぜダメか 検索しづらい 文字列カラムの文字数制限という暗黙の制約を受ける バリデーションかけられない 解決策 交差テーブルの作成 第二章 ナイーブツリー パターン 木構造を表現するとき、常に親のみに依存する(parent_idだけ持ってしまう) 隣接リスト なぜダメか 階層を深く掘ろうとするとそのぶんSQLをか

                                                                    SQLアンチパターン簡単まとめ
                                                                  • 実装言語を「Go」から「Rust」に変更、ゲーマー向けチャットアプリ「Discord」の課題とは

                                                                    ゲーマー向けの無料音声テキストチャットアプリケーション「Discord」を開発、提供するDiscordは2020年2月5日(米国時間)、アプリケーションを支える基盤サービスの一つである「Read States」をRust言語で再実装し、その結果サービスのパフォーマンスが大幅に向上したと公式ブログで明らかにした。 Read StatesサービスはこれまでGo言語で実装されていた。それにもかかわらず、なぜRead StatesをRustで再実装しようとしたのか、どのように再実装したのか、再実装によってどのようにパフォーマンスが向上したかを解説した。 Rustで再実装した背景とは Read Statesサービスの目的は、Discordユーザーがどのチャンネルのどのメッセージを読んだのかを追跡することだ。つまり、ユーザーがDiscordに接続したり、メッセージを送信したり、メッセージを読んだりする

                                                                      実装言語を「Go」から「Rust」に変更、ゲーマー向けチャットアプリ「Discord」の課題とは
                                                                    • 【2019年】CTF Web問題の攻撃手法まとめ (Web問題のwriteupぜんぶ読む) - こんとろーるしーこんとろーるぶい

                                                                      CTF Advent Calendar 2019 - Adventarの25日目の記事です。 1つ前は@ptr-yudai氏の2019年のpwn問を全部解くチャレンジ【後半戦】 - CTFするぞでした。 はじめに 対象イベント 問題数 読み方、使い方 Cross-Site Scripting(XSS) SVGファイルを利用したCSPバイパス GoogleドメインのJSONPを利用したCSPバイパス サブリソース完全性(SRI)機能を利用した入力チェックバイパス Chrome拡張機能のパスワードマネージャーKeePassの悪用 HTML likeコメントを使用したコメントアウト jQuery.getJSONのJSONP機能を使用したスクリプト実行 DOM Clobberingによるコードハイジャック Service Workerを利用したスクリプト実行 XSS Auditor機能のバイパス

                                                                        【2019年】CTF Web問題の攻撃手法まとめ (Web問題のwriteupぜんぶ読む) - こんとろーるしーこんとろーるぶい
                                                                      • Redis互換で25倍高速とする「Dragonfly」が登場。2022年の最新技術でインメモリデータストアを実装

                                                                        Redis互換で25倍高速とする「Dragonfly」が登場。2022年の最新技術でインメモリデータストアを実装 Redisやmemcachedに代表されるインメモリデータストアは、高速なデータアクセスを要求される場面で使われています。 このインメモリデータストアを2022年の最新技術を用いて設計、実装することで、Redis/memcached互換を実現しつつRedisの25倍高速とする「Dragonfly」が登場しています(開発元のアナウンス、GitHub)。 Redisやmemcachedが登場した十数年前と比べて、現在ではCPUのマルチコア化やI/Oの高速化、メモリの大容量化など、ハードウェア技術が大きく進化しています。 これらを最大限活用する設計と実装を取り入れることでRedisやmemcachedよりも大幅な高速化と高効率化を目指したのがDragonflyです。 採用した主な技術

                                                                          Redis互換で25倍高速とする「Dragonfly」が登場。2022年の最新技術でインメモリデータストアを実装
                                                                        • 全社員からデータ基盤への問い合わせが殺到して2人では捌けなくなったので仕組みで解決する話〜datatech-jp Casual Talks #2 登壇後記〜 - MonotaRO Tech Blog

                                                                          データ基盤グループの吉本です。 今回は先日開催されたdatatech-jp Casual Talksで登壇した内容について補足も含め紹介します。 datatech-jp.connpass.com 発表資料はこちらです。 データ基盤に関わる問い合わせ対応を仕組みで解決する from 株式会社MonotaRO Tech Team www.slideshare.net 発表内容の背景(問い合わせ対応における課題) 発表したこと 発表の反響 最後に datatech-jpは主にデータエンジニアリングやデータ活用に関わる方が参加するコミュニティで、DWHやデータマネジメント、データエンジニアリングに関わる技術、ツールなどについて知見を共有したり、輪読会やLT会のようなイベントを実施しています。 オーガナイザーとして同社同僚の吉田(id:syou6162)が参加しています。 その中でCasual

                                                                            全社員からデータ基盤への問い合わせが殺到して2人では捌けなくなったので仕組みで解決する話〜datatech-jp Casual Talks #2 登壇後記〜 - MonotaRO Tech Blog
                                                                          • 2021年サーバーサイドのエンジニアが使ってよかったもの10選 - KAYAC engineers' blog

                                                                            こんにちは! Tech KAYAC Advent Calendar 2021 7日目を担当する荒賀(@ken39arg) です。 カヤックのエンジニアブログには2008年にPHPを使ったガラケー関連の記事を書いたのが最初になります。 それから10年以上たち、ガラケーも弊社でのPHPのプロジェクトもほぼなくなり、メンバーもかなり入れ替わり、私自身も20代だったのがついに40歳になりました。そんな私にとってこのアドベントカレンダーは私は今でもここにいるよというPingのような役割になっているため、年に一度若者に混じってアドベントカレンダーに参加しております。 例年ですと、趣味のマラソンなどに関する実績も書いているのですが、昨年同様、今年も続くコロナ禍により多くの大会が中止となったためこちらに関しては特に特記すべき実績はありません。ただ2020年に走るはずだった東京マラソンは権利は移行を続けてお

                                                                              2021年サーバーサイドのエンジニアが使ってよかったもの10選 - KAYAC engineers' blog
                                                                            • Re: 結局、Go言語をやめる理由はなかった件 - Hateburo: kazeburo hatenablog

                                                                              すみません、ISUCONのアレに火がついてしまったので..。 Advent Calendarとはとくに関係がありません。 qiita.com qiita.com こちらの記事をみて、気になってしまったので interpolateParams の追加とMySQLチューニングをしてベンチマークを回してみました。 ベンチマークの環境が公開されているのは素晴らしいですね。 github.com 8vCPU/16GB Memのc5a.2xlargeなEC2のインスタンスを起動して、以下の手順にしたがってdockerとdocker-composeをインストールしました。OSはUbuntu 20.04を使いました。 docs.docker.com docs.docker.com 上記のbenchmarkのrepositoryをgit cloneし、compose build && compose upし

                                                                                Re: 結局、Go言語をやめる理由はなかった件 - Hateburo: kazeburo hatenablog
                                                                              • マルチテナントの実現におけるDB設計とRLS / Utilizing RSL in multi-tenancy

                                                                                # 実装の参考資料 - https://soudai.hatenablog.com/entry/2022/11/11/110825 # 類似の登壇内容の動画 - https://www.youtube.com/watch?v=PXy6I-AeI-I

                                                                                  マルチテナントの実現におけるDB設計とRLS / Utilizing RSL in multi-tenancy
                                                                                • 自作RDBMSやろうぜ!(Zenn出張版)

                                                                                  Disclamer 本記事は自作DBMSやろうぜ! のページの 22/05/27 JST 22:38 の時点での内容をZenn記事向けに修正して作成したものです 元コンテンツのライセンスについては以下をご参照ください LICENCE 元コンテンツの方は更新が継続されていますので、よろしければそちらもご覧ください この記事の目的 RDBMS(いわゆるリレーショナルデータベース)というものはプログラミング言語の処理系や、OSなどと同様に、世の中で広く使われているソフトウェアであるにも関わらず、いざ自作してみようと思うと日本語で記述されている必要な情報・情報源がまとまったサイトやブログ記事がないことに気づきました そこで、叩き台として、筆者および数名のコミッタで開発している自作RDBMSである SamehadaDB が軌道に乗るまでの経験をベースに、自作RDBMSに関する情報をある程度整理して書

                                                                                    自作RDBMSやろうぜ!(Zenn出張版)