タグ

設計とDBに関するjsstudyのブックマーク (5)

  • 似たようなデータベース作ったからって、泥棒よばわりするのやめてもらえません?

    連載目次 久しぶりにソフトウェアの著作権の判例を解説する。 今回の判決は、以前「データベースをパクられたので、著作権侵害で9億円請求します!」で一度取り上げ、その考え方も説明したが、著作権の考え方を整理し直す機会として、あえて再度解説することにした。 著作権法は第二条において、コンピュータのプログラムやデータベース、通信などに関する作成物も著作物として認められると示している。しかし、こうした成果物の全てに著作権が認められるわけではない。仮に誰かが何も参考にせず、一から以下のようなプログラムを書いたとしても、これを「著作物」だと主張するのは難しい。 このプログラムを書くためには、プログラミング言語に関する最低限の知識があれば足りる。そこにプログラマーの創意や工夫、まして思想、信条などというものはない。こうしたプログラムは著作権保護の対象とはならないだろう。 だが、創意や工夫が作成したプログラ

    似たようなデータベース作ったからって、泥棒よばわりするのやめてもらえません?
  • DBMSをGoで実装してみた - Sansan Tech Blog

    こんにちは。プロダクト開発部の荒川 id:ad-sho-loko です。突然ですが、皆さんはこんな疑問を持ったことはありませんか? データベースの内部実装はどうなっているのか? トランザクションとはどのようなアルゴリズムで実現されているのか? NoSQLが遅いのはなぜか? 古典的なデータベースとは内部的にどのように違うの? データベースを何かしらの形で利用しているのにも関わらず、意外と内部の仕組みを理解していない場合が多いかと思います。僕もそうです。*1 しかし、エンジニアたるもの、その仕組みを知ることは非常に重要です。僕もデータベースについて勉強しようといくつかのやサイトを調べていたのですが、なかでもCMU(カーネギーメロン大学)のDatabase System Groupがアップロードしている講義が最も勉強になりました。 www.youtube.com そしてブログでは、上記の講義

    DBMSをGoで実装してみた - Sansan Tech Blog
    jsstudy
    jsstudy 2019/10/25
    データベースについて勉強しようと調べていたのですが、CMU(カーネギーメロン大学)のDatabase System Groupがアップロードしている講義が最も勉強になりました https://www.youtube.com/watch?list=PLSE8ODhjZXja3hgmuwhf89qboV1kOxMx7&v=vyVGm_2iFwU
  • イミュータブルデータモデル(入門編)

    [B23] 事例で語る、社会インフラを支えるNonStop SQL ~見えないところで凄いんです~by Tetsuya ShinoharaInsight Technology, Inc.

    イミュータブルデータモデル(入門編)
    jsstudy
    jsstudy 2019/10/23
    リソースエンティティに更新日時を持たせたくなるのはリソースにまつわるイベントが洗い出せていないことが原因 リソースに対する変更の記録としてのイベント系エンティティは履歴テーブル 更新不要ならDatomicもOK?
  • RDBの作成時刻や更新時刻用カラムに関するプラクティス | おそらくはそれさえも平凡な日々

    RDBのレコードに、作成日時や更新日時を自動で入れ込むコードを書いたりすることあると思いますが、それに対する個人的な設計指針です。ここでは、作成日時カラム名をcreated_at、更新日時をupdated_atとして説明します。 tl;dr レコード作成日時や更新日時をRDBのトリガーで埋めるのは便利なのでやると良い ただ、アプリケーションからそれらのカラムを参照することはせず別に定義した方が良い MySQLにおける時刻自動挿入 MySQL5.6.5以降であれば、以下のようにトリガーを設定すれば、レコード挿入時に作成日時と更新日時を、更新時に更新日時を、DATETIME型にも自動で埋めてくれます。いい時代になりました。(MySQLが遅すぎたという話もある) `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, `updated_

    RDBの作成時刻や更新時刻用カラムに関するプラクティス | おそらくはそれさえも平凡な日々
    jsstudy
    jsstudy 2019/10/23
    created_atとupdated_atはRDB上で「レコードが作成された時刻・更新された時刻」以上の意味を持たないことに価値がある。RDBのトリガーでデータを埋めた方が良い。アプリケーションから参照するカラム名は意味のある命名を
  • Firebase Realtime DBを実践投入するにあたって考えたこと - Qiita

    Firebase Realtime DBを実践に投入する Databaseと聞くと、これから利用しようとするFirebaseがmBaaSであることを忘れてついREST(Client Server Model)で考えてしまいがちですが、大前提はMobile Platformなので、一度REST、RDBの考え方は捨ててみてください。 RDBの考え方を引き継いだままでは、Firebase Realtime DBの最善の設計はできないと考えています。 そして、RDBの考え方を引き継いだままFirebase Realtime DBを理解しようとすることが、導入の一つの障壁となっていると思っています。 ぜひ頭をリフレッシュしてFirebase Realtime DBの見方を変えてみてください。 この記事では、Firebase Realtime DBの導入するにあたっての考え方やテクニックを紹介します。

    Firebase Realtime DBを実践投入するにあたって考えたこと - Qiita
  • 1