並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 114件

新着順 人気順

RDBMSの検索結果1 - 40 件 / 114件

  • データベースを勉強したいあなたに送る技術書17冊(+11冊1講義7link)

    これはなに ども、レバテック開発部のもりたです。最近めっちゃ元気!! 今回は『データベースについて勉強したいあなたに送る技術書17冊(+11冊1講義7link)』として、もりたがここ半年くらいでわーっと集めたデータベース周りの書籍(とか)を紹介していきます。アプリケーションって結局はデータベースみたいなところがあると思うんですが、おれは長いことデータベースをどう学んだら良いのか分かりませんでした。同じような気持ちを抱えているITエンジニアの人もいると思うので、学習ロードマップと合わせて紹介していきます。 なお具体的な対象読者は業務でなんとなくSQL書いてるけど、ウィンドウ関数とか言われると分からんな……くらいの人です。 扱う領域と扱わない領域 扱う領域としてはだいたい以下 再入門本 SQL 内部構造 論理設計 周辺知識 データベース理論 その他高度なもの モデリング、NoSQL、分散データ

      データベースを勉強したいあなたに送る技術書17冊(+11冊1講義7link)
    • リーダブルSQL[より良いSQLを書くためのシンプルで実践的なテクニック] - Qiita

      はじめに 最近エンジニア界隈では「リーダブルコード」が話題なっていますね。 リーダブルコードでは、このような定理が紹介されています。 「コードは他の人が最短時間で理解できるように書かなければいけない。」 Dustin Boswell リーダブルコード P.3 より引用 SQLでも同じことが言えそうです。 リーダブルなSQLを書いてないと結婚できない時代が今まさに到来しようとしています。 皆さん、クソSQL1を読んだことがありますね? クソSQLを書いたことがありますね? 僕は、あります。 そこで、本記事ではどうしたらリーダブルなSQLが書けるかというアイデアを紹介します。 処理の流れの順に上から読めるようにする 人間のメンタルモデルは、問題やタスクを小さなステップに分割し、それぞれを順番に実行することに適しています。 サブクエリを使ったSQLでは、処理の流れは上から下ではなく、ネストされた

        リーダブルSQL[より良いSQLを書くためのシンプルで実践的なテクニック] - Qiita
      • クラウド時代のデータベースを理解するために①

        最近、分散データベースとかNewSQLとかサーバレスなデータベースとか色々聞きますよね。 でも、専門ではない人たちにとって、「何が違うの?」「自分たちに必要なDBはどれなの?」という点が分かりづらいと思います。 私も良く聞かれます。 AuroraはNewSQLですか? NewSQLってサーバレスなんですか? スケールできないDBとか聞きますけど、リードレプリカ増やせますよね? などなど。この辺に基本的なところから答えられるように、順を追って解説していきましょう。 「コンピュートとストレージは別であれ」 と神が言うと、コンピュートとストレージは分離された。 と言うのは冗談ですが、まずはここからスタートしましょう。 クラウド以前のデータベースを使っていた人にはお馴染みのように、それまでデータベースは大きな1つの箱でした。 過去に私は下図でデータベース(厳密にはRDBMS)のコンポーネントを解説

          クラウド時代のデータベースを理解するために①
        • 「ChatGPT/LangChainによるチャットシステム構築 」という書籍が素晴らしかったのでNode.jsでも書いてみた - selmertsxの素振り日記

          はじめに 「ChatGPT/LangChainによるチャットシステム構築」 という本が素晴らしかったので、ちゃんと身につけるために Python だけじゃなくて Node.js でも動かしてみました。同じことをやろうとした人のために、ここにそのときの記録を残します。特に callbacksやmemoryについて、詳細に記載しようと思います。 書籍の説明につながるようなことはできる限り書きません!めっちゃ良書なので、ご興味持っていただけた方は購入してもらえますと 🙏 5章まではPython固有のToolを利用しており、6章の中身は7章とかなり近いところがあるので、7章のプログラムだけここに記載します。LangChainの学習に注力したいので、Serverelss Frameworkに関連するコードは省略しました。また、Momentoや @slack/bolt に関する説明はしません。 プロ

            「ChatGPT/LangChainによるチャットシステム構築 」という書籍が素晴らしかったのでNode.jsでも書いてみた - selmertsxの素振り日記
          • サーバーレスの次はなんなんだ

            はじめに この記事は、同人誌サークル「めもおきば」から不定期刊行している技術解説本「めもおきばTecReport」に書いたものを公開用に再編集したものです。 ⇒ めもおきばTecReport 2023.12 この記事のほかにも「私もSecHack365に参加したい!」や、「2023年振り返りと2024年技術予想」としてこんなキーワードを取り上げているので、気になったらぽちっとしてください! メガクラウドと特化型クラウド/ハイパーバイザーのSoC化/ライセンスとクラウドベンダー/イベント駆動型API/LLM時代のAIペアプロ力/生活必需品としてのGPU・NPU/Passkey/ウェブアクセシビリティ/リアルイベントの再開 サーバーレスの次はなんなんだ サーバーレスと呼ばれる技術ムーブメントが盛り上がり始めて8年近くが経ちました。各クラウドベンダーのFaaS(Function-as-a-Ser

              サーバーレスの次はなんなんだ
            • キャッシュを活用するために必要な知識と勘所 - そーだいなるらくがき帳

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

                キャッシュを活用するために必要な知識と勘所 - そーだいなるらくがき帳
              • DDDの実装にはあまり興味がなくなっている - Mitsuyuki.Shiiba

                以前は、DDDでどう実装したらいいかなぁって考えてたんだけど、最近は、そういうことへの興味があまりなくなっている。エンティティや値オブジェクト、集約やリポジトリなど、そのあたりにあまり興味がない。ヘキサゴナルアーキテクチャなども、そんなに考えなくなった。 TypeScriptを使うことが多いので、型でしっかり守るとかカプセル化するとか、そのあたりがどっちでもいっかという気持ちになっていることが影響してるとは思う。TypeScriptでクラスを使おうとはあまり思わないし。BrandedTypeみたいなのを使ってまで型で守ろうとは思わない。 じゃあ何に興味があるんだっけ?って考えてみると、トランザクション境界とユビキタス言語かな。 トランザクション境界 トランザクションの境界を作って、DB(RDBMS)を小さく保ちたいと思っている。DBが大きくなると、すぐに複雑になっていく感じがする。 だから

                  DDDの実装にはあまり興味がなくなっている - Mitsuyuki.Shiiba
                • Rustでリレーショナルデータベースを自作したときの成果と反省と学び - Yoshisaurのメモ

                  はじめに この記事では、個人プロジェクトとしてRust言語でリレーショナルデータベースを開発した経験(もう五ヶ月も前...)について、その成果と反省、得た学びを共有します。 DBMSを自作した理由 自分がDBMSの自作に着手したのは、『Designing Data-Intensive Applications』という本の内容を深く理解するためでした。 この本は、データシステムの設計と運用において最も大切な「信頼性」、「拡張性」、「保守性」を保証する方法論を、豊富な文献を引用しつつ、理論と実践の橋渡しを巧みに行いながら、丁寧に説明している名著です。読んだことがない人は速攻購入してくだい。本当にいい本です。 この本は、データベースの内部構造に関する話も豊富に含まれていたので、「データベース自作してみようか...」という気持ちになりました。 Rustを採用した理由 データベースの実装のついでに、

                    Rustでリレーショナルデータベースを自作したときの成果と反省と学び - Yoshisaurのメモ
                  • 評価されやすいエンジニアとは、成果を効果的にアピール出来るエンジニアのこと。

                    こんにちは、しんざきです。週に一回ファミコン版のイーアルカンフーを遊ぶ習慣がもう15年くらい続いておりまして、そろそろ一度知見を集積しようかと思っているところです。面白いですよね、イーアルカンフー。 この記事で書きたいのは、大体以下のようなことです。 ・「評価されやすいエンジニア」とは、「ちゃんと自分の成果を言語化してアピール出来るエンジニア」です ・「アピール」というと苦手意識を持つ人が多いのですが、必要なのは自分を大きく見せることではなく、具体的な達成状況の可視化です ・「自分の成果を言語化出来るか」というのは、日々の仕事で能力を発揮する上でもとても大事です ・成果を言語化する上では、ちゃんと「ストーリー」を考えることも大事です ・ストーリーといっても、別にありもしない物語を作れという話ではなく、組織が持っているビジョンや方向性に合致する成果になっているか、という話です ・特に新人さん

                      評価されやすいエンジニアとは、成果を効果的にアピール出来るエンジニアのこと。
                    • 3大クラウド(AWS,Azure,GCP)をそれぞれプロダクションで実運用した感想(その3 AWS固有の優位性について) - Qiita

                      3大クラウド(AWS,Azure,GCP)をそれぞれプロダクションで実運用した感想(その3 AWS固有の優位性について)AWSAzureGoogleCloud はじめに 今年のはじめに書いた3大クラウドの比較シリーズに関して長いこと続編を書いてませんでした...。 最近、知人/友人のみならず取引先からも「AWSやGCPに関して続編書かないんですか?」と言われることが増えてきたので、今回はAWSを本番運用していて感じたAWS固有の優位性について感想を述べていきます。 AWS 固有の優位性 周知の事実ではありますが、AWSは長年クラウドベンダーとして世界トップシェアを維持し続けています。 AWSをクラウド基盤として利用しているサービスを一切利用せずに1日を過ごすことは不可能なんじゃないかというレベルで日本国内では利用されています。 もはや電気/ガス/水道等の社会インフラに近い状態です。 そして

                        3大クラウド(AWS,Azure,GCP)をそれぞれプロダクションで実運用した感想(その3 AWS固有の優位性について) - Qiita
                      • MySQL(InnoDB)のSQLパフォーマンスチューニングのエッセンス

                        はじめに MySQL(InnoDB)でSQLのパフォーマンスチューニングをするときに役に立つ知識をエッセンスとしてまとめました。結合(JOIN)やB-treeインデックスの探索の仕組み、実行計画の基本的な見方を紹介します。 想定する読者は、SQLのパフォーマンスを改善する必要があるが実行計画をみてもいまいちピンと来ない方です。インデックスの作成の経験や、複合インデックスやカーディナリティの知識があることを前提にしています。目標は、実行計画の内容がよく分からない読者が、実行計画をみただけでクエリが実行される様子をイメージでき、自信を持ってクエリの改善にあたることができるようにすることです。 ストレージエンジンはInnoDBを前提としています。また、インデックスはB-treeインデックスを想定しています。全文検索の転置インデックスや空間検索のR-treeインデックスについては触れません。 イン

                          MySQL(InnoDB)のSQLパフォーマンスチューニングのエッセンス
                        • Rust で SQLite を再実装している - kawasin73のブログ

                          セキュリティを盾に一点突破。どうもかわしんです。最近 Rust で SQLite を実装してます。 以前の記事で HTTP Parser を Rust で実装しようとしたものの、すでに実装されていたので断念しましたが、いい題材を見つけました。SQLite です。開発中のリポジトリはこれです。 github.com 今の時点では、Read Only で1つの WHERE 句を持った SELECT 文しか処理できないですが、以下の機能を実装しています。 sqlite3 で生成された database ファイルの読み取り (cursor.rs, btree.rs, record.rs) SQL 文の解析 (token.rs, parser.rs) テーブルとインデックスのメタデータのパース (schema.rs) 動的なファイルの読み込み (pager.rs) SQL クエリとスキーマ情報を元に

                            Rust で SQLite を再実装している - kawasin73のブログ
                          • PostgreSQL チューニングよもやま話 - エムスリーテックブログ

                            【Unit4 ブログリレー3日目】 こんにちは,エムスリーエンジニアリンググループの榎田です.数学とテレビゲームが好きです. 今回は,Unit4 で運用している "Docpedia" というサービスで実施した SQL チューニングの実例を2つご紹介します.普段の私が意識していなかった, RDBMS の内部機構に関する話が登場して面白かったので,今回の記事を書きました. なお,本稿で扱う議論はすべて PostgreSQL 11.x 以上を対象としており,特にその他の RDBMS で同様の動作をするかは確認していません.定性的な挙動に共通するものはあるかもしれませんが,ここで述べた話はそのままは通らないであろうことをお断りさせてください*1. プロダクトについて index なしで意外と耐えたが,耐えきれなかった話 実際の SQL とテーブル定義 原因の分析 対応策 SELECT DISTIN

                              PostgreSQL チューニングよもやま話 - エムスリーテックブログ
                            • 社内向け SQLチューニング勉強会を実施しました

                              はじめのご挨拶 はじめまして。BEENOSの鈴木です。 普段はBEENOSグループのtenso株式会社でヘルプデスク業務に従事しておりますが、たまにサービス関連のデータベース、MySQLのチューニングや調査などもしております。 今回、普段から触っているMySQLのチューニング勉強会を実施しましたので、その内容を少し公開したいと思います。 勉強会を開催しようとしたきっかけ tenso株式会社の開発チームには、SREチーム(運用チーム)があり、元々は私も所属しておりました。 SREチームに新規メンバーが参入してきたこともあり、改めてデータベースと向き合う人のために、まずはSQLのチューニングを覚えてもらいたいとの要望があり、開催することにしました。 また、BEENOS全体としても開発エンジニアがコードを書くだけでなく、コードに含まれているSQLがどのように動くかを把握しパフォーマンスの良いSQ

                                社内向け SQLチューニング勉強会を実施しました
                              • データベース指向の新OS「DBOS」--クラウド時代に対応する新たなアプローチ

                                Jack Wallen (Special to ZDNET.com) 翻訳校正: 編集部 2024-04-10 07:30 「Linux」は長年にわたりクラウド上のサーバーに搭載されてきたが、クラウドが急激に拡大したこと、そしてLinuxがクラウド専用に設計されたものではないことを考慮すると、何かを変える必要があることは明らかだった。 その変化をもたらすのは、「Ingres」「PostgreSQL」「VoltDB」の開発に携わったMichael Stonebraker氏と、「Apache Spark」の生みの親でDatabriskの共同創設者/最高技術責任者(CTO)であるMatei Zaharia氏かもしれない。両氏はマサチューセッツ工科大学(MIT)のチームと協力して、「DBOS」(別名「DataBase OS」)という革新的なOSを開発した。 DBOSの開発は2022年に始まった。D

                                  データベース指向の新OS「DBOS」--クラウド時代に対応する新たなアプローチ
                                • 【番外編】Excelの知識しかない人をRDBの担当者にする:SQLの知識がなくてもJetBrains AIを利用してRDBをノーコード生成!|kintoneにおまかせ!(VIP SYSTEMS 公式)

                                  【番外編】Excelの知識しかない人をRDBの担当者にする:SQLの知識がなくてもJetBrains AIを利用してRDBをノーコード生成! 企業にとってデータは顧客の次に大切なものであり、その保持・管理・活用方法について各社の担当者は日々、頭を悩ませているところだと思います。 2010年代になってから話題になった「NoSQL」はデータベースの一つの選択肢としてすっかり定着し、2020年代になってからはWebブラウザからデータの入力・閲覧がすべてできてしまう「DBaaS(サービスとしてのデータベース)」とでも呼ぶべき製品も多数出てきました。それらを活用したいところですが、社内で運用しているRDBMSをすぐにやめるわけにもいきません。 これらを保守するには、担当者は最低でもSQLは覚えておかなければならないのですが、教育コストが掛かります。そこで今回は「先輩社員がいなくても、SQLを知らなく

                                    【番外編】Excelの知識しかない人をRDBの担当者にする:SQLの知識がなくてもJetBrains AIを利用してRDBをノーコード生成!|kintoneにおまかせ!(VIP SYSTEMS 公式)
                                  • RDS Proxyを用いたオンラインスイッチオーバーによるMySQLのアップグレードについて - freee Developers Hub

                                    おはこんばんちは、DBREの橋本です。 今回は、Amazon RDS Proxy(以降RDS Proxyとよぶ)を用いたRDS for MySQLインスタンスおよびAurora MySQLクラスタのオンラインスイッチオーバーの手法について、ある程度社内での運用が確立してきましたので解説いたします。 従来のアップデート手法 AWS上でRDS for MySQLインスタンスやAurora MySQLクラスタ(以降これらをデータベースとしてまとめてよぶ)を運用している場合、それらのエンジンバージョンの更新を行ったり、OSバージョンの更新に伴う再起動を実施する必要があります。これらの更新を行う場合、以下のような方法が考えられます。 対象のデータベースに直接更新を適用する スナップショットを作成し、更新済みのデータベースとして復元する 更新済みの空のデータベースを新規作成し、そちらにデータを移行し、

                                      RDS Proxyを用いたオンラインスイッチオーバーによるMySQLのアップグレードについて - freee Developers Hub
                                    • Software Design 2024年5月号 連載「レガシーシステム攻略のプロセス」第1回 ZOZOTOWNリプレイスプロジェクトの全体アーキテクチャと組織設計 - ZOZO TECH BLOG

                                      はじめに 技術評論社様より発刊されているSoftware Designの2024年5月号より「レガシーシステム攻略のプロセス」と題した全8回の連載が始まりました。 本連載では、ZOZOTOWNリプレイスプロジェクトについて紹介します。2017年に始まったリプレイスプロジェクトにおいて、ZOZO がどのような意図で、どのように取り組んできたのか、読者のみなさんに有益な情報をお伝えしていければと思いますので、ご期待ください。第1回目のテーマは、「ZOZOTOWNリプレイスプロジェクトの全体アーキテクチャと組織設計」です。 目次 はじめに 目次 ZOZOTOWNリプレイスの背景、目的 背景 目的 柔軟なシステム 開発生産性 技術のモダン化 採用強化 ZOZOTOWNリプレイスの歴史とアーキテクチャの変遷 アーキテクチャの変遷 2004年〜2017年:オンプレミス(リプレイス前) 2017年〜20

                                        Software Design 2024年5月号 連載「レガシーシステム攻略のプロセス」第1回 ZOZOTOWNリプレイスプロジェクトの全体アーキテクチャと組織設計 - ZOZO TECH BLOG
                                      • 年収が1000万円以上のエンジニアの求人をまとめてみた - Qiita

                                        近年優秀なエンジニアに対して報酬を多く支払う企業が増えてきています。 実際アメリがのAmazonも大幅な賃上げを行い、話題となりました。 日本国内でもエンジニアの年収が高い企業を知りたい!と思っている エンジニアの皆様お待たせいたしました。 年収1000万以上の求人をまとめてみましたので、参考までにご覧ください。 フリービット株式会社 【募集ポジション/年収】 エンジニアリングマネージャー候補:1000万円〜1500万円 【求める人材】 当社の Vision に共感いただき、プロダクトの継続的な成長を支える開発体制を実現するため、エンジニア組織の強化を担っていただける方を募集しています。 組織づくりや人員のマネジメントなどの組織拡大を一緒に担っていただける方を探しています。 【具体的な業務内容】 ・エンジニア組織としての課題発見・解決、及び成長戦略の立案・実行 ・開発チームの体制構築と、そ

                                          年収が1000万円以上のエンジニアの求人をまとめてみた - Qiita
                                        • Domain Event

                                          目次 概要 この記事の内容 対象読者 注意事項 前提知識 定義 用途 モデリング 不変性 独立性 汎用情報 個別の情報 Versioning 実装 前提 フレームワーク Domain Eventの処理 型定義 interface DomainEventEnvelope Enum Domain Eventの内部通知 staticなEvent Publisherを用意してAggregateがPublisherを呼び出す 実装例 AggregateのCommandの返り値としてDomain Eventを返す 実装例 Aggregateで保持してGetterで取り出す 実装例 永続化と外部通知 要件 永続化 外部通知 まとめ 参考文献 概要 この記事の内容 Domain Eventは非常にシンプルな概念かつ強力なモデリングパターンです。 モデリングにおいては直感的に扱うことが可能ですが、実装をする

                                            Domain Event
                                          • メルカリ ハロの技術スタックとその選定理由 | メルカリエンジニアリング

                                            こんにちは。メルカリ ハロのSoftware Engineer (Engineering Head)の@napoliです。連載:Mercari Hallo, world! -メルカリ ハロ 開発の裏側-の2回目を担当させていただきます。 2024年3月上旬にメルカリ ハロという新しいサービスが公開されました。メルカリ ハロは好きな時間に最短1時間から働ける「空き時間おしごとアプリ」です。 この記事ではメルカリ ハロを作るにあたり、どういった技術スタックやアーキテクチャを選定したのか、さらにその背景と意思決定をご紹介したいと思います。 この記事で得られること メルカリ ハロで採用されている技術スタックやアーキテクチャの全体像 その意思決定の理由とプロセス これから新規サービスを立ち上げるうえでのヒント 主な技術スタック メルカリ ハロで利用されている主な技術スタックは以下のとおりです。 バッ

                                              メルカリ ハロの技術スタックとその選定理由 | メルカリエンジニアリング
                                            • プラットフォームの上に劣化版のプラットフォームを作成してしまうアンチパターン「内部プラットフォーム効果」とはどういうものなのか

                                              「ソフトウェア設計におけるアンチパターンの中に特にひどいにも関わらず文書化されていないものがある」として、ソフトウェア開発のためのハウツーガイドを提供するサイト「The Daily WTF」の設立者であるアレックス・パパディムーリスさんが「内部プラットフォーム効果(Inner-platform effect)」について投稿しています。 The Inner-Platform Effect - The Daily WTF https://thedailywtf.com/articles/The_Inner-Platform_Effect パパディムーリスさんは「システムをカスタマイズしすぎることで設計時に使用されたプラットフォームの粗悪なレプリカになってしまう」という現象を、「内部プラットフォーム効果」と命名しました。 内部プラットフォーム効果の代表的な例として、エンジニア以外でもデータベース

                                                プラットフォームの上に劣化版のプラットフォームを作成してしまうアンチパターン「内部プラットフォーム効果」とはどういうものなのか
                                              • 間接参照を巨大仮想メモリで飲み込む - Software Transactional Memo

                                                この記事はデータベース・システム系 Advent Calendar 2023の3日目の記事である。昨日の記事も僕でした。 間接参照を巨大仮想メモリで飲み込む メインメモリはハードディスクやSSDより容量が小さく、この問題は当面は解決の目処が立たない。 そもそも今のDRAMより速くて安くて大きいストレージが仮に発明されてもそれがDRAMに取って代わるメインメモリの立ち位置になるだけであってその下のレイヤーには依然としてそのメインメモリより安くて大きなストレージが置かれる事になる。大局的な観点ではストレージの階層構造とは経済活動の鏡像でもある。 バッファプール さて、耳にタコができるほど繰り返しているが現代のデータベースはディスクなどの永続ストレージにデータの本尊が保存され、メインメモリはそれに対する読み書きを高速化するためのデータ一時置き場としての役割を担当している。 代表的なRDBMSは3

                                                  間接参照を巨大仮想メモリで飲み込む - Software Transactional Memo
                                                • The Querynomicon

                                                  Upon first encountering SQL after two decades of Fortran, C, Java, and Python, I thought I had stumbled into hell. I quickly realized that was optimistic: after all, hell has rules. I have since realized that SQL does too, and that they are no more confusing or contradictory than those of most other programming languages. They only appear so because it draws on a tradition unfamiliar to those of u

                                                  • AWS RDS/Auroraでモニタリング&チューニングを始めるための資料11選

                                                    これはなに ども、レバテック開発部のもりたです。 もりたはデータベースが好きなんですが、最近は特にAWS RDS/Auroraでのモニタリングとパフォーマンスチューニングについて興味があります。ただ、これらのうちモニタリングは扱っている話題が若干ローレベルであまりピンとこず、またチューニングもどこから手をつければいいのかわかりませんでした。 この記事では、もりたがモニタリング&チューニングを学習する上で役に立った書籍やWeb上の資料をロードマップ形式で紹介していきます。対象読者はDBのモニタリングとチューニングをやりたいけどどこから手をつければいいか分かんないなとなっている人、ゴールはそんな人がモニタリング&チューニングの第一歩を踏み出せることです。 スコープ 今回扱うもの、扱わないものは以下の通りです。 扱う モニタリング&チューニングの概要 モニタリングの前提知識 チューニングの前提知

                                                      AWS RDS/Auroraでモニタリング&チューニングを始めるための資料11選
                                                    • MySQLのREPEATABLE READとREAD COMMITTEDの違いを知るために色々試した - $shibayu36->blog;

                                                      MySQLのトランザクション分離レベルについてふんわりとした理解しかないなと感じた。もう少し理解するために、とくにREPEATABLE READとREAD COMMITTEDの違いを手を動かして色々確認してみた。 以下の記事を参考にした。 [RDBMS][SQL]トランザクション分離レベルについて極力分かりやすく解説 #SQL - Qiita MySQL :: MySQL 8.0 リファレンスマニュアル :: 15.7.2.1 トランザクション分離レベル 大まかな違い 公式ドキュメントを見る限り ノンリピータブルリード、ファントムリードが発生するか 範囲に含まれるギャップへのほかのセッションによる挿入をブロックするか の違いがありそうに見える。 ノンリピータブルリード、ファントムリードが発生するかを試す 以下のテーブルを作る。 CREATE TABLE `posts` ( `title`

                                                        MySQLのREPEATABLE READとREAD COMMITTEDの違いを知るために色々試した - $shibayu36->blog;
                                                      • [Software Design連動企画] 実践クエリチューニング | gihyo.jp

                                                        この記事は、『Software Design 2024年6月号』(2024年5月17日発売)の第1特集「SQLチューニングする前に知っておきたい 実行計画&インデックスのしくみ」の連動企画です。ぜひ本誌特集1もお読みください。 適切なインデックスを設計する インデックスの調整によるクエリの高速化は、RDBMSを使用する際の数あるチューニングテクニックの中でも最もお手軽なものです。テーブルのカラムの定義を変えるわけではないので、クエリの結果に違いが生じず、アプリケーションを変更する必要性がないからです。適切なインデックスを付与するだけでチューニングが済むというのは極めて効率的です。それでは適切なインデックスとはどのようなものでしょうか。本記事では、まずインデックスを設計する際に重要なポイントを解説します。 インデックスとSQL構文 「どのカラムの組み合わせに対してインデックスを作成すべきか」

                                                          [Software Design連動企画] 実践クエリチューニング | gihyo.jp
                                                        • システムインフラいまとむかし - NRIネットコムBlog

                                                          本記事は 基盤デザインウィーク 2日目の記事です。 🌈 1日目 ▶▶ 本記事 ▶▶ 3日目 💻 気付けば入社して14年。2010年入社の小林です。 いつの間にか基盤デザイン事業部では部長に続き2番目の古株となっていました。 もう今の若手(〜5年目ぐらい)はサーバというものを触ったこともない人もいるような時代になっています。 今回は基盤デザイン事業部ウィーク(長いので基デザウィークと呼んでいます)ということで、 入社2年目にインフラチームに配属された当初のオンプレミスシステムばかりの時代を懐かしみつつ、 情報システムにおけるインフラの今と昔の違いについて考えていきたいと思います。 オンプレミスの時代 仮想化前 さて、読者の皆様はサーバを触ったことはありますでしょうか? 「メインフレームからやってるぞー」という声も聞こえましたが、私はメインフレームは経験ないので少し置いておきます。 私がイ

                                                            システムインフラいまとむかし - NRIネットコムBlog
                                                          • 大手IT企業「経験者のみ採用」「他社が育てた人材欲しい」問題、どう攻略?

                                                            「gettyimages」より 特に人手不足が深刻だといわれるIT業界だが、求人の募集条件が「経験者限定」ばかりで「未経験者が入り込める隙がない」「どこで育てているの?」という指摘や疑問が一部で話題を呼んでいる。未経験者がIT業界でエンジニアとして働くにはどうすればよいのか。また、誰もが社名を知る有名IT企業に就職するには、どうすればよいのか。業界関係者の見解を交えて追ってみたい。 多くの業界で人手不足が叫ばれるなか、成長が続くIT業界の人手不足は顕著だ。IT・Web領域における人材紹介事業を手掛けるレバテックの調査によれば、ITエンジニア・クリエイターの正社員求人倍率は12.9倍にも上る(2023年6月時点)。 「特にニーズが高いのがAI(人工知能)、データサイエンス、セキュリティ分野の人材。外資系IT企業では、大学院でこれらの領域を学ぶ人材に新卒1年目で年収1000万円を提示するケース

                                                              大手IT企業「経験者のみ採用」「他社が育てた人材欲しい」問題、どう攻略?
                                                            • ISUCON 13 参加記 (白金動物園)

                                                              白金動物園の sorah です。優勝した ISUCON 9 以来 Writer や Admin (アドバイザー), ポータルのメンテナ係として運営に幽閉されていて長いこと選手をやっていませんでしたが、今回ひさびさに選手として参加したのでその参加記。 結果としては 18 位で 103,838 点で終了。10 万点到達の着順ではわりと早かったチームになれたものの、その後伸ばせず、かなり悔しい。 https://isucon.net/archives/57993937.html 一方で Ruby を利用して NameError や NoMethodError による fail を高速に繰り返していたため「ベンチマーク Fail 回数の多い 3 チーム」として 53 回で TVer からスポンサー賞をもらいました。我々より Fail 数が多いチームは Go だと思うんだけど、コンパイラがそこそこ怒

                                                              • リアーキテクチャをお手伝いするDryRunというツールを作りました - BASEプロダクトチームブログ

                                                                はじめに Platform Group の久保田( @ykbt13 )です! BASEではリアーキテクチャとしてバックエンドの既存機能を旧リポジトリから新リポジトリへ移行する作業を日々行っています。詳しく知りたい方はぜひこちらを参照してください。 www.youtube.com そんななか、BASEにおけるコア機能の1つである商品の発送機能の移行が行われました。しかしながら、コア機能であるがゆえに様々な改修が繰り返されて複雑化してしまった発送機能では移行前の動作を保証する術がテストのみでは不安があります。 そこで、リアーキテクチャを円滑に進めるべく、本番環境上で移行前後の処理を同時実行しデータベースの結果を比較することで動作の保証を行うツールを開発しました。 この記事では、同様にリアーキテクチャを進めている方々を対象に、そのツール(BASE内では通称DryRunと呼んでいますので以降Dry

                                                                  リアーキテクチャをお手伝いするDryRunというツールを作りました - BASEプロダクトチームブログ
                                                                • TiKVにおけるトランザクションとMVCCの話

                                                                  はじめに PingCAPの小板橋です。はじめまして! TiDBの入門記事から上級者編まで幅広く取り扱う本アカウント第5回目は「TiKVにおけるトランザクションとMVCCの話」についてをまとめていきたいと思います。 TiKVの仕組み まずは、TiKVの仕組みについてを見ていきましょう。 全体のTiDBクラスターのアーキテクチャについては、下記の記事をご覧ください。 TiDBクラスターにおけるデータレイヤーにあるストレージノードとしてTiKVと呼ばれるものがあります。 TiKVは、分散型のキーバリューデータベースになり、ACIDに準拠したトランザクションAPIを提供しています。このTiKVの裏には、RocksDBとRaftコンセンサスアルゴリズムによって動作しています。 Raftコンセンサスアルゴリズムについては、また別の記事で深ぼっていきます。(こちらはこちらでお楽しみに!) RocksDB

                                                                    TiKVにおけるトランザクションとMVCCの話
                                                                  • 『データ指向プログラミング』読んだ / OOP以前とDOPとの対比と差分などについて - Lambdaカクテル

                                                                    先々月あたりに邦訳が出た『データ指向プログラミング』を読んだ。めちゃくちゃざっくり言うとオブジェクト指向における「データと振舞いの一体化」というドグマを手放させるもので、めちゃくちゃざっくり見るとC言語的な構造化プログラミングの世界に回帰するようにも見えることから、世間的には色々な評価があるらしい。 イミュータビリティが良い、みたいな話は重々承知なので適宜飛ばしながら読んだ。また、lodashまわりの話は単なるライブラリ紹介であり、特筆することがないので飛ばした。 こういう感じで言及されている zenn.dev slides.com 自分なりに読んで思ったことをまとめる。面白い本だったし、自分の思想にも近しいものがある。僕は普段ScalaやTSを書いているので、その観点からの感想が多いです。OOPの歴史に詳しいわけではないので、不足があったらすみません。 OOP以前の世界との差異 イミュー

                                                                      『データ指向プログラミング』読んだ / OOP以前とDOPとの対比と差分などについて - Lambdaカクテル
                                                                    • ストレージとコンフィグでデータベースのグリッチを探す - Software Transactional Memo

                                                                      AIに描いてもらったストレージで作ったレース会場 はじめに この記事はデータベース・システム系 Advent Calendar 2023の一日目の投稿である。今年読んだ論文(今年書かれた論文とは限らない)の中で驚きや納得があって良かったなぁと思った論文をいくつか紹介していきたいと思う。 論文の本文そのものは機械翻訳なりチャットAIなりに叩き込めば誰でも内容の抽出はできるので、こちらのブログ内では何故これが良いと思ったかについて僕の主観に基づいて書いていく。僕の解釈が厳密に正しいことは一切保障しないし、気になって読んでみたら全然内容違うやんけ!と驚くところまでがセットくらいの気軽なつもりで読んで欲しい。 最初に紹介する論文は「When Database Meets New Storage Devices: Understanding and Exposing Performance Mism

                                                                        ストレージとコンフィグでデータベースのグリッチを探す - Software Transactional Memo
                                                                      • TSKaigi 2024 参加レポート - ドワンゴ教育サービス開発者ブログ

                                                                        バックエンドエンジニアの松尾です。 2024 年 5 月 11 日に開催された日本最大級の TypeScript をテーマとした技術カンファレンス TSKaigi 2024 に参加しました。 本記事では弊社からの登壇内容やスポンサーブースの様子をお伝えします。 登壇内容まとめ 弊社からは下記の LT で 2 名のエンジニアが登壇しました。 TypeScript で使いやすい OpenAPI の書き方 speakerdeck.com yukimochi さんからは OpenAPI の書き方について紹介しました。 変更に強く、ドメインモデルを正確に表現する書き方にすることで、TypeScript で使いやすいコードを生成できるとのことでした。 筆者は最近 OpenAPI spec を書くことは無いのですが、Union を用いた定義は非常に同意するところであり、今後の開発で活用していきたいと思い

                                                                          TSKaigi 2024 参加レポート - ドワンゴ教育サービス開発者ブログ
                                                                        • 「ChatGPT」「Gemini」の“得意分野の違い”をプロンプト4種で比較してみた

                                                                          関連キーワード 人工知能 テキストや画像を自動生成する「生成AI」(ジェネレーティブAI)を、ビジネスの効率化や顧客体験(CX:カスタマーエクスペリエンス)向上に役立てる企業の動きが進む。代表的な生成AIサービスとして、AIベンダーOpenAIの「ChatGPT」とGoogleの「Gemini」がある。それぞれどのような使い方に向いているのか。 本稿は、大規模言語モデル(LLM)「GPT-3.5」をベースにしたChatGTPと、LLM「Gemini Pro」をベースにしたGeminiに4種類のプロンプトを投げ、出力された回答を比較した。プロンプトはアイデア出し、コンテンツ作成、計画策定、開発支援の4つのテーマで作成した。 「ChatGPT」と「Gemini」の回答を4つのプロンプトで比較 併せて読みたいお薦め記事 連載:OpenAIとGoogleの生成AIを比較 第1回:生成AI“2大ツー

                                                                            「ChatGPT」「Gemini」の“得意分野の違い”をプロンプト4種で比較してみた
                                                                          • 現在ポータブルな単一で動くDBを趣味で作っています。 分散DBもやろうってなったとして、レプリケーション機能などを実装するとき 同期する内容は恐らくトランザクションログだけだと思うけど他に何があるのか、 通信プロトコルは何が最適なのか、 マスターが死んだことはどうやってわかるのか、 死んだときマスターはどうやって決めるのか、 そもそも分散DBはインスタンス同士でそれぞれの存在を漏れなく認識できているのか、 色々疑問が大量に湧きます。ここらへんの知識をご教示ください。 | Mond - 知の交流コミュニティ

                                                                            現在ポータブルな単一で動くDBを趣味で作っています。 分散DBもやろうってなったとして、レプリケーション機能などを実装するとき 同期する内容は恐らくトランザクションログだけだと思うけど他に何があるのか、 通信プロトコルは何が最適なのか、 マスターが死んだことはどうやってわかるのか、 死んだときマスターはどうやって決めるのか、 そもそも分散DBはインスタンス同士でそれぞれの存在を漏れなく認識できているのか、 色々疑問が大量に湧きます。ここらへんの知識をご教示ください。 熊崎 宏樹:良いですね。日曜大工でRDBMSを作るのはもっと市民権を獲得しうる趣味だと確信しています。 分散システムを作る際に気をつける事を語ると毎度長くなってしまうのですが、データ指向アプリケーションデザイン、通称イノシシ本に書いてある事をベースラインに説明すると明快であると気づきました。 * レプリケーションされるのはトラ

                                                                              現在ポータブルな単一で動くDBを趣味で作っています。 分散DBもやろうってなったとして、レプリケーション機能などを実装するとき 同期する内容は恐らくトランザクションログだけだと思うけど他に何があるのか、 通信プロトコルは何が最適なのか、 マスターが死んだことはどうやってわかるのか、 死んだときマスターはどうやって決めるのか、 そもそも分散DBはインスタンス同士でそれぞれの存在を漏れなく認識できているのか、 色々疑問が大量に湧きます。ここらへんの知識をご教示ください。 | Mond - 知の交流コミュニティ
                                                                            • 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT【イベントレポート】 - Findy Tools

                                                                              公開日 2024/05/24更新日 2024/05/24私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT【イベントレポート】 近年データベースが急速に進化し、開発にも大きな影響を与えています。そこでファインディでは「私たちはなぜNewSQLを使うのか TiDBを選定・導入した5社が語る選定と活用」と題したイベントを開催。PingCAPの日下さん、LINEヤフーの佐伯さん、アイスタイルの鈴木さん、DMM .comのpospomeさん、コロプラの曽我さん、さくらインターネットの江草さんをお招きし、NewSQLの一つである TiDBについて語っていただきました。 ■パネリスト 日下 太智さん / @ksk_tic PingCAP株式会社 プロダクトマネージャー / シニアソリューションアーキテクト SIerにて国内外問わずEC/小売/製造/サービス/メディア/出版など様

                                                                                私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT【イベントレポート】 - Findy Tools
                                                                              • Embulkのcoreのソースコードから紐解くデータ転送のしくみ

                                                                                この記事は trocco Advent Calendar 2023 の6日目の記事となります。 はじめに 今回はtroccoの内部でも利用されているETLのためのOSSであるEmbulkについて、core部分のソースコードリーディングを通して、そのしくみを紐解いていきたいと思います。 おことわり Embulkの基本的な使い方などについては解説しません。 筆者はembulk-coreにコントリビュートしているわけではないので、間違いなどがあればお気軽にご指摘ください。 今回見ていくcoreの実装自体は、比較的変更が少ないとされる各種プラグインが従うべきインターフェース部分(embulk-spi)から隠蔽されているため、今後この記事の内容が正しくなくなる可能性は容易にあります。 Embulkにはguessやpreviewやresumeといった機能も含まれていますが、今回は単純なembulk r

                                                                                  Embulkのcoreのソースコードから紐解くデータ転送のしくみ
                                                                                • Apache Sparkとは何か - Qiita

                                                                                  使い始めて3年くらい経ちますが、改めて振り返ってみます。 こちらの記事を書いたりしていますが復習も大事なわけで。 2024/4/12に翔泳社よりApache Spark徹底入門を出版します! その他のDatabricksコアコンポーネントの記事はこちらです。 Apache Sparkプロジェクトの歴史 SparkはDatabricksの創始者たちがUC Berkeleyにいるときに誕生しました。Sparkプロジェクトは2009年にスタートし、2010年にオープンソース化され、2013年にApacheにコードが寄贈されApache Sparkになりました。Apache Sparkのコードの75%以上がDatabricksの従業員の手によって書かれており、他の企業に比べて10倍以上の貢献をし続けています。Apache Sparkは、多数のマシンにまたがって並列でコードを実行するための、洗練され

                                                                                    Apache Sparkとは何か - Qiita