タグ

databaseに関するeigo_sのブックマーク (69)

  • トランザクションの設計と進化

    2016年7月27日 Database Lounge Tokyoで話した内容。 タイトルは名ばかりでリカバリとIn-MemoryDBの話が主体Read less

    トランザクションの設計と進化
  • 初心者がデータベースを扱うときにやってしまいがちな5つのミス | Yakst

    主にPostgreSQLで、アプリケーションがスケールしていくことを考慮に入れずに後で困ることになりがちな設計のポイント。今後巨大にスケールする必要が分かりきっている際には特に注意すべき点。 開発者として仕事を始める時には、参ってしまうほど覚えなくてはいけないことがあります。まず最初に言語自体、それから使っているフレームワーク特有のクセ、さらにその後(あるいはその前)にフロントエンド開発を織り交ぜ、そしてその先でデータをどこに保存するかを決めなくてはなりません。 最初の頃は、素早く身につけるべきことが多すぎて、アプリケーションのデザインにおいてデータベースは後から付け足すものになりがちです(おそらくこれはエンドユーザーエクスペリエンスに影響がないからでしょう)。その結果、データベースが動き始めてから直さなくてはならない数々の悪い習慣が存在しています。ここでは、そのうちのいくつかについて概要

    初心者がデータベースを扱うときにやってしまいがちな5つのミス | Yakst
  • このRDBについて私は驚くべき闇を見つけたがそこを発表するにはネットは怖すぎる

    YAP(achimon)C::Asia Hachioji 2016midの資料です。

    このRDBについて私は驚くべき闇を見つけたがそこを発表するにはネットは怖すぎる
  • db tech showcase Tokyo 2016 | db tech showcase

    スポンサー(順不同) Actian Corporation アマゾンウェブサービスジャパン株式会社 株式会社アシスト Antuit株式会社 Attunity Ltd.(現:クリックテック・ジャパン株式会社) オーリックシステム株式会社(現:オーリック・システムズ・ジャパン株式会社) Bashoジャパン株式会社(現:Bit365) DataRobot,Inc. DataStax, Inc. Dbvisit Software Limited Delphix Software合同会社 エンタープライズDB株式会社 富士通株式会社 日ヒューレット・パッカード株式会社 株式会社 日立製作所 ホートンワークスジャパン株式会社(現:Cloudera株式会社) 日アイ・ビー・エム株式会社 特定非営利活動法人エルピーアイジャパン マップアール・テクノロジーズ株式会社(現:日ヒューレット・パッカード株式

    db tech showcase Tokyo 2016 | db tech showcase
  • db tech showcase Tokyo 2015 | Insight Technology, Inc.

    6月 11日 9 : 30 – 11 : 30 [RDB, NoSQL, Hadoopを整理しよう: RDBエバンジェリスト編] RDBの牙城は揺るがない!! ファシリテーター: 生熊 清司(ITR) パネラー: 原 憲宏(日立製作所), 後藤 宏(日ヒューレット・パッカード), 一志 達也(日IBM), 北川 剛(日マイクロソフト), 大 修嗣(SAPジャパン), 小幡 一郎(インサイトテクノロジー) 6月 12日 9 : 30 – 11 : 30 [RDB, NoSQL, Hadoopを整理しよう: NoSQLエバンジェリスト編] 敵はRDB?? ファシリテーター: 生熊 清司(ITR) パネラー: 上西 康太(Bashoジャパン), 河村 康爾(Couchbase Japan), 原沢 滋(DATASTAX), 土田 正士(日立製作所), 野間 愛一郎(日IBM), 草薙

  • 「SQLパフォーマンス詳解」という本を翻訳しました | b.l0g.jp

    SQLパフォーマンス詳解」というを翻訳しました 2015-04-07 題の通り、「SQLパフォーマンス詳解」(原文タイトルSQL Performance Explained)というを翻訳しました。PDF版と印刷版が上記サイトから購入できます。 (追記 2017年9月から、渋谷のBOOK LAB TOKYOさんでも印刷版を販売していただいています。輸送コストの関係で、サイトから購入するより若干安くなっています) リレーショナルデータベースにおいて、SQLとインデックスがどのように関連し、どのようにすればSQLのパフォーマンスを良くできるのかを解説したです。特定のデータベース製品に焦点を当てたは多数ありますが、このではOracle Database、PostgreSQLMySQLSQL Serverの4つのメジャーなリレーショナルデータベース製品を同時に扱っていて、それぞれのク

  • DBの基礎 - コネクションプーリングについて

    コネクションプーリングについて、わかっていないことが多すぎたので、ちょっとだけ調べたことをメモで残しておきます。 今はまだ触りレベルしかわかっていなのいので、もう少しちゃんと分かるようになりたい! 😀 [スライド] データベースの羅針盤 コネクションプーリングを調べている過程で偶然見付け足資料 『データベース技術の羅針盤』。 とにかくわかりやすくて、俯瞰的にDBの業界を知ることができる資料。すばらしすぎる。 🎂 コネクション・プーリングとは?DBのコネクションを一定数確立しておいて、それを使いまわす手法のこと。 DBへの接続に必要となるオーバーヘッドをカットしてWeb/DBの双方の負荷を下げる。 また、WebとDBの接続を使いまわすことで同時接続数を節約する。 用意した、コネクション数を超えたアクセスは、コネクションに空きがでるまで待たされる。 以下はOracle関連の話ですが、基

    DBの基礎 - コネクションプーリングについて
  • Kazuho's Weblog: さらば、愛しき論理削除。MySQLで大福帳型データベースを実現するツール「daifuku」を作ってみた

    さらば、愛しき論理削除。MySQLで大福帳型データベースを実現するツール「daifuku」を作ってみた 先のエントリ「論理削除はなぜ「筋が悪い」か」で書いたとおり、データベースに対して行われた操作を記録し、必要に応じて参照したり取り消したりしたいという要求は至極妥当なものですが、多くのRDBは、そのために簡単に使える仕組みを提供していません。 daifukuは、RDBに対して加えられた変更をトランザクション単位でRDB内にJSONとして記録するためのストアドやトリガを生成するコマンドです。 % daifuku dbname tbl1 tbl2 > setup.sql のように実行すると、指定されたテーブル(ここではtbl1とtbl2)にセットすべきトリガや、更新ログを記録するためのテーブル「daifuku_log」を生成するCREATE TABLEステートメントなど、必要なSQL文をset

  • 論理削除はなぜ「筋が悪い」か

    「論理削除が云々について - mike-neckのブログ」を読んで。 データベース設計において、「テーブルの書き換えをするな、immutableなマスタと更新ログによって全てを構成しろ」というこの記事の主張はモデリング論として全く正しい。 だが、残念なことに、ディスクやメモリが貴重な資源だった時代の技術であるRDBは、そのようなモデリングに基づいて設計されたデータベースには必ずしも適していない。 第一の問題は、RDBに対してなされる様々な「更新」(トランザクション)は不定形(どのテーブルをどのように修正するかはアプリケーション依存)だという点。不定形な「更新」を時系列にそってRDBに記録していくのは、設計と並走性の点において困難あるいは煩雑なコーディングが必要になる(というか、そのような「イベント」による「変化」はREDOログに書き、その更新された「状態」をテーブルに反映していくというのが

  • DELETE_FLAG を付ける前に確認したいこと。 - Qiita

    DELETE_FLAG という思考停止フラグ DELETE_FLAG という boolean の列が DB 設計でよく話題になります。 論理削除という言葉で上手に論理武装し、スキを見せるとすぐに入れたがる人がおり、 一方でそれにつよく反対する人もいます。 自分の経験としては、広義の論理削除はありえると思いますが、実現方法が DELETE_FLAG だとなった時、それはあまり考えてないでなんとなくパターンとして盛り込んでる場合が多いと感じます。 ただし、設計に唯一の答えは無いので、もしかしたらそれが妥当な設計である場合があるかもしれません。 今回は「DELETE フラグがなぜダメなのか?」などという話をするつもりも、アンチパターンだと断言するつもりもありません。 問題は、仕様をきちんと把握すると、「最適な設計は DELETE_FLAG ではない」という場合が有って、その場合は、その最適な設計

    DELETE_FLAG を付ける前に確認したいこと。 - Qiita
  • DB設計でこだわりたい三つの要素

    http://connpass.com/event/10849/ しょぼちむにデータモデル設計について教えてくださいの会 #syoboben で話した資料です。Read less

    DB設計でこだわりたい三つの要素
  • 書籍出版のお知らせ:理論から学ぶデータベース実践入門 ~リレーショナルモデルによる効率的なSQL

    来る2月27日、データベースの新書籍を発売させて頂くことになった。タイトルは「理論から学ぶデータベース実践入門 ~リレーショナルモデルによる効率的なSQL」となっている。単に「データベース」と書いてあるが、RDBがメインのテーマの書籍である。 多くの人が未だにRDBを使いこなせていないのではないか。RDBの使い方をマスターするには何が必要なのか。それがここ数年私が追ってきたテーマであり、この書籍を出すことになった動機である。 あまりにも酷いDB設計、あまりにもスパゲティなクエリ、あまりにも希薄なデータモデルへの理解。そういった問題はどこから生み出されるのか。そのひとつの結論としてたどり着いたのが、「そもそもRDBの使い方があまり理解されていないのではないか」ということだった。名著、SQLアンチパターンでは「やってはいけないケース」について学ぶことができるが、その反対のテーマ、つまり来どの

    書籍出版のお知らせ:理論から学ぶデータベース実践入門 ~リレーショナルモデルによる効率的なSQL
  • ムック「データベース徹底攻略」 - MySQL/Redis/MongoDB/Redshift

    最近発売された技術評論社のムック「データベース徹底攻略」に寄稿しました。 このは、データベースのためのということで、データベース設計、SQLMySQL、Redis、MongoDB、Redshiftという代表的な要素技術についてのまとめとなっています。各プロダクト(MySQL、Redis、MongoDB、Redshift)については、現場で実際に格的に使われている方々による記事なので大いに参考になると思います。 私は冒頭のまとめ記事を寄稿しました。詳細はぜひお手に取って読んでくださればと思います。ここでも自分が各技術を現時点でどのようにとらえているか、ではいささか書きづらい内容について、最近流行りの言葉でもある「技術的負債」という観点も踏まえて書いておこうと思います。 ・MySQL (RDBMS) 私はMySQLの中の人でもありましたし、これまで至るところで話してきたので省略します

    eigo_s
    eigo_s 2014/03/24
    適材適所だよなー
  • DB設計の難しさ

    今日は徒然なるままにDB設計について思っていることを並べてみようと思う。 ようやくWEB+DB Pressの次号の原稿を書き終えた。2年間の連載であるが、来年はプライベートが忙しくなる予定なので、連載はこれにて終了とさせてもらうつもりである。 「なぜ人はリレーショナルデータベースを使いこなせないのか」 このところ執筆や講演を通じてリレーショナルモデルについて説明する機会を色々頂いているが、それらの活動の根源となっているのが、この素朴な疑問である。その疑問をパワーにしてこれまで活動を行なってきた。 現時点での自分の回答は「データベース設計が難しいから」である。もちろんリレーショナルモデルそのものの難しさというのもあるが、それよりは「適切な使い分けができていない」ということが大きいように思う。言葉を変えると、リレーショナルモデルを適用すべきデータとそうでないデータの判断ができていないからDB

    DB設計の難しさ
  • その選択、ちょっと待った!NoSQLデータベースへ乗り換える前に検討すべき3つのポイント

    最近、どうも安易に「NoSQLにすれば厄介なDB設計から開放される」と考えている人が多いように思えて仕方がない。だが待って欲しい。当にNoSQLと呼ばれるデータベースを使えばアプリケーションの開発・運用の苦しみから逃れられるのだろうか。もちろん「そんなことは無い!!絶対にだ!!」と私は考える。今日はその理由について語ろうと思う。 トランザクション先日、リレーショナルデータベースにおけるDB設計についてセミナーで解説したばかりだが、リレーショナルデータベースにおけるデータの整合性は何もDB設計だけが担保しているわけではない。リレーショナルモデルと同じかそれ以上に欠かせないのがトランザクションだ。 トランザクションがあるおかげで、トランザクション終了後のステータスは「成功」か「失敗」の2つしかないということが保証される。すなわちオール・オア・ナッシングだ。もしトランザクションの途中で何らかの

    その選択、ちょっと待った!NoSQLデータベースへ乗り換える前に検討すべき3つのポイント
  • データベース技術の羅針盤

    PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)NTT DATA Technology & Innovation

    データベース技術の羅針盤
  • データベースアプリケーション開発を炎上させる負のスパイラル

    毎度おなじみ、はてブのホットエントリに「SIをダメにする負のスパイラル」というタイトルのまとめが掲載された。きしだ氏とはかなり視点は違うものの、開発現場の問題点については少し思うところがあるので意見を書いてみようと思う。と言っても、以下の話の内容はデータベースアプリケーションに限定した話であり、またSIerだけに限った話ではないのでその点はご容赦頂きたい。もちろんSIer各位の案件はデータベースは必須なので、エントリで触れる問題点には該当するだろう。 Q.なぜ炎上するのか? A.正しいデータベース設計ができていないから結論から言おう。データベースアプリケーションの開発が炎上するのは正しいデータベース設計ができていないからだ。ここでいう「正しい」とは、論理的に証明できる正しさという意味ではない。「来こうするべき」といった意味で捉えて欲しい。 「炎上」というのは、例えばテストが通らない、バ

    データベースアプリケーション開発を炎上させる負のスパイラル
  • 「SQLアンチパターン」。監訳者 和田卓人氏自身による書籍紹介

    アンチパターンに名前を付けることで、コンテキストを共有できて議論がしやすくなる。2月14日、15日に都内で開催されたイベント「Developers Summit 2013」、通称デブサミにおいて、書籍「SQLアンチパターン」の監訳をした和田卓人氏は書の意義をこう強調しました。 「SQLアンチパターン」は、データベースにおける設計からアプリケーションに関わるレイヤまで、開発者が陥りやすいミスや誤解に名前を付けたうえで原因と解決策を詳しく解説しています。 和田氏が指摘するように、これまでデータベースに関するデータ設計などのミスを指摘したり議論するには、その背景を共有するための面倒な説明が必要でした。SQLアンチパターンの登場は、そうした背景を暗黙のうちに共有する手段を与えてくれることになります。書はデータベース分野の古典になる資格を十分に備えているのではないでしょうか。 書籍の監訳者自身が

    「SQLアンチパターン」。監訳者 和田卓人氏自身による書籍紹介
  • MySQL AB :: MySQL 4.1 リファレンスマニュアル

    概要 これは MySQL リファレンスマニュアルです。 MySQL 8.0 から 8.0.25、および NDB のバージョン 8.0 から 8.0.25-ndb-8.0.25 に基づく NDB Cluster リリースについてそれぞれ説明します。 まだリリースされていない MySQL バージョンの機能のドキュメントが含まれている場合があります。 リリースされたバージョンの詳細は、「MySQL 8.0 リリースノート」を参照してください。 MySQL 8.0 の機能. このマニュアルでは、MySQL 8.0 のエディションによっては含まれていない機能について説明します。このような機能は、ご自身にライセンス付与されている MySQL 8.0 のエディションに含まれていない場合があります。 MySQL 8.0 の使用しているエディションに含まれる機能に関する質問がある場合は、MySQL 8.0

    eigo_s
    eigo_s 2007/03/14
    MySQLの各種リファレンス。
  • SHIFT the Oracle - oracle tips and tricks

    コンテンツは 2007 年に以下の専用ドメインに移転しました。 https://www.shift-the-oracle.com/