タグ

データベースに関するmoonbloggerのブックマーク (24)

  • 全俳句データベースVer.2

    ぜんぶの俳句のデータベースです

    全俳句データベースVer.2
  • 法令データベース

    研究のための歴史情報 法令データベース データベースについて 検索 全文 法令名のみ 法律 勅令 全て選択 全て解除 詳細検索 公布日 日付指定 範囲指定 年 月 日 〜 年 月 日 法令番号 年 第 号 検索 リセット

  • SQLite を再実装する時に役にたつドキュメント - kawasin73のブログ

    困った時はドキュメント、どうもかわしんです。最近、諸事情で SQLite のドキュメントを読んでいます。 前回の記事 で紹介した通り SQLiteRust で再実装しています。おかげさまで 300 を超える Github Star もいただき嬉しいです。 github.com SQLite は全ての仕様が ドキュメント にまとめられているので、そのドキュメントと家の実装を読み比べながら実装しています。 SQLite を再実装する上で特に以下のドキュメントは役にたちます。これらだけで最小限の SQLite の実装は作れると思います。 Overview Documents > About SQLite いかに SQLite がすごいかを自慢しているドキュメント。使おうとしている人には安心を、再実装しようとする人には絶望を与えてくれます。 Programming Interfaces >

    SQLite を再実装する時に役にたつドキュメント - kawasin73のブログ
  • 後輩エンジニアを絶望させるDB設計方法4選 - Qiita

    エンジニアの格闘 エンジニアのみなさんはかつてひどいコードや設計と直面し、それと格闘したことでレベルアップした経験はあるでしょう。 つまり、先輩エンジニアたるものクソコードやクソ設計を残して、後輩エンジニアのレベルアップに寄与するのは義務だと言っても過言ではありません(?) 今回はDB設計に焦点をあてて、そのように絶望させる設計の残し方を記しておきます。 初めての投稿なのでレベル的にはかなり初歩になっています。 ↑きっと彼も立派なエンジニアになった時感謝してくれるでしょう 1) 必要な正規化を行わない エンジニアという不思議な不思議な生き物は処理の共通化等なにかと処理をまとめたがる習性があります。 以下のように著者テーブルと書籍テーブルがあるとします。 書籍 書籍ID 書籍名 著者ID

    後輩エンジニアを絶望させるDB設計方法4選 - Qiita
  • とにかく日本の住所のヤバさをもっと知るべきだと思います|inuro

    「住所の揺らぎ程度のことにAIを使いたいだとかデジタル音痴」だの「住所の正規化なんてExcelで2時間あれば作れそう」だの、たいへんフットワークの軽やかな言説の数々に、位置情報界隈のみならず住所の正規化や名寄せに少しでも関わったことのあるエンジニアが総立ちでマサカリを投げていたのも記憶に新しい今日この頃ですが(2023年6月6日)、この手の騒動は周期的に起こってる印象です。 ということはつまり いつまで経っても解消されない、解決が困難な課題である その困難さが界隈以外に共有されていない であるわけで、その都度Twitterにトリビアが投下されてはTLが賑わい華やかではありますが、そろそろ自分の整理としてもどれだけ日の住所システムがカオスで、その計算機的な処理がいかに困難かをメモっておこうかと思いました。 なおこの件については既にQiitaにGeoloniaの宮内さんが鼻血の出そうな良エン

    とにかく日本の住所のヤバさをもっと知るべきだと思います|inuro
  • 【入門】データベース設計まとめ - Qiita

    はじめに 今回はデータベース設計について学び直したので内容をまとめていきます。 自分は2021年に新卒でWeb系の開発会社にフロントエンジニアとして入社し2022年で2年目になります。 実務ではNext.js×TypeScriptを利用したフロントの開発をメインで行っています。 直近の開発案件でRailsを使ったサーバーサイドの開発を担当することになり、DB設計を触ったのですが体系的な理解をしていなかったので苦戦をしました。 実装はできたものの、データベース設計を「なんとなくの理解」で終わらせないように、体系的に学び直しました。 データベース設計の学習に関しては下記の書籍を参考に進めました。 スッキリわかるSQL入門 達人に学ぶDB設計 徹底指南書 対象者 データベース設計について基礎から学びたい人 何となくデータベースの設計をしている人 正規化について学びたい人 データベースとDBMS

    【入門】データベース設計まとめ - Qiita
  • データベース設計におけるNULL - kawasima

    NULL絶対ダメ論や現実的には無理だから上手く付き合っていくしかないんだよ論など見られるが、せっかくCodd博士が上図の分類を提示しておられるので、これを元にもっと詳細化して考えてみよう。

    データベース設計におけるNULL - kawasima
  • 利用者は数十億人!? SQLiteはどこが凄いデータベース管理システムなのか調べてみた - Qiita

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

    利用者は数十億人!? SQLiteはどこが凄いデータベース管理システムなのか調べてみた - Qiita
  • 生活保護裁決データベース

    サイトの趣旨と概要 【2023年5月4日更新】 今回の更新では、下記の3回の公開、更新に加え、2019年10月から2022年3月までに出された全国の認容裁決約290裁決中、意義ある裁決212裁決をアップしました(総計1014裁決)。今回の裁決は都道府県に情報公開請求して収集したもの、総務省の「行政不服審査裁決・答申検索データベース」から収集したもの、また個別に提供していただいたもの等です。 【2021年3月31日更新】 今回の更新では、下記の2017年公開(500裁決)、2019年追加時(107裁決)に加え、2017年10月~2019年9月まで出された全国の認容裁決約250中、意義のある裁決195をアップしました(総計802裁決)。今回の裁決も各都道府県に情報公開請求して収集されたものです。 今回更新された裁決の特徴は、2016年度から施行されている改正行政不服審査法が一定の定着を見せ

  • ゼロから作る時系列データベースエンジン

    軽量な時系列データベースエンジンをスクラッチで開発する機会があったので、どのように実装したのかを必要知識の解説を交えながらまとめていきます。 実装はGo言語によるものですが、記事のほとんどは言語非依存な内容となっています。 モチベーション 筆者は時系列データを扱うツールをいくつか開発しています。その中の一つであるAliは負荷テスト用のcliツールで、メトリクスをクライアント側でリアルタイム描画できるのが特徴です。リクエスト毎にレイテンシーなどの計測結果が際限なく書き込まれてくる中、同時に一定のクエリパフォーマンスが求められます。 これは言ってしまえば、簡易クエリ機能付きのpush型モニタリングシステムを単一ホストで実現するようなものです。 以前までの実装ではヒープ上の可変長配列にデータポイントを追加していくだけだったので、当然ながら時間の経過とともにメモリ使用量が増加していく問題を抱えて

    ゼロから作る時系列データベースエンジン
  • データベースを遅くするための8つの方法

    はじめに Twitterのタイムラインを見ていたらバッチ系のプログラムで逐次コミットをやめて一括コミットにしたら爆速になったというのを見ました。当たり前でしょ、と思ったけど確かに知らなければ分からないよね、と思って主に初心者向けにRDBを扱うときの注意点をまとめてみました。 プログラミングテクニック的なところからテーブル設計くらいの範疇でDBチューニングとかは入ってないです。 自分の経験的にOracleをベースに書いていますが、他のRDBでも特に変わらないレベルの粒度だと思います。 大量の逐次コミットをする バッチアプリケーションでDBにデータをインサートすると言うのはかなり一般的な処理です。しかしデータ量が少ない時はともかく大量のインサートを逐次コミットで処理するとめちゃくちゃ遅くなります。数倍から十数倍遅くなることもあるので、10分程度のバッチが1時間越えに化けることもザラにあるので原

    データベースを遅くするための8つの方法
  • sql.js

    sql.js is an SQL library for javascript containing a version of SQLite compiled for the web.

  • 本当にあったやらかしDB設計シリーズ一覧 - Qiita

    当にあったやらかしDB設計シリーズをまとめてみました SQLアンチパターンで書かれているほど高尚な問題ではなく、もっと初歩的な、でもありがちな問題を取り上げています 初心者を脱出したと思っている人に是非読んでもらい、正しく設計してもらうことを目的としています もしここに載っていないパターンを経験したことのある方がいたら是非教えてください 当にあったやらかしDB設計①【R無しRDB当にあったやらかしDB設計②【囚人番号テーブル】 当にあったやらかしDB設計③【ロジカルクエリー】 当にあったやらかしDB設計④【テストチューニング】 当にあったやらかしDB設計⑤【第三正規化病】 当にあったやらかしDB設計⑥【見えない削除フラグ】 当にあったやらかしDB設計⑦【ステートフルDB当にあったやらかしDB設計⑧【ファンクションDB当にあったやらかしDB設計⑨【文字列日付】

    本当にあったやらかしDB設計シリーズ一覧 - Qiita
  • 【MySQL】 そうだ インデックス、使おう。 - Qiita

    2019.07.24 原則はカーディナリティの高いものから貼っていく を追記しました。 2019.07.24 実際のMySQLはB+tree構造を採用している を追記しました。 はじめに @hk206です。 最近になって初めてインデックスなるものを使い始めました。 これによってレコード検索が爆速になります。MAJIDE。 今まではしょぼい数のレコードのテーブルしか触ったことがありませんでしたが、 数百万、数千万のレコードを色々いじる機会がありまして...... 処理速度やばない?ってふと気になり、インデックスを使用してみました。 インデックスとはなんぞやってところからB-tree構造まで、広ーーーく浅く調べたのでまとめてみました。 知ってるよーって方も復習になればいいかなと。 インデックスとは インデックスは特定のカラムの、あるレコードをすばやく見つけるために使用されるものです。検索が爆速

    【MySQL】 そうだ インデックス、使おう。 - Qiita
  • リレーショナルデータベースの仕組み (1/3) | POSTD

    リレーショナルデータベースが話題に挙がるとき、私は何かが足りないと思わずにはいられません。データベースはあらゆるところで使われており、その種類も、小規模で便利なSQLiteからパワフルなTeradataまで様々です。しかし、それがどういう仕組みで機能しているかを説明したものとなると、その数はごくわずかではないでしょうか。例えば「リレーショナルデータベース 仕組み」などで検索してみてください。ヒット数の少なさを実感できると思います。さらにそれらの記事は短いものがほとんどです。逆に、近年流行している技術(ビッグデータ、NoSQLJavaScriptなど)を検索した場合、それらの機能を詳しく説明した記事はたくさん見つかると思います。 リレーショナルデータベースは、もはや大学の授業や研究論文、専門書などでしか扱われないような古くて退屈な技術なのでしょうか? 私は開発者として、理解していないものを

    リレーショナルデータベースの仕組み (1/3) | POSTD
  • RDBとNoSQLにみるDB近現代史 データベースに破壊的イノベーションは二度起きるか? - エンジニアHub|若手Webエンジニアのキャリアを考える!

    「ユーザー目線」のシステムを目指して RDBが従来の階層型DBに比べて優れていた点はいくつか挙げることができますが、シェアを伸ばすうえで最も大きな影響は、ユーザーが使いやすいデータ構造とインタフェースにこだわったことです。すなわち、「テーブル」と「SQL」の発明です。 RDBでは、すべてのデータを「テーブル」というただ一つのデータ形式によって表現します。テーブルは、見た目が「二次元表」に似ているため*3、Microsoft ExcelGoogle ドキュメントなどのスプレッドシートを使い慣れた人が見ると、データを格納する方法が直観的にイメージしやすいという利点があります。実際、こうした二次元表によるデータ管理は、Excelなどのソフトウェアが登場する前から一般的な方法だったため、RDBが登場した当時の人々にとっても受け入れやすいものでした。 テーブルが画期的だった点は、もう一つあります。

    RDBとNoSQLにみるDB近現代史 データベースに破壊的イノベーションは二度起きるか? - エンジニアHub|若手Webエンジニアのキャリアを考える!
  • PHPでデータベースに接続するときのまとめ - Qiita

    【2021/10/15 追記】 この記事は更新が停止されています。現在では筆者の思想が変化している面もありますので,過去の記事として参考程度にご覧ください。PDO に関しては大きく変わっていない部分が多いとは思いますが, PHP 8.x 以降での動作保証はありません。 あらかじめ読んでおきたい記事 Qiita - 【PHP超入門】クラス~例外処理~PDOの基礎 by @7968 初心者がやりがちなミス 以下のどれかに1つでも当てはまるコードは見直す必要があります.付録にリンクを貼っておきましたので,「該当するかも?」という人はクリックして飛んで読んでください.太字にしてあるものは脆弱性に直結する危険度の高いものです. mysql_query などの非推奨関数を利用している SET NAMES あるいは SET CHARACTER SET などで文字コードを指定している そもそもデータベース

    PHPでデータベースに接続するときのまとめ - Qiita
  • なぜ、SQLは重たくなるのか?──『SQLパフォーマンス詳解』の翻訳者が教える原因と対策 - エンジニアHub|Webエンジニアのキャリアを考える!

    なぜ、SQLは重たくなるのか?──『SQLパフォーマンス詳解』の翻訳者が教える原因と対策 『SQLパフォーマンス詳解』の翻訳者の松浦隼人さんに、8つの「SQLが重たくなる原因とその対策」を聞きました。システムのボトルネックになるような「問題のあるSQL」を回避するノウハウを学びましょう。 データの操作や定義をする言語「SQL」は、どのような領域を担うエンジニアにとっても必修科目です。しかし、その仕様をきちんと理解し、パフォーマンスに優れたSQLを書ける方はそれほど多くありません。問題のあるSQLを書いてしまい、知らぬ間にそれがシステムのボトルネックになってしまう事態はよく発生します。 では、どうすればそうした事態を回避できるのでしょうか? そのノウハウを学ぶため、今回は『SQLパフォーマンス詳解』の翻訳者であり、自身もエンジニアでもある松浦隼人(まつうら・はやと/@dblmkt)さんに8つ

    なぜ、SQLは重たくなるのか?──『SQLパフォーマンス詳解』の翻訳者が教える原因と対策 - エンジニアHub|Webエンジニアのキャリアを考える!
  • オンプレからAWS環境にデータベース移行するのに役立つ情報まとめ | DevelopersIO

    西澤です。先日"AWS環境へのデータ移行"をテーマに社内で営業向け勉強会を行ったのですが、自分が1から資料を作るよりもずっと有用な公開資料がたくさんあったので、それらを使って説明をさせてもらいました。当日メンバーから出た質問等も補足しながら、今回はその情報をこちらにまとめておきたいと思います。 前提 タイトルではデータベース移行としていますが、こちらではRDBの移行のみを対象とします。AWSの各種サービスの詳しい説明は行いません。それらを組み合わせて利用する際に必要となる情報をまとめたいと思います。また、これからご紹介する資料の中には重複する部分も含まれるのですが、私が個人的によくまとまっているというところをピックアップしてご紹介して行こうと思います。 AWSへのデータ転送方法のまとめ まずは、データファイルの転送方法のまとめです。いつの間にかできていた下記ページが非常にわかりやすくまとま

    オンプレからAWS環境にデータベース移行するのに役立つ情報まとめ | DevelopersIO
  • Docker で使えるデータベースの Web GUI まとめ - Qiita

    Dockerdocker-compose を使ってデータベースを立ち上げるとき、 Web の GUI も一緒に立ち上げておくと便利です。 稿では、JX通信社で使っているものの中から、各種データベースに対応する Docker 経由で立ち上げ可能な Web GUI の OSS をご紹介します。 「Web の GUI も一緒に立ち上げると便利」とは 例えば、次のような定義で docker-compose up して、 http://localhost:8080 にアクセスすると、 version: "3" services: postgres: image: postgres environment: POSTGRES_DB: test POSTGRES_USER: test postgres-gui: image: donnex/pgweb command: -s --bind=0.0

    Docker で使えるデータベースの Web GUI まとめ - Qiita