並び順

ブックマーク数

期間指定

  • から
  • まで

81 - 120 件 / 1458件

新着順 人気順

Databaseの検索結果81 - 120 件 / 1458件

  • 毎日本番DBをダンプして、ローカルと開発環境で利用して生産性を上げてる話

    シードデータで動作確認して大丈夫だったのに、本番反映してみたら想定してなかった挙動・エラーが出た😱そんな経験はありませんか。 恥ずかしながら私は今までに何回もありました。機能開発だけじゃなくバッチやマイグレーションなんかでも発生しがちなコレ。またはシードデータで動作確認できても、本番データでも通用するか検証ができないままプルリクを作る、なんていうこともあると思います。今回はこちらを無くす試みをしたお話です。 「もう本番DBで開発しちゃえばいいじゃない」の問題点 この課題を解決するには、極論すると本番DBで開発するしかないのですが、そうなると言うまでもなく以下の問題が出てきます。 レビュー通過してないコードが本番に影響を与える トライ&エラーができない 個人情報をはじめとするセンシティブな情報が開発者の端末に漏れる データ量が多すぎてローカルに持ってこれない しかし言い換えると、これらをク

      毎日本番DBをダンプして、ローカルと開発環境で利用して生産性を上げてる話
    • ジュニアエンジニアを脱却するための「コンテナ流儀」 - Uzabase for Engineers

      こんにちは。ソーシャル経済メディア「NewsPicks」で検索システムを開発しております崔(ちぇ)です。 この記事は、 NewsPicks Advent Calendar 2023 の23日目の記事になります。 qiita.com 昨日ははぐっさんによる「SwiftUIのKeyframeAnimatorでちょっとしたカードアニメーション 〜猫の手を添えて〜」でした! はじめに コンテナ流儀: 必要最低限のものだけで運用する Point1)レイヤーは少ないほどいい TIP:ベースイメージを作る Point2)不要なパッケージをインストールしない Point3)いつ再起動してもいいコンテナを作る Point4)独立したアプリケーションにする TIP:複数のプロセスを実行したい場合もある TIP:環境変数を積極的に使う Point5)フォアグラウンドで実行する 終わりに まとめ 感想 告知 はじ

        ジュニアエンジニアを脱却するための「コンテナ流儀」 - Uzabase for Engineers
      • コストをかけずにWebサービスを公開するための構成例 - Qiita

        はじめに 個人でフロントエンド(react)、バックエンド(node.js)、データベース(postgreSQL)を利用したWebサービスを公開したいと考えていました。 まずはテスト的に無料で外部公開できるサービスがないか調査しましたが、2022年8月に有料化されたHerokuの記事ばかりヒットしてしました。 結果的には無料で使用できる構成があり、実際にテストプログラムを動作させることができましたので構成例として記載しておきます。 ※無料なので比較的厳しい条件も含まれていたりするのでそれぞれのサービスを確認お願いします。 例えばsupabaseは数日間利用がないとインスタンスが一時停止して手動で起動させないといけないなどがあります。 今回試したサービス できるだけ同じサービスに集約したいと考えていましたが、実際にはフロントエンド、バックエンド、データベースはそれぞれ異なるサービスになってし

          コストをかけずにWebサービスを公開するための構成例 - Qiita
        • DB に JSON を保存したいときに Protobuf を使うと便利 #LayerXテックアドカレ - LayerX エンジニアブログ

          こんにちは。バクラク事業部 Enabling チームの @izumin5210 です。最近「HUNTER×HUNTER」の既刊を全部読みました。 この記事はLayerXテックアドカレ2023の9日目の記事です。 前回「1人目データアナリストとしてデータチームに異動しました 」 次回「Slack × Zapier × MiroでKPTでの振り返りをラクにする」 RDB や KVS などのデータ保存先において、データを正規化せずにそのまま保存したいと思うことはありませんか? 8月にリリースされた「バクラク請求書発行」というプロダクトには「柔軟なレイアウトカスタマイズ」機能が搭載されています。リンク先の画面操作イメージを見ていただくと、この機能の雰囲気を理解していただけると思います。この機能が扱うレイアウトデータはまさに「関係の正規化をせずに保存したいデータ」でした。 bakuraku.jp こ

            DB に JSON を保存したいときに Protobuf を使うと便利 #LayerXテックアドカレ - LayerX エンジニアブログ
          • アンチパターンで学ぶDB設計 - Qiita

            はじめに データベース(DB)の設計は、システムの性能や保守性に大きな影響を与えます。 この記事では、最低限パフォーマンスの低下や管理の複雑化を引き起こさないようにするために覚えておくべきことを、アンチパターンとしてまとめました。 本記事は、 現在仕事でデータベースを扱っており、データ設計について今一度おさらいしたい データベースについての基礎知識やお作法を身に付けたい という人を対象として想定しています。 これらに当てはまる方はぜひ一度確認してみてください! 弊社Nucoでは、他にも様々なお役立ち記事を公開しています。よかったら、Organizationのページも覗いてみてください。 また、Nucoでは一緒に働く仲間も募集しています!興味をお持ちいただける方は、こちらまで。 DB設計アンチパターン 早速、DB設計におけるアンチパターンを紹介します。 それぞれアンチパターンのテーブルを見て

              アンチパターンで学ぶDB設計 - Qiita
            • Repro で遭遇した Aurora MySQL にまつわるトラブル 5 選 - Repro Tech Blog

              こんにちは、Platform Team の荒引 (@a_bicky) です。前回は続・何でも屋になっている SRE 的なチームから責務を分離するまでの道のり 〜新設チームでオンコール体制を構築するまで〜という話を書いたんですが、今回は Repro の運用に 7 年以上携わる中で私が遭遇して印象的だった Aurora MySQL 絡みのトラブルについて紹介します。 Aurora MySQL が詰まってデータ処理のスループットが下がるとか、API のレスポンスが遅くなるとか、ALTER TABLE する度にアプリケーションエラーが発生するとか、胃が痛くなる胸が熱くなる話が多いので、Aurora MySQL を利用していなくても楽しんでいただけるのではないかと思います。Aurora MySQL を利用している方であれば参考になる情報もあるでしょうし、通常の MySQL にも適用可能な話もあります

                Repro で遭遇した Aurora MySQL にまつわるトラブル 5 選 - Repro Tech Blog
              • MySQL/Aurora/TiDBロック入門 – 第1回トランザクション分離レベル|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ

                MySQL/Aurora/TiDBロック入門 – 第1回トランザクション分離レベル MySQL InnoDB および AWS Aurora や PingCAP TiDB におけるロックの仕組みやトランザクションの動作を全11回のシリーズで解説します! 最初はベースとして重要な MySQL 8.0 InnoDB 前提でユーザー視点でのロックの仕組みを学び、後半第10回以降では MySQL 互換 DB として人気の高い AWS Aurora や PingCAP TiDB と MySQL InnoDB との違いについて学びます。 1回目の今回はロック機構と切っても切り離せないトランザクションとその分離レベルについて、実際に挙動を確かめながら解説します。ライブ感のある説明も理解に役立ちますので、解説動画も付けてみました。合わせてご覧ください! ★ 第1回 トランザクション分離レベル ★ 第2回 ロ

                  MySQL/Aurora/TiDBロック入門 – 第1回トランザクション分離レベル|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ
                • 顧客が本当に必要だったもの - パフォーマンス改善編 / Make what is needed

                  # 失敗から学ぶRDBの正しい歩き方 - https://amzn.to/4e0CqfH

                    顧客が本当に必要だったもの - パフォーマンス改善編 / Make what is needed
                  • WEB+DB PRESS総集編[Vol.1~136]

                    2024年4月18日紙版発売 WEB+DB PRESS編集部 編 B5判/128ページ 定価3,300円(本体3,000円+税10%) ISBN 978-4-297-14156-1 Gihyo Direct Amazon 楽天ブックス 丸善ジュンク堂書店 ヨドバシ.com 本書のサポートページサンプルファイルのダウンロードや正誤表など 『WEB+DB PRESS』全号のバックナンバーを収録 Webアプリケーション開発のためのプログラミング技術情報誌「WEB+DB PRESS」は,2000年から2023年までの23年間という長きにわたり,現場で活躍するWeb開発者の方々に向けた技術情報を提供してまいりました。そして2023年8月発売のVol.136をもって,隔月刊誌としては休刊いたしました。 本総集編には,WEB+DB PRESSVol.1から隔月刊最終号となるVol.136までのバックナン

                      WEB+DB PRESS総集編[Vol.1~136]
                    • 竹中平蔵の大失策。小泉純一郎の手先となって我が国の「労働生産性」を下げた日本経済の破壊者 - まぐまぐニュース!

                      毀誉褒貶が相半ばする竹中平蔵総務相。そんな竹中氏の「最低賃金の目安」についての論評が話題となっています。今回のメルマガ『大村大次郎の本音で役に立つ税金情報』では元国税調査官で作家の大村さんが、件の竹中氏の論評を取り上げ「経済の事を何も知らない」と厳しく批判するとともに、そう判断する理由を解説。各種データを示しつつ分析・詳説しています。 ※本記事のタイトル・見出しはMAG2NEWS編集部によるものです/原題:竹中平蔵氏の経済理論はまったく的外れ 的外れにもほどがある。日本の生産性を下げた竹中平蔵という「戦犯」 去る7月24日、厚生労働大臣の諮問機関である中央最低賃金審議会は、最低賃金の目安を50円引き上げ、全国平均で時給1,054円になりました。 この引き上げ幅は過去最大です。 それを受けて、かの竹中平蔵氏がこういう論評を発していました。 「日本人は労働生産性が低いのだから、最低賃金を上げる

                        竹中平蔵の大失策。小泉純一郎の手先となって我が国の「労働生産性」を下げた日本経済の破壊者 - まぐまぐニュース!
                      • このSRE本がすごい!2024年版 - じゃあ、おうちで学べる

                        はじめに 有用な知識の特性 Google SRE リソース Site Reliability Engineering: How Google Runs Production Systems The Site Reliability Workbook: Practical Ways to Implement SRE Building Secure and Reliable Systems: Best Practices for Designing, Implementing, and Maintaining Systems SLO Adoption and Usage in SRE Creating a Production Launch Plan Training Site Reliability Engineers: What Your Organization Needs to Cre

                          このSRE本がすごい!2024年版 - じゃあ、おうちで学べる
                        • [提案]テーブル名はもう全部単数形にしようや

                          こんにちは、データベース愛好家のみなさん!今日は、データベース設計で永遠の議論となっている「テーブル名、単数形 vs 複数形問題」について、徹底的に掘り下げていきます。私は単数形派です!でも、なぜそうなのか、一緒に深掘りしていきましょう。 イントロダクション:我らが主人公、単数形くん みなさん、こんな経験ありませんか? You: テーブル名って、users? user? どっちがいいんだろう... 先輩: いや、絶対usersだよ!Rails使ってるし。 You: でも、user_idって書くときは単数形だよね? 先輩: あ、そうだね...でもやっぱりテーブルは複数形! You: (心の中で)なんかモヤモヤする... 実は、この「モヤモヤ」には理由があるんです。今日はその理由を解き明かし、単数形テーブル名の魅力をお伝えします。準備はいいですか?Let's dive in! 言語の壁を突破せ

                            [提案]テーブル名はもう全部単数形にしようや
                          • “LLM for SRE“の世界探索 - ゆううきブログ

                            ChatGPTが登場した当初、対話や要約、翻訳、コード生成などの典型的な言語タスクができても、SREやAIOpsの研究開発にはあまり関係ないのではないかと正直思っていた。AIOpsでは典型的にはいわゆるObservabilityデータ(メトリクス、ログ、トレースなど)が入力となるため、自然言語ではなく数値のデータを解析することが求められる。自然言語のタスクを研究対象としていなかったため、AIOpsとChatGPTに強い関係性は見いだせなかった*1。 しかし、自分で大規模言語モデル(Large Language Model: LLM)を日常的に使用したり、表題にあるようにSREのためのLLM(LLM for SRE, LLM4SRE)に関する論文を読むうちに、LLMのテキスト生成器としての性質よりもその優れた推論機械としての性質に注目するようになった。特にSREの障害診断は、人間の専門家が推

                              “LLM for SRE“の世界探索 - ゆううきブログ
                            • RustでWebバックエンドを書き始めてから1年くらい経った

                              はじめに 僕はDeno Land Inc.でDenoを利用したサーバレスエッジホスティングサービスのDeno Deployを開発するチームに所属しています。OSSのほうのDenoのメイン言語はRustで、Deno Deployのバックエンドも同様にRustで書かれています。 今年のアドベントカレンダーで一休さんから以下の記事が公開されましたが、日本でもRustをWebバックエンドの言語として採用する企業がじわじわと増えてきている印象があります。 Deno DeployのバックエンドをRustで開発してきて、RustでWebバックエンドを書くことのメリットやデメリットをいくつか感じたので、この記事で紹介したいと思います。 Deno Deployの構成 まず、ざっくりとDeno Deployのバックエンドの構成を紹介します。 多くのコンポーネントがありますが、ここではどのようにRustを利用し

                                RustでWebバックエンドを書き始めてから1年くらい経った
                              • データベース自作勉強会・輪実装会のススメ - エムスリーテックブログ

                                先日、社内有志で開催していたDB自作本 Database Design and Implementation の輪読会ならぬ輪実装会がついに完結を迎えました。 RDBMSをゼロから、毎週一人ずつ、1章分を実装してPullRequestを出しつつ資料も準備して発表をこなすという一見ハードな勉強会で、完走できるか不安もありつつスタートしましたが、やってみるとめちゃくちゃ楽しく最後まで完走できました。 本記事ではみなさんに「うちでもやってみたい」と思ってもらえることを願って、読んだ本の推しポイントや、どのように勉強会を進めたかを紹介したいと思います。 感動で涙の出るコード Part1: おすすめポイント 本が良い みんなでワイワイやるのが良い 3ヶ月で完走できるのがいい 完走後のモチベーションアップが良い Part2: 輪実装会 募集 参加者 進め方・実装 期間 Part3: おれたちのDB実装

                                  データベース自作勉強会・輪実装会のススメ - エムスリーテックブログ
                                • Zendesk、DynamoDBからMySQLとS3へ移行し、コストを80%以上削減

                                  Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。この本では、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

                                    Zendesk、DynamoDBからMySQLとS3へ移行し、コストを80%以上削減
                                  • 北海道6区つらい

                                    自民東、立憲西川、共産おぎうの布陣。 個人的な感情としては、今の与党が若者のほうをちーとも向かんので、消極的野党支持なのだが 立憲の西川は元旭川市長で、国政進出を宣言して辞める間際に例のいじめ事件が起き、いじめをなかったことにして市長辞めたんで未だに印象が悪い。最後まで頑張ってきっちり引き継いだポーズしときゃよかったのにな。女の子が命を絶ってるわけだし、いじめがあったことなんてみんなわかってたんだから、「ありませんでした」ってのは悪手だったよな。 ちなみに例の事件、詳細な調査書が公表されて、いじめも認定されたのよ。暇な人はググって読んでな。200ページ以上あるよ。 という事情を引いて見ても、西川は言ってることがよくねえなあ。農業政策に力を入れるとしてるが、同じ主張で当選実績のある東と張り合うにはそれ一本じゃ分が悪い。とすると他に興味を惹く主張が欲しいところだが、NHKの第一声(https:

                                      北海道6区つらい
                                    • S3にあるALBログの調査はAthenaよりDuckDBのほうが簡単 - road288の日記

                                      AWSのALB(Application Load Balancer)のログはS3に置かれるが、この中身をサクッと調べたいとき、Athenaを使う方法が標準的で、下記で案内されているようにパーティション射影(Partition Projection)でテーブルを作ってAthenaからクエリする。 パーティション射影を使用して Athena で ALB アクセスログ用テーブルを作成する - Amazon Athena 私も従来はその方法を使っていたが、Athenaはブラウザから使うと動作がもっさりしているし、決まったクエリを1回きり実行して結果を取得したいだけのときならまだしも、探索的にクエリを何発も実行したいときには使い勝手が悪い。 最近他のプロジェクトでDuckDBを使うようになって、使い勝手の良さに感動していたが、DuckDBはALBのログを探索的に調べたいときにもめっちゃ使えると思った

                                        S3にあるALBログの調査はAthenaよりDuckDBのほうが簡単 - road288の日記
                                      • DB Pilot - DuckDB GUI Client

                                        DuckDB GUI Client DB Pilot is a database GUI client for DuckDB and various other databases. Available for Mac, with Linux and Windows support coming soon. Working with SQL has never been easier - thanks to DB Pilot's integrated AI assistant.

                                          DB Pilot - DuckDB GUI Client
                                        • CockroachDB はどのくらい「しぶとい」のか? / How tough is CockroachDB?

                                          CockroachDB はどのくらい「しぶとい」のか? / How tough is CockroachDB?

                                            CockroachDB はどのくらい「しぶとい」のか? / How tough is CockroachDB?
                                          • 生成AIのRAG構成を大手3社(AWS、Azure、Google Cloud)で徹底比較してみた - G-gen Tech Blog

                                            G-gen の堂原と又吉です。当記事では、Amazon Web Services(AWS)、Microsoft Azure、Google Cloud(旧称 GCP)が提供するフルマネージドな RAG サービスの比較を行います。 はじめに 当記事について RAG とは 3社比較 前提条件 機能比較 料金シミュレーション 想定シナリオ AWS Azure Google Cloud 総評 AWS Azure Google Cloud 詳細の解説 Knowledge bases for Amazon Bedrock(AWS)の詳細 構成図 プロダクト一覧 Knowledge bases for Amazon Bedrock Amazon S3 Amazon OpenSearch Service できること 検索 対応データソース 料金 概要 基盤モデル利用料金 ベクトルデータベース料金 Azure

                                              生成AIのRAG構成を大手3社(AWS、Azure、Google Cloud)で徹底比較してみた - G-gen Tech Blog
                                            • 【AWS】近年の終了サービスから見るAWSの今後の方向性 - Qiita

                                              前段 最近CodeCommitやCloud9の新規アカウント利用不可になったことでX上ではざわざわ...していました。 ・ 2024年7月27日時点におけるAWS CodeCommitとAmazon CloudSearchの新規利用に関して ・AWS Cloud9が突然、新規利用不可に? 代替策「SageMaker Studio コードエディタ」の利用手順 そこで、ここ直近一年(2023/4~)で終了(の予告があった)サービスをみて、今後の展開を考えてみようと思いました。 あわよくば、「このサービスもなくなるかもなー」と先見の明が少しでも生えれば焦らなくてすむな、という思いで書いています。 ※あくまで個人見解です ここ一年で終了(の予告があった)したサービス AWS OpsWorks(2024.1.31 終了) AWS OpsWorks Stacks サポート終了FAQs 登場背景 201

                                                【AWS】近年の終了サービスから見るAWSの今後の方向性 - Qiita
                                              • 開発環境のデータベースでも本番環境相当のデータを使う - クックパッド開発者ブログ

                                                こんにちは。レシピ事業部バックエンド基盤グループの石川です。 2014 年、このブログに『開発環境のデータをできるだけ本番に近づける』というタイトルの記事が投稿されました。 クックパッドでは、ユーザーさんが実際に体験している状況と近い状況を再現しながら開発することに価値があると考えています。技術的には、最初からレコードがたくさんあることによってパフォーマンス問題に気付きやすくなるなどの長所がありますし、サービス開発としても、実際のユーザーさんの体験を最速でなぞって素早くフィードバックループを回せるようになるという長所があります。 この慣習は 2014 年の記事から 10 年経った今でも続いています。一方でその実現手法については変化を続けてきました。現在のクックパッドでは状況に応じていくつかの手段を使い分けています。それらの手段については今まであまり公開されていなかったような気がするため、こ

                                                  開発環境のデータベースでも本番環境相当のデータを使う - クックパッド開発者ブログ
                                                • MySQLのロックに起因するブロックタイムアウト撃退記 - inSmartBank

                                                  こんにちは。スマートバンクのサーバーサイドエンジニアをやっておりますid:moznionです。 すっかり秋めいてきましたね。秋といえばMySQL*1、ということで今回は先日解消した「MySQLのロックに起因するブロックタイムアウト」のトラブルシューティングついて記していきたいと思います。 事の発端 ある時を境にSentryに ActiveRecord::LockWaitTimeout というエラーがしばしば報告されるようになっていました。 SentryにActiveRecord::LockWaitTimeoutが上がってきている様子 Mysql2::Error::TimeoutError: Lock wait timeout exceeded という文言から、MySQL上でロックを取っている他のクエリにブロックされ、そのブロックが長時間に渡ったため自クエリがタイムアウトしてabortしてし

                                                    MySQLのロックに起因するブロックタイムアウト撃退記 - inSmartBank
                                                  • ITのひどい記事をみんながブクマしてキツイ

                                                    以下の記事、内容がひどくて空いた口が塞がらなかったのだが、 (はてブで)ブックマークして下手にホッテントリにでもなったら嫌だなと思いそっとブラウザのタブ閉じた。 が、しばらくすると残念ながらホッテントリ入りしてしまったので、はてブにコメントを軽く書こうとしたが100文字に収まらなかったので増田にした。 技術選定の失敗 2年間を振り返る TypeScript,Hono,Nest.js,React,GraphQL まず、「特定条件下では MySQL は我々のプロダクトには不向き」を「MySQLを使うと会社は潰れる」なんて表現するのおかしいでしょ。 以下の記事からの引用だが Uber のエンジニアは「PostgreSQLではアーキテクチャに制限がありすぎてUberのシステムを支えきれない、MySQL+InnoDBに変えたら全部解決した」と主張している。 UberエンジニアがブログでPostgre

                                                      ITのひどい記事をみんながブクマしてキツイ
                                                    • オイ、そこのSELECT COUNT。余計な数え上げに意味なんかねえ - inSmartBank

                                                      こんにちは。MySQLは秋の季語とする一派が世に存在していることを知り、私もMySQLに関わる記事を書いてみようと筆を取ることにしました。 さて、リレーショナルデータベースをバックエンドとするWebアプリケーション開発において、特定の条件に合致するレコードがN件だけ存在するかどうかを確認するロジックは頻出といえます。プログラマとして一度は書いたことがあるのではないでしょうか? この記事ではそのような件数カウントを行うためのクエリが引き起こした性能劣化と、その改善アプローチについて紹介していきます。 なお、本記事の内容はMySQLを前提としており、アプリケーションコードの例はRuby on Railsを用いますが特別な前提知識は必要ありません。コードの雰囲気だけ感じ取っていただければと思います。 ありがちなコード if query.count == n の問題 冒頭で述べた通り、特定の条件に

                                                        オイ、そこのSELECT COUNT。余計な数え上げに意味なんかねえ - inSmartBank
                                                      • MySQLでUUIDv4をプライマリキーにするとパフォーマンス問題が起きるのはなぜ?(N回目)

                                                        はじめに こんにちは、令和トラベルでバックエンドエンジニアをしている飯沼です。 MySQLでは、UUID (v4)などのランダム性の高いIDをプライマリキーに設定すると、パフォーマンスが低下すると言われています。私自身もこの問題については認識しておりアンチパターンとして避けて来ましたが、イマイチ理由を理解できず何度も調べていたので自分の理解を整理しました。 ※ この記事は令和トラベルのTech LT会で共有した内容を記事にしたものです。社外の方にもご参加いただけるTech LT会は connpass にて告知しています。 UUIDをプライマリキーにするユースケース そもそもUUIDをプライマリキーにするユースケースはどのようなものがあるのでしょうか? いくつかの観点から考えてみます。 パフォーマンス観点 大量の同時書き込みが発生するような状況でauto incrementを利用してIDを発

                                                          MySQLでUUIDv4をプライマリキーにするとパフォーマンス問題が起きるのはなぜ?(N回目)
                                                        • ODBCドライバーとは? ODBCの仕組みからドライバーの使い方まで解説!

                                                          企業が業務システムにMySQL、PostgreSQL、Oracle、SQL Server といったリレーショナルデータベースを使いはじめてから今に至るまで、データベースへのコネクティビティは重要な課題であり続けています。1992年にMicrosoft が発表したOpen Database Connectivity(ODBC)API は、この課題に対する画期的な解決策となりました。 ODBC は、アプリケーションと多様なデータベース間の接続を標準化する技術として、現在でも広く採用されています。本記事では、ODBC 技術の仕組みとODBC ドライバーの役割、その重要性について詳しく解説します。 ODBC の仕組み ODBCとは ODBC は、アプリケーションからデータベースへのアクセスを標準化するためのAPI です。ODBC 4.0 の仕様はこちらに定義されています。この技術により、アプリケー

                                                            ODBCドライバーとは? ODBCの仕組みからドライバーの使い方まで解説!
                                                          • dbtで見やすいER図を生成する - yasuhisa's blog

                                                            背景: dbtを使っていてもER図は欲しい! どうやってER図を生成するか どうやってER図を見やすくするか まとめ 背景: dbtを使っていてもER図は欲しい! dbtはモデル間のリネージなど可視化が得意なツールではありますが、万能なわけではありません。モデルの生成過程などはリネージで担保できますが、分析時に「どれとどのモデルがJOINできて、JOINする際のキーはこれを使って」というER図で扱うような可視化はディフォルトではできません。 DWHを作っている側からすると「このテーブルはあの辺のテーブルと一緒に使うと便利で、いつもあのキーでJOINして」というのが頭の中に入っていることが多いため、ER図がなくてもどうにかなることも多いでしょう。しかし、分析に慣れていない人や分析に慣れている人であっても、普段と異なるドメインのテーブルを触るときはER図が提供してくれる情報は有用です。ちなみに

                                                              dbtで見やすいER図を生成する - yasuhisa's blog
                                                            • はてなブログの DB を RDS for MySQL 8.0 にアップグレードした話 - Hatena Developer Blog

                                                              この記事は、はてなエンジニア Advent Calendar 2023の2024年1月17日の記事です。 はてなエンジニア Advent Calendar 2023 - Hatena Developer Blog id:hagihala です。先日、はてなブログの DB を RDS for MySQL 5.7 から 8.0 へアップグレードしたので、工夫した点などを共有します。 Aurora MySQL 3.x にしなかった理由 MySQL 5.7 -> 8.0 で対応した変更点 character set や collation のデフォルトが変更される explicit_defaults_for_timestamp がデフォルトで有効になる SQL mode の変更 デフォルトの認証プラグインが caching_sha2_password になり、 mysql_native_passw

                                                                はてなブログの DB を RDS for MySQL 8.0 にアップグレードした話 - Hatena Developer Blog
                                                              • 民謡コレクション

                                                                ここは、古くから歌い続けられている日本民謡のページです。 ひと頃の「民謡ブーム」が落ち着いたようですが、ブームとは関係なく、かたくなに守られてきた民謡は、まだ生活の中に生きているように思います。 ここでは、わたくしがおすすめしたい、こだわりの民謡をご案内します。ついでに、わたくしのコレクション?のCDやら、本の類もご案内いたします。 なお、掲載している民謡は、日本の北から南から、隈無く…という訳ではなく、気まぐれにご紹介しているに過ぎません。

                                                                • 行政事業レビュー見える化サイト | RSシステム

                                                                  政府が実施する予算事業や基金事業の情報のデータベースです。 事業の概要、成果目標や実績、支出先などを、関心・目的に応じて、自由に検索・閲覧できます。

                                                                  • explainだけじゃわからない!MySQLのindexの考え方 - BASEプロダクトチームブログ

                                                                    はじめに こんにちは、バックエンドエンジニアのSakiです!バックエンドでPHPを書いたり、PHPという言語そのもののメンテナーもしています。 この度、注文データダウンロードAppのパフォーマンスをアップさせるため、とても入念にデータベースまわりの処理を見直しました。その中でも特に速度に関わってくる「index」についての考え方をまとめたいと思います。 この記事はMySQL(InnoDB)についての記事であり、他のRDBについては当てはまらない場合もあるということにご注意ください。 indexとは何か、おさらい ご存知の方ももちろん多いと思いますが、indexについておさらいさせてください。 indexとは辞書でいうところの目次に相当するもので、目的のデータをいち早く検索するために重要なものです。もし辞書に目次が存在しなかった場合、目的の情報を探すのにとても苦労するだろうというのは想像しや

                                                                      explainだけじゃわからない!MySQLのindexの考え方 - BASEプロダクトチームブログ
                                                                    • アーキテクチャの進化はドメインイベントが起点になる - KAKEHASHI Tech Blog

                                                                      こちらの記事はカケハシ Advent Calendar 2023 Part2の24日目の記事になります。 adventar.org はじめに 反復的な開発は、変更容易性の高いソフトウェアが不可欠です。ソフトウェア開発の経験がある方なら、デリバリ後の洞察や市場環境の変化から、新しい機能の追加やアーキテクチャの進化の必要性に直面したことが一度はあるでしょう。 私自身、要求分析手法やSOLID原則等の技法を取り入れ、変更容易性に対応する多くのプロジェクトに参加しました。しかし、どれだけ優れた手法や技法を持っていても、変更が難しい要求が出てくることは避けられません。その際、「過去の出来事」を正確に記録していれば、後から見返して問題解決が容易だったと感じることがよくあります。 ドメイン駆動設計(DDD)では、「過去に起こった出来事」を表現するドメインモデルを「ドメインイベント」と呼びます。変更容易性

                                                                        アーキテクチャの進化はドメインイベントが起点になる - KAKEHASHI Tech Blog
                                                                      • ワークフローオーケストレーション入門

                                                                        「Data Engineering Study #23 Data orchestration 特集」の発表資料です イベントページ: https://forkwell.connpass.com/event/310011/

                                                                          ワークフローオーケストレーション入門
                                                                        • DB初心者が自作DBMS始めてみた - Qiita

                                                                          この記事は DeNA 24 新卒 Advent Calendar 2023 の 23 日目の記事です。 TL;DR DBMSの基本的な仕組みを知るのに有益だったリソース CMUのDBMS講義 先人の素晴らしい自作DBMSの解説記事&ソースコードリーディング 小さな小さな自作DBMSの設計と実装 最小限SELECTやINSERTなど基本的なSQLが動く この記事のゴール データベースの内部構成を超ざっくり理解するために有用なリソースを知り、そして(全開発者のロマンである)自作 DBMS に一歩踏み出すきっかけになればうれしいです。 モチベーション 自分は普段業務でアプリケーションのような割と高レイヤーな開発がメインなこともあって、ミドルウェアやOS、ネットワークと言った低めのレイヤーに憧れを持っており、この気持ちをまずは自作DBMSをやってみることによって解放してあげようと思ったことがきっか

                                                                            DB初心者が自作DBMS始めてみた - Qiita
                                                                          • ちょっとJavaのsynchronizedをGoに移植しようとしたはずが、なぜか1万文字の作文ができた - エムスリーテックブログ

                                                                            AI・機械学習チームのブログリレーも9日目になりました。同チームの横本@yokomotodです。 本日はJavaとGoを題材に並行プログラミングまわりの自由研究をしたお話をしてみたいと思います。 3部構成で、パート1では発端となった「排他制御」について、パート2では「メモリの可視化」について、それぞれJavaとGoを比べてみました。 最後にパート3では、それらの動作を規定する「メモリモデル」について、わかりやすく解説されているリソースを紹介します。 長過ぎる! 3行で!! パート1: synchronized = 「排他制御」? Java synchronized vs Go sync.Mutex Goで再入可能なロック? 仮にGoで再入可能なロックを実装するなら? Javaが再入可能を選択した理由 パート2. sycnhronized = 「排他制御」+「メモリ可視性の保証」 Javaの

                                                                              ちょっとJavaのsynchronizedをGoに移植しようとしたはずが、なぜか1万文字の作文ができた - エムスリーテックブログ
                                                                            • 今日から始める「システム監視」。大量トラフィックのシステムを安定して運用する知見をアソビューのSREに学ぶ - Findy Tools

                                                                              公開日 2024/08/16更新日 2024/08/15今日から始める「システム監視」。大量トラフィックのシステムを安定して運用する知見をアソビューのSREに学ぶ はじめにアソビュー株式会社では、アソビュー!という電子チケットを販売するサイトを運営しています。 システムを安定稼働させるためには、日常的にシステムの状態を監視して、問題があれば調整するというプロセスを繰り返すことが必要不可欠です。本記事では、アソビュー株式会社において、どのような体制でこの安定稼働を実現しているかということを書くことによって、同じようにシステムを安定稼働させたいと日々考えておられる方々を想定読者として、そのノウハウを共有しようと思います。 安定稼働をするために必要な要素 人間の健康管理のために必要なことシステムを安定稼働するために必要なことというのは、人間が健康に生きていくためにやっておいたほうがいいことと共通

                                                                                今日から始める「システム監視」。大量トラフィックのシステムを安定して運用する知見をアソビューのSREに学ぶ - Findy Tools
                                                                              • MySQL(InnoDB)のSQLパフォーマンスチューニングのエッセンス

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

                                                                                  MySQL(InnoDB)のSQLパフォーマンスチューニングのエッセンス
                                                                                • WebAssemblyとしてPostgreSQLをビルドした「PGlite」公開。Node.jsやブラウザ上でPostgreSQLを実行、DBの永続化も可能

                                                                                  PostgreSQLのソースコードをWebAssemblyバイナリとしてビルドしたことで、Node.jsなどのJavaScriptランタイムやWebブラウザ上で(ほぼ)フル機能のPostgreSQLを実行可能にした「PGlite」が公開されました。 PGliteはPostgreSQLのCのソースをEmscriptenでコンパイル PostgreSQLはオープンソースの代表的なリレーショナルデータベースであり、C言語で開発されています。 PGliteはこのPostgreSQLのCのソースコードのビルドにEmscriptenコンパイラを使用してWebAssemblyバイナリとして出力、JavaScript/TypeScriptからライブラリとして呼び出せるようにしたものです。 ただしEmscriptenでコンパイルされたプログラムは新しいプロセスをフォークできないため、PGliteはPostg

                                                                                    WebAssemblyとしてPostgreSQLをビルドした「PGlite」公開。Node.jsやブラウザ上でPostgreSQLを実行、DBの永続化も可能