並び順

ブックマーク数

期間指定

  • から
  • まで

121 - 160 件 / 3111件

新着順 人気順

postgresqlの検索結果121 - 160 件 / 3111件

  • SQL学習モチベを爆上げする「SQLテスト制度」を導入している話 - AppBrew Tech Blog

    こんにちは、最近はアプリグロースを担当しているabeshi(@abeshi_official)です。 美容のプラットフォーム「LIPS」を運営するAppBrewでは非開発職のSQL習得に力を入れています。誰でもRe:dashやログを触れる状態になっているし、それぞれのDBに何がどう入っているかを共有するためのドキュメントも存在しています。 「非開発職もSQL書けるように頑張ろう!」と掲げたところで、当の本人たちは毎日仕事が忙しくなかなか時間も取れない上に明確な目標がないといまいち学習モチベーションを保つことができません。そこで弊社が導入したのが「SQLテスト制度」です。 ✍️SQLテスト制度とは SQLの学習到達度によってレベルごとに分けたテストで、合格すると給与が上がります。 *1現在は二つレベルが存在していて、 【レベル2】... 初学者向けでwhere・joinなど基本的な文法が使え

      SQL学習モチベを爆上げする「SQLテスト制度」を導入している話 - AppBrew Tech Blog
    • 結局、Go言語をやめる理由はなかった件 - Qiita

      この記事は Go 2 Advent Calendar 14日目の穴埋め記事です。 はじめに @okdyy75 さんによる Go 5 Advent Calendar 14日目の の記事「だから僕はGo言語を辞めた」 が「ベンチマークっていうのはこうやるんだよ」というのを説明するために反面教師的な意味で良い教材だと思ったので、反証記事を書きたいと思います。 ベンチマークを取りながらコードを改善して、最終的にGoは遅くないからやめる必要はないということ、そして、なぜ遅いという結論になってしまったのかを掘り下げていきたいと思います。 下準備 幸いなことに、ベンチマークのソースコードがGitHubにある ので、こちらを実行しながら問題点を改善していきましょう。 ちゃんとコードが上がっているのは素晴らしいですね! 一方で、元記事には測定環境が明記されていませんでしたので、同じ環境で測定することはできま

        結局、Go言語をやめる理由はなかった件 - Qiita
      • MySQL データベースの負荷対策/パフォーマンスチューニング備忘録 インデックスの基礎〜実践 - Qiita

        TL;DR この記事に書いた事 二分探索木のお話(前提知識) MySQLのInnoDBで利用されているB+木インデックスの構造と特性 (前提知識) MySQLのClusteredIndex,SecondaryIndexについて(前提知識) カーディナリティについて(前提知識) 実際の負荷対策 検出編 スロークエリ 検出編 その他のクエリ割り出しいろいろ クエリ・インデックスの最適化 explainの使い方と詳細 ケース別実践 単純にインデックスがあたっていないケース カーディナリティが低いインデックスが使われているケース 部分的にしかインデックス/複合インデックスがあたっていないケース 複合インデックスの順序誤りでインデックスが適用できていないケース 複合インデックスの最初がrange検索のケース ソートにインデックスが適用できていないケース ソートにインデックスが適用できていないケース(

          MySQL データベースの負荷対策/パフォーマンスチューニング備忘録 インデックスの基礎〜実践 - Qiita
        • 駆け出しエンジニアの皆さんに知ってほしい脆弱性のこと。

          セキュリティは難しいです。 ですが、プログラミング初学者の皆さんは必要以上に萎縮せず、どんどんアプリケーションを作り、公開することにチャレンジして欲しいと私は思っています。 一方、事実として、脆弱なアプリケーションが公開されている(サーバ上でアクセス可能な状態になっている)だけで、全く無関係な第三者が被害を被る可能性があることは知っておく必要があります。 それはWordPressを使った単なるWebサイトであったとしても同じです。 また、あなたのアプリケーションが破壊されて困らないものであったり、 個人情報を保持していないものであったとしても、です。 だから、知らなかった、では済まされないこともあります。 この記事では、PHPのソースを例に、 特にプログラミング初学者が生み出しやすいアプリケーションの脆弱性について、 具体的なコードを挙げながら解説します。 なお、本記事のサンプルコードはも

            駆け出しエンジニアの皆さんに知ってほしい脆弱性のこと。
          • SQL学習オンラインサービス「Start-SQL」をリリースしました - GoTheDistance

            こんな感じで、ブラウザでSQLを書いて環境構築一切不要でSQLを学べるというWebサービスです。 今北産業 SQL言語のみをサポートしています。 環境構築一切不要で、無料でお試し出来ます。 コンテンツには無料と有料の2つがあり、有料版は”買い切り”で、5000円です。全てのコンテンツがお楽しみ頂けます。 圧倒的にアカウントを買うニーズが強かった 2019年8月頃に「研修サービスのプラットフォームとして」告知をしたのですが、結論から言うと「講師や研修は別にいらん、アカウントだけ売ってくれ」が個人 / 法人共に、圧倒的に多かったため、会員登録/ログイン/マイページ/コンテンツ購入/パスワードリマインダなどの機能を別途付与して、Webサービスとしてリリースしました。 買い切りにした理由 コンテンツを定期的に追加する予定が全く無いためです。月額制にするならほっといてもコンテンツが増えていかねばなり

              SQL学習オンラインサービス「Start-SQL」をリリースしました - GoTheDistance
            • すべてのエディタでSQLの自動補完をするためにSQL Language Server(sqls)を作った - Qiita

              sqlsとは sqlsとは、いま私が開発中のSQL用Language Serverです。SQLをエディタで編集するときの支援機能を実装したサーバとなっており、主な特徴は以下です。 Language ServerなのでLSクライアントが存在するエディタであればどんなエディタでも利用可能 SQL編集支援機能 自動補完(テーブル名、カラム名など) 定義参照 SQL実行 複数のRDSMSに対応 MySQL PostgreSQL SQLite3 Language Serverとは Language Server(あるいはLanguage Server Protocol)とは、プログラム言語の開発支援機能をエディタに提供するサーバ、およびその通信内容を規定したプロトコルです。ただしサーバといってもほとんどの場合ローカル内にホスティングしてローカルのエディタと通信をします。 ここでは主題ではないので詳し

                すべてのエディタでSQLの自動補完をするためにSQL Language Server(sqls)を作った - Qiita
              • Bulk insertでも20時間以上かかっていたMySQLへのインサート処理を1時間以内にする - エムスリーテックブログ

                この記事はエムスリー Advent Calendar 2022の30日目の記事です。 前日は id:kijuky による チームメンバーのGoogleカレンダーの休暇予定一覧をスプレッドシート+GASで作った でした。 AI・機械学習チームの北川(@kitagry)です。 今回はMySQLへのインサートを20倍以上高速化した話について書きます。 仕事をちゃんとしてるか見張る猫 TL; DR はじめに 今回のテーブル バイナリログを無効化する 追試 LOAD DATA INFILE 追試 テーブルの正規化 インデックスを一時的に剥がす まとめ We are hiring!! TL; DR バイナリログをオフにする LOAD DATA INFILEを使う インデックスを一時的に消す はじめに AI・機械学習チームではサイトトップからアプリに至るまで多くの推薦システムがあります。 そこでは推薦ロ

                  Bulk insertでも20時間以上かかっていたMySQLへのインサート処理を1時間以内にする - エムスリーテックブログ
                • SQLの達人への道: MySQLでの高速・効率的クエリ作成術 - Qiita

                  データベースとテーブルの作成 テスト用のデータベースtestdbを作成し、パフォーマンスチューニングを検証するためのcompanyおよびpersonテーブルを定義します。 CREATE DATABASE testdb; USE testdb; CREATE TABLE company ( company_id INT AUTO_INCREMENT PRIMARY KEY, company_name VARCHAR(255) NOT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); CREATE TABLE person ( person_id INT AUTO_INCREMENT PRIMARY KEY, company_id INT, person_name VARCHAR(255) NOT NULL, email VARCH

                    SQLの達人への道: MySQLでの高速・効率的クエリ作成術 - Qiita
                  • 「日報くん」「注文くん」なぜ社内ツールは「○○くん」という名前をつけられがちなのか。その謎を解明するため、我々調査隊はアマゾンの奥地へと向かった――。

                    Takuto Wada @t_wada なぜ社内ツールは「○○くん」という名前をつけられがちなのか。その謎を解明するため、我々調査隊はアマゾンの奥地へと向かった――。 例: 「日報くん」 「注文くん」 「まもるくん」(←機密書類シュレッダー) 「監視君」「通報君」(お巡りさんのアイコンだった) 2020-11-17 15:12:26 Takuto Wada @t_wada プログラマ。テスト駆動開発実践者。power-assert-js 作者。『テスト駆動開発』を翻訳、『プログラマが知るべき97のこと』『SQLアンチパターン』を監訳/監修、『事業をエンジニアリングする技術者たち』を編纂しました。 github.com/twada

                      「日報くん」「注文くん」なぜ社内ツールは「○○くん」という名前をつけられがちなのか。その謎を解明するため、我々調査隊はアマゾンの奥地へと向かった――。
                    • MySQLパフォーマンスチューニングTIPS

                      2019年7月10日に開催された「WEBエンジニア MeetUp@札幌 #6 MySQL Special」での発表資料です。 発表時の資料に少し説明を加筆・修正してから公開しています。 ※追加で以下の更新をしました。(2019年7月19日) - MTSを効率化するための設定に関して、WRITESET方式による並列化の説明を追記(13~16ページを追記)

                        MySQLパフォーマンスチューニングTIPS
                      • 超入門!テーブル設計をデータモデリングから考えよう

                        基本から学ぶ テーブル設計 超入門! 〜データモデリングとテーブル設計の基本を学ぼう〜 https://modeling-how-to-learn.connpass.com/event/242944/ にてお話した際のプレゼン資料です。 入門者に向けて、テーブルを設計する上でモデリングすると良いよという話をしました。(熟練者は、そうだよねーっておさらいするか、そこは別の考え方があるんじゃないなどを呟いて貰えればといった内容です) モデリングして設計する際に、色々なモデルがあります。その中で、データモデルは静的な要素が強いモデルなので、モデリング全般を考えた際に、入門者にとって捉えやすいのではと考えています。 テーブルを設計する上で、データモデリングをしてデータモデルを作ることで、より良いテーブル構造を考えやすくなります。 #テーブル設計 #モデリング #データモデル #RDRA #概念モデ

                          超入門!テーブル設計をデータモデリングから考えよう
                        • 100秒でMySQLのローカル環境をDockerで作って、データも自動で入れる。最強のSQL練習環境構築法

                          【2022/2/26 追記】 主にはてブコメントで様々なご指摘を頂いたので、タイトルの修正&内容を一部追記しました。分かりにくいタイトルを付けてしまい申し訳ございません。ご指摘ありがとうございます。 もともと本記事は自分用のメモを兼ねて駆け出しエンジニアの人が数人参考にしてくれたらいいかな、程度の気持ちで書いたものでした。 現在はてなブックマークのテクノロジーカテゴリーで 1 位になっており、予想の 1000 倍以上の人に見ていただける記事になってしまいました。 今後も精進します、ありがとうございます! 特に理由もなくローカルに MySQL を入れて遊びたくなる気持ちって定期的に湧きますよね。 私は湧きます、半年に 1 回ぐらい。 業務ではフロントを触ることが多く、DB はそれほど触りません。 そのため久々に MySQL をローカルで立ち上げようとするといつも手順を忘れてしまっていて、なん

                            100秒でMySQLのローカル環境をDockerで作って、データも自動で入れる。最強のSQL練習環境構築法
                          • Gormが本番テーブルの数億件のデータを消そうとした話 - keroxpのScrapbox

                            MySQLの場合、--safe-updatesオプションを利用することでこういった不慮のUPDATE/DELETEを防げるようです

                              Gormが本番テーブルの数億件のデータを消そうとした話 - keroxpのScrapbox
                            • Kubernetes-nativeなアーキテクチャ導入の手引き 先進的なクラウド環境を最強テストベッドで体験|ハイクラス転職・求人情報サイト AMBI(アンビ)

                              Kubernetes-nativeなアーキテクチャ導入の手引き 先進的なクラウド環境を最強テストベッドで体験 Kubernetes-nativeなエコシステムを実現する最強テストベッド環境です。さまざまなミドルウェアを運用したマイクロサービスをフルgRPCなサービス間通信で実現するだけでなく、CI/CDと開発環境も用意しています。 こんにちは。株式会社サイバーエージェントのAI事業本部でインフラエンジニアをしている青山真也(@amsy810)と漆田瑞樹(@zuiurs)です。今回は、Kubernetesが好きな2人が考える最強のKubernetes-nativeなお試し環境を構築してみました。記事公開時点で、総コミット数が900に迫るリポジトリになっています。 現在、Kubernetesとそれを取り巻くエコシステムは急速に発達しており、便利なツールやミドルウェアが日々生まれています。これは

                                Kubernetes-nativeなアーキテクチャ導入の手引き 先進的なクラウド環境を最強テストベッドで体験|ハイクラス転職・求人情報サイト AMBI(アンビ)
                              • パスワードがハッシュ値で保存されているサイトのSQLインジェクションによる認証回避の練習問題 - Qiita

                                SQLインジェクションによる認証回避 SQLインジェクションによる影響として、情報が漏洩するとか、データが勝手に更新されてしまうなどとともに、認証回避の例がよく紹介されます(私の本でも取り上げています)。 典型的な例は下記のとおりです。 // $id と $password は外部からの入力 $sql = "SELECT * FROM users WHERE id='$id' AND password='$password'";

                                  パスワードがハッシュ値で保存されているサイトのSQLインジェクションによる認証回避の練習問題 - Qiita
                                • WEB+DB PRESSと私

                                  「大江戸Ruby会議10」での発表資料です。 https://regional.rubykaigi.org/oedo10/

                                    WEB+DB PRESSと私
                                  • 【レポート】AWS における安全な Web アプリケーションの作り方 #AWS-55 #AWSSummit | DevelopersIO

                                    この記事では、5月12日に行われた AWS Summit Online 2021 のオンラインセッション『AWS における安全な Web アプリケーションの作り方(AWS-55)』の模様をレポートします。 セッション概要 情報処理推進機構(IPA) の公開している「安全なウェブサイトの作り方」をはじめとしたセキュリティを考慮した安全なウェブアプリケーションの設計ガイドラインがいくつか知られています。本セッションでは、アプリケーション開発者向けにガイドラインに則ったアプリケーションを AWS 上でどのように実装するのかを AWS プラットフォームレイヤーとアプリケーションレイヤーのそれぞれの観点から項目ごとに解説し、アプリケーション導入前、または導入後のセキュリティ対策の指標となることを目指します。 登壇者 アマゾン ウェブ サービス ジャパン株式会社 技術統括本部 ソリューションアーキテク

                                      【レポート】AWS における安全な Web アプリケーションの作り方 #AWS-55 #AWSSummit | DevelopersIO
                                    • MySQLのインデックスですが、B-treeではなくB+treeを使用するのはどうしてなのでしょうか? | mond

                                      MySQLのインデックスですが、B-treeではなくB+treeを使用するのはどうしてなのでしょうか? 端的に言うと性能が良いからです。 これを理解するにはバッファプールへの理解が必要です。ディスク指向のデータベースの上では有限のメモリを最大限活用することでメモリに入り切らない巨大なデータ群に対して良好な参照性能を出す必要があります。バッファプールとはディスク上のデータの羅列を固定サイズのページ(InnoDBの場合16KB)の羅列であるとして読み書きに必要な分だけをメモリに移し取り複数の書き込みをできる限りメモリ内で受け止めて後でまとめてディスクに書き戻すという、ライトバック型のキャッシュのような機構です。 この中においてバッファプールは有限のサイズしか無いので適宜プール内のデータを書き戻して入れ替えながら上手くやっていく必要があります。 さてB+treeとB-treeの最大の違いは木のリ

                                        MySQLのインデックスですが、B-treeではなくB+treeを使用するのはどうしてなのでしょうか? | mond
                                      • MySQLで発生し得る思わぬデッドロックと対応方法

                                        はじめに この記事は実際の業務で発生した MySQL のデッドロックとそのいくつかの回避方法や対応方法を(テーマは変えて)手元で実行できるコードを用いて解説する記事です。具体的には「トランザクション張っておけば大丈夫」と思ってませんか? バグの温床になる、よくある実装パターンの記事で紹介されている「1on1 チャットサービス」で紹介されているデッドロックとデータベースレイヤでは同じ状況だったのですが、記事で紹介されている方法とは別の方法でデッドロックを回避する必要があったため、同じ状況に遭遇した人の助けになればという思いで記事を書きました。また、こちらの記事が無ければ私自身も現象を理解するのにもっと苦労したと思うので、この場を借りてお礼申し上げます! 出金サービス履歴登録サービスを例に考える コードと説明が https://github.com/shuntagami/withdrawal_

                                          MySQLで発生し得る思わぬデッドロックと対応方法
                                        • SQL Chat

                                          Chat-based SQL Client and Editor for the next decade

                                          • プログラミング言語へのMicrosoftの影響力がヤバい - きしだのHatena

                                            Tiobe indexを眺めながら、C#とVBが入っていてMicrosoftは強いなーと思ったのだけど、よくみると他の言語もMicrosoftの影響力すごいのではとなったので調べてみた。 https://www.tiobe.com/tiobe-index/ Python 例えば1位のPythonにMicrosoftはかなり力をいれている。象徴的なのが、Pythonのオリジナル開発者の入社 C/C++ Windows上でのC/C++コンパイラではMS C/C++が圧倒的シェアであるし、C++の標準化団体にMicrosoftはGold Memberとして参加している。 https://isocpp.org/about Java 4位のJavaに関してもかなりリソースは割いているわけですが、全体の影響度としてそこまで大きくはないですね。 昨日のブログにも書いたようにOpenJDKビルドを出してい

                                              プログラミング言語へのMicrosoftの影響力がヤバい - きしだのHatena
                                            • Home | DBML

                                              Intro​ DBML (Database Markup Language) is an open-source DSL language designed to define and document database schemas and structures. It is designed to be simple, consistent and highly-readable. It also comes with command-line tool and open-source module to help you convert between DBML and SQL. Table users { id integer username varchar role varchar created_at timestamp } Table posts { id integer

                                                Home | DBML
                                              • 【衝撃】AWSのRDSがデータを失わないBlue/Greenデプロイに対応しました #reinvent | DevelopersIO

                                                「最近は、データベースもB/Gデプロイできるらしいよ?」 「そりゃそうやろ。B/Gデプロイなんて、最近当たり前……… へ?DBが?無理でしょ?ほぇ?どういうこと?」 最初アップデートのタイトルを見たときの、ハマコーの率直な感想です。 Blue/Greenデプロイは、現行バージョンのトラフィックを活かしたまま新バージョンを動作確認し、問題なければ新バージョンをリリースするという、最近の安全なデプロイの概念において無くてはならないものです。 同時に新旧バージョンを稼働させるため、基本的にはステートレスなアプリケーション・サーバーにおいて利用するものという固定概念があったのですが、それをデータベースに対して既存のAWSの技術を組み合わせつつAWSらしいマネージドな仕組みで解決しようという、意欲的なリリースです。制約事項もそれなりにあるので、皆さんの運用ワークロードに当てはまるかは、事前の検証が必

                                                  【衝撃】AWSのRDSがデータを失わないBlue/Greenデプロイに対応しました #reinvent | DevelopersIO
                                                • リーダブルSQL[より良いSQLを書くためのシンプルで実践的なテクニック] - Qiita

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

                                                    リーダブルSQL[より良いSQLを書くためのシンプルで実践的なテクニック] - Qiita
                                                  • SOLID原則完全に理解した!になるための本

                                                    SOLID原則を学び、完全に理解した!になるための本

                                                      SOLID原則完全に理解した!になるための本
                                                    • 利用者は数十億人!? SQLiteはどこが凄いデータベース管理システムなのか調べてみた - Qiita

                                                      はじめに SQLite は世界で一番使われている だから世界で一番凄いものに決まってるだろ SQLite は世界で最も使われている RDBMS です。名前に反して(?)おもちゃの RDBMS ではありません。元ネタと同じで 一番普及しているからと言って必ずしも一番凄いものであるとは限りませんが、普及しているのであればそこには何かしらの理由があるはずです。その理由を調べないことには、凄いか凄くないかの結論は出せないので SQLite のなにがそんなに凄いのかを調査しました。 2022/04/01 続編記事↓を書きました。 注意 この記事は「なぜシェルスクリプトで高度なデータ管理にSQLiteを使うべきなのか? ~ UNIX/POSIXコマンドの欠点をSQLで解決する」の補足記事して書いたものです。ところどころ不自然にシェルスクリプトや Unix コマンドの話が登場するのはそのためです。基本的

                                                        利用者は数十億人!? SQLiteはどこが凄いデータベース管理システムなのか調べてみた - Qiita
                                                      • 転職した - tmtms のメモ

                                                        これは「Rubyist近況[1] Advent Calendar 2021」の6日目の記事です。 adventar.org 自称 Rubyist なので近況を書きます。 2021年10月末で30年ほど勤めた富士通グループを退職しました。 11月からは SmartHR という会社で働いてます。 3年ほど Ruby は仕事ではあんまり使ってなかったのですが、また Ruby を仕事で使うようになりました。 会社から配布された PC は Core i7 メモリ32GB の MacBook Pro なんでかなり人権がある感じなんですが、人生初 Mac で1ヶ月位経ってもまだ慣れなくて、VM で Ubuntu Desktop 入れようか迷ってます。 近況は以上です。以下は富士通グループの入社〜退職までのメモ。長いので読まなくていいです。 1991〜 設立7年目の今はなき「富士通長野システムエンジニアリ

                                                          転職した - tmtms のメモ
                                                        • 型キャストの場所のせいで、秒で終わっていたクエリに1時間超かかるようになってしまった話 - SmartHR Tech Blog

                                                          SmartHRで届出書類という機能を担当しているプロダクトエンジニアのsato-sと申します。 今日は、以前私が調査にとても苦労したパフォーマンス上の問題の話を紹介したいと思います。 TL;DR PostgreSQLのアップグレードを実施した アップグレード後、今までは問題のなかった特定のクエリの実行に1時間超かかり、DBのCPU使用率がピッタリ100%に張り付くようになった 色々調査した結果、PostgreSQL上の型キャストの場所のせいで、良くないクエリプランが選択されることが原因だった 型キャストの場所には気をつけよう PostgreSQLのアップグレードと挫折 SmartHRでは基本的にWebアプリケーションのデータベースとしてGoogle CloudのCloudSQLによって提供されるPostgreSQLを利用しています。 私の担当している届出書類機能では、利用中のPostgre

                                                            型キャストの場所のせいで、秒で終わっていたクエリに1時間超かかるようになってしまった話 - SmartHR Tech Blog
                                                          • メンテのいらないソフトウェア - 誰かの役に立てばいいブログ

                                                            ソフトウェアエンジニアとして働き始めて 20 年以上になります。 元々ソフトウェアでいろいろ作りたくて就いた職業なので、結構な数のプロダクトを開発してきました。 私がメインで開発したもので OSS として出ているものでは、 yrmcds: memcached クローンで、レプリケーション機能などを持つ usocksd: SOCKS4/5 サーバー & ライブラリ transocks: アプリのネットワーク通信を透過的に SOCKS サーバーにプロキシする透過プロキシ coil v2: Kubernetes の CNI ネットワークドライバ moco: MySQL を自動運用する Kubernetes オペレーター accurate: Kubernetes 上で namespace ベースのソフトマルチテナンシーを実現するためのソフトウェア などがあります。これらのソフトウェアの多くは、現役

                                                              メンテのいらないソフトウェア - 誰かの役に立てばいいブログ
                                                            • DB設計の共有で疲弊してない?dbdocsのすゝめ

                                                              DB設計の管理や作成に疲弊してません?こんにちは。ukmshiです。今日はDB設計の共有と管理に便利なツール、dbdocsについてお話しします。dbdocsを使えば、設計の可視化や共有がめちゃくちゃ簡単になるんです。今回は、その魅力と利点、そして実際の使い方について詳しく説明します。 dbdocsとは? dbdocsは、コードベース(DBML)でDB設計を管理し、URLで共有することが可能なツールです。データベースのテーブル構造や関係性を可視化し、それを他のチームメンバーやステークホルダーと手軽に共有することができます。 DBMLについてはこちらを参考に dbdocsの利点 dbdocsの利点について詳しく見ていきましょう。 無料 まず最初に、dbdocsは基本無料です。コストを気にせずに利用できるので、チームの誰もがアクセス可能です。 コードベースで管理 dbdocsはコードベースでDB

                                                                DB設計の共有で疲弊してない?dbdocsのすゝめ
                                                              • 業務でどれだけSQL力がつくのか ~SQLアンチパターンを用いて確認~ 前編

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

                                                                  業務でどれだけSQL力がつくのか ~SQLアンチパターンを用いて確認~ 前編
                                                                • PostgreSQL 20年史|コミッター石井達夫が振り返る変遷と進化の歴史|ハイクラス転職・求人情報サイト AMBI(アンビ)

                                                                  PostgreSQL 20年史|コミッター石井達夫が振り返る変遷と進化の歴史 世界中で使用されるRDBMSであるPostgreSQLの長い歴史には、どのような変遷があったのでしょうか。長く、PostgreSQLに関わり続ける石井達夫さんに、同ソフトウェアの進化歴史の中にあるキーワードをもとに振り返ってもらいました。 オープンソースのRDBMSであるPostgreSQLは、いまや世界中の人々が利用するソフトウェアとなりました。その歴史は長く、ルーツは30年以上も前にさかのぼります。 PostgreSQLの前身は、カリフォルニア大学バークレー校で1986年に始まったPOSTGRESプロジェクトです。その後、1994年にAndrew Yu氏とJolly Chen氏がPOSTGRESにSQL言語インタプリタを追加し、翌年にPostgres95をリリース。1996年にようやくPostgreSQLとい

                                                                    PostgreSQL 20年史|コミッター石井達夫が振り返る変遷と進化の歴史|ハイクラス転職・求人情報サイト AMBI(アンビ)
                                                                  • 個人開発激安 GCP (にしたい)

                                                                    とりあえず GCP で軽くサーバーとデータベース立ててみたいっつって脳死で使ってたら1日で 1800 円いって焦った。慌ててチャットサポートに聞いたらいろいろ教えてくれて安心したけど、もうちょっと調べてみためも。自分が使いそうなものしか書いてないよ。 Google Cloud Calculator めっちゃ便利。 App Engine TLDR これを app.yaml に書いておけば一番安上がり env Standard environment と Flexible environment があって、無料枠があるのは Standard だけ。他にも Flexible だと想定外の請求が来たりするらしい。なので Standard を指定しておく instance_class サーバのインスタンスの種類。F1 が一番しょぼいスペックのサーバで F1, F2 とかの "F" 系なら一日 28

                                                                      個人開発激安 GCP (にしたい)
                                                                    • Dockerコンテナのpostgresqlがマルウェアに感染した件について - Qiita

                                                                      背景 Dockerコンテナを立てたらマルウェアに感染したのでサイバーセキュリティの啓蒙を兼ねてメモ書きしてみました。 注意事項 マルウェアに感染した被害の対処方法を記述しています。マルウェア自体の機能や解析の解説ではなく一般利用者ユーザーの視点から感染経路と対応方法についての記述になります。 マルウェア感染状況 症状 Dockerコンテナを稼働させたホストのロードアベレージ(CPU負荷)が常時4を超える状況になっていました。つまり400%でホストがフル回転してた訳ですな。 例えるならエヴァンゲリオン初号機が暴走してマヤちゃんがコンソール画面に向かって叫んでいるところです(違) こうなるとクラウドサービスのAWSとかだと英文で警告アラートが飛んで来ますし毎日課金されで膨大な利用料金請求が来ることになります。恐ろしい!! 状況の調査 CPUの利用状況やメモリの使用量などを調査するツール類があり

                                                                        Dockerコンテナのpostgresqlがマルウェアに感染した件について - Qiita
                                                                      • 外部キー制約は何も考えずに適用するとよくない - かとじゅんの技術日誌

                                                                        このブログが話題になってますね。制約を付けること自体はよいことだけど、無目的に適用すると害も生じると思います。 無目的という言い方はおかしいな…。外部キー制約をどのように使えばいいのか、逆にどんなときに使うとまずいのかを考えてみたいと思います。 tech.tabechoku.com 例えば、これ。外部キー制約はできるだけ付けるとか、何も考えずに付けるとよくないと思います。 外部キー制約は、可能な限りつけるようにしています。 DBが別れている場合、外部キーはもちろん貼れないのですが、そうでない場合はとにかく何も考えず貼っています。データベース設計の際に気をつけていること - 食べチョク開発者ブログ テーブル設計をシミュレーションする いいたいことの結論はこれ。以上終了なのですが、もう少しわかりやすく書いてみよう。 何も考えずに外部キーを貼るのは良くないな。トランザクション境界の外で結果整合性

                                                                          外部キー制約は何も考えずに適用するとよくない - かとじゅんの技術日誌
                                                                        • 定期的に知識をリフレッシュする - Magnolia Tech

                                                                          IT系に身を置いていると、つい新しい知識ばかりを追いかけがちになるけど、CS的な基礎知識や、Linuxのコマンドとかの(もちろんソラでコマンド10個のオプションを言える必要は、無い)も当然大事なわけです。というか、土台となる知識が無いと、新しい知識がちゃんと身につきません。 だけど、普段使わない、手を動かさない分野のスキルはどんどん忘れていきます。歳をとると加速度的に忘れていきます。 そしてヤバいのは、分かっていることと、分かっていないこと、できること、できないことの区別がつかなくなることです。 人は分かる範囲でしか物事を理解しないので、「分かっていないことを知る」という行為を行なって「分かる範囲」を広げる、または最低でも維持する営みを続けていかないとどんどん判断する時に必要な材料が狭まっていきます。 Java 1.5の知識で、Java17時代の判断はできないですよね、10倍以上違うんだか

                                                                            定期的に知識をリフレッシュする - Magnolia Tech
                                                                          • 「分析SQLスタイルガイド」をかなり真面目に考えた - Qiita

                                                                            目次 なぜSQLのスタイルガイドが重要なのか この記事の目的 この記事の対象者 分析SQLスタイルガイドの指針 基本ルール 命名規則 インデントルール 別名ルール joinルール クエリ分割ルール ⭐ コメント欄で「いや私はこう思う!」という意見をたくさんいただきました!ぜひそちらも御覧ください!(決して揶揄ではないです) なぜSQLのスタイルガイドが重要なのか SQLはプログラミング未経験者でもとっつきやすい言語と言われ、エンジニアや分析を本業としていない人でもSQLを使う機会が増えてきていると思います。 そんなSQLですが、こちらのブログでも指摘されている通り、一般的なスタイルガイドが定まっていません。スタイルガイドとはコードの書き方マナーようなもので、どこで改行するか、空白はいくつ入れるか、大文字を使うかなどの諸々を指します。 もしスタイルガイドが無いとこんな事が起こります コードに

                                                                              「分析SQLスタイルガイド」をかなり真面目に考えた - Qiita
                                                                            • SQLわかんねーーーーーーーー!!!!!!

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

                                                                                SQLわかんねーーーーーーーー!!!!!!
                                                                              • 現代のWebアプリケーションエンジニアとして最低限の常識TODO - shimobayashiパブリック

                                                                                古代のWebアプリケーションエンジニアなので、現代との差分を身に付けていくぞ! 個人的なスキルセットの差分を埋めるためのものなので、誰にでもマッチするものではありません。 習うより慣れろの精神で、読んで終わりじゃなくて手を動かします。 コンテナ化 x done.icon The Twelve-Factor App (日本語訳) done.icon What is Amazon Elastic Container Service? - Amazon Elastic Container Service 機械翻訳がひどかったので英語版をGoogle翻訳で読むほうがマシそう メニュー1階層目だけ全部読んで、気になるところがあれば深堀りする ↑で物足りなかったらKubernetes完全ガイド 第2版 impress top gearシリーズ | 青山真也 | 工学 | Kindleストア | Ama

                                                                                  現代のWebアプリケーションエンジニアとして最低限の常識TODO - shimobayashiパブリック
                                                                                • 「雑用扱いで名前もない」 データ分析の土台を支える“SQLを叩く人”の重要性を問い直す

                                                                                  「雑用扱いで名前もない」 データ分析の土台を支える“SQLを叩く人”の重要性を問い直す:これからのAIの話をしよう(データ整備人編)(1/3 ページ) 多くの企業がデータの分析・活用に取り組んでいますが、その中で抜け落ちがちなのが、データ整備の視点です。データベースからデータを抽出・集計して分析者に渡す作業は地味に見えますが、データ分析の土台を支える極めて重要な仕事です。 この役割は、戦争でいうところの「兵站」(へいたん)に当たるほど重要なのではないか――データ分析に関する情報発信を続けるしんゆうさんが、自身のブログでこう問いかけた所、予想以上の反響があったといいます。 ※兵站:戦場で、前線の部隊のために軍需品や食料などの供給・補充を行う機関 しんゆうさんは、データを抽出・集計して分析者に渡す人を「データ整備人」「データアーキテクト」と呼び、データ分析に関する勉強会を開催するなどの啓蒙活動

                                                                                    「雑用扱いで名前もない」 データ分析の土台を支える“SQLを叩く人”の重要性を問い直す