Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? UUIDは重複しないIDを生成する手段として便利ですが、特にversion4(乱数によるUUID)を利用する場合は一意性を得るのと同時に乱雑さも得ることになりますので、UUIDに順序性を求めることができません。 UUID - Wikipedia https://ja.wikipedia.org/wiki/UUID UUID(Universally Unique Identifier)とは、ソフトウェア上でオブジェクトを一意に識別するための識別子である。UUIDは128ビットの数値だが、十六進法による550e8400-e29b-41d4-
ブックマークサービスQiNeel関連の記事や身の回りのよしなしごとをそこはかとなく書きつくっています。 RDB界隈で時折バトル議論のネタになる「主キーには自然キーと人工キーのどちらを使うべきか?」というテーマについて。 「人工キーのほうがデータ量が少ないし高速だからこれでいいじゃん」 「いやいや、原則は自然キーで、人工キーはどうしようもないときにだけ使うべきだ」 「理論的には自然キーを使うべきなんだろうけど、効率とか考えたら現実的には人工キー使っちゃうよね」 現実を優先する人、原理原則を大事にする人、原則を尊重しつつも現実との折り合いをつける人…立場は様々ですが、これについて思うことが少々あるのでいつになく真面目に語ってみます。 まず用語を整理しようか。 自然キー、ナチュラルキー、人工キー、サロゲートキー、代理キー、複合キー…いろいろ出てきて混乱しますし、実際に混乱(混同)している人も少な
データベースまわりでカーディナリティとか濃度という言葉がバラバラの意味で使われているので整理する。 以下の3種類の使われ方がある。 1. relationのカーディナリティリレーション中のタプルの数(不正確に言えばテーブル中のレコード数)をカーディナリティという場合。 これが原義。 Date「データベースシステム概論」P-90 一つの組(tuple)は表の一つの行に対応し、一つの属性(attribute)は一つの列に対応している。 組の数は濃度(cardinality)とよばれ、属性の数は次数(degree)とよばれる。 2. relationshipのカーディナリティエンティティ間の関係が1対1・1対多・多対多のどれか、ということをカーディナリティという場合。 3. キーのカーディナリティキーの値の数と、全レコード件数との比を、カーディナリティという場合。 日本語の「濃度」のイメージに近
基礎から始めるデータベース入門セミナー 第3回「データベース」の種類 日本オラクル株式会社 井上 学 (いのうえ まなぶ) 山田 真二郎(やまだ しんじろう) データベースについて1から学びたいという方、一緒に勉強しませんか!! 「基礎からはじめるデータベースセミナー」は、データベースの知識を習得するにはまず何から始めたらよいのかと、書籍を探したりセミナー情報を検索したりしている方のためのセミナーです。これまでデータベースに触れたことの無かった人や、おもにメインフレームやオフコンを中心に扱ってきたために、オープンな環境で動くリレーショナル・データベースに携わった経験がない人たちや営業職の方向けに、「そもそもデータベースって何だろう?」というところから始まり、リレーショナルデータベースのしくみとOracle Databaseのアーキテクチャを基本のところから学習することを目的としています。今
松本美穂のコラム 松本美穂が執筆するコラムです。 イベントの参加レポートや耳寄り情報などを中心に、毎月1、2回の更新を予定しております。お仕事の合間にご覧ください。 私たちが制作した SQL Server 2014 の自習書が、日本マイクロソフトさんのサイトで公開開始されました。 http://www.microsoft.com/ja-jp/sqlserver/2014/technology/self-learning.aspx 現在は、SQL Server 2014 CTP 1 で試せる新機能のみを扱っていますので、いち早く SQL Server 2014 の新機能の概要を知りたい、試したいという方に最適です。ステップ バイ ステップ形式で画面を豊富に盛り込んでいますので、試す環境がないという方でも眺めるだけで疑似体験できるようになっています。 No.1: 「SQL Server 2
Database Watch(2013年6月版):SQL Server 2014 処理高速化の仕掛け/Redshiftの先行評価の内容とは? (1/2) - @IT で SQLCAT 多田 さんのお話しが載っていたので、 この前の db tech showcase 大阪 2013 | Insight Technology, Inc. での Hekaton セッションの個人的なメモを書いておきます。 ほぼ、上記記事と同じ内容です。 メインメモリ最適化 メモリ中データの最適化 ページの概念は、メモリとディスクの行き来を想定している。メモリ内で完結するならページである必要が無い。 インデックスはメモリ中のみ(Hash/Range) インデックスのメンテナンスに関するI/O無し インデックスはデータファイルに存在しない(ファイルサイズ減) バッファプール無し/B-Tree 無し B-Tree の場
SQL Server 2014 では 遅延持続性 (低速コミット) の機能が追加されています。 トランザクションの持続性の制御 遅延持続性については全エディションで使用できる機能となっています。 SQL Server 2014 の各エディションがサポートする機能 SQL Server の通常の動作としては WAL (先行ログ書き込み) により、データファイルの書き込みより、ログレコードの書き込みが優先され、トランザクションの変更履歴の確定が優先されることになります。 トランザクションを完了するためには、ログレコードがログバッファからディスクに書き込まれデータが永続化される完全持続性が担保されることが必須となります。 # DDL 系の操作についてはコミット→ロールバックをした場合、ディスクには書き込まれない等の動きがあったはずでこの辺もなかなか奥が深いですが。あと 錦の鬼 って強そうですね
管理会計システムの開発ツール「FusionPlace」の開発者であり会計士でもある杉本さんが、9月の「第19回関西IT勉強宴会」でたいへん興味深い発表をされた。それを聞いて、私の中で曖昧だった「概念データモデル」の位置づけがはっきりして、「論理データモデル」との違いが浮き彫りになった。この快適なスッキリ感をおすそわけしたい。 ■従来の「概念データモデル」の危うさ これまで「概念データモデル」という用語は「対象領域における重要なテーブルのみを示したデータモデル」くらいの意味で使われていた。1ページか2ページに収まるように重要なテーブルのみを置き、しばしばキーが省略された形で示される。一部を示すとたとえばこんな調子だ。 以前に書いた記事「危ういデータモデルを見破るコツ」で、概念データモデルと呼ばれる図面の上に「多対多」のテーブル関連が現れることを批判した。一部のテーブルを省略すれば必然的に「多
JDBCドライバは、その実装方式から4つのタイプに分類されています。なぜ、4つもタイプがあるのでしょうか? それぞれのタイプにはどういった違いがあり、開発者はどういった点を考慮する必要があるのでしょうか? ここでは、これら4つのタイプについてそれぞれの特徴を見ていきます。 ■TYPE1:JDBC-ODBCブリッジドライバ このドライバは、JDBC APIの呼び出しをODBC API呼び出しに変換するブリッジコンポーネントで、Windows用とSolaris用のドライバはJDKに付属しています。ODBCドライバを経由してDBMSに接続することになるので、JDBC-ODBCドライバを使用するクライアントマシンにODBCドライバがインストールされていることが必須となります。 特徴としては、ODBCを経由することによりODBCに対応する多くのDBMSを利用することができ、既存のシステムを利用する際
各種インフラ技術(OS、ストレージ、ネットワーク)やオラクル製品といった話題を取り上げます。著者は小田圭二、「門外不出のOracle現場ワザ」、「絵で見てわかるOracleの仕組み」、「絵で見てわかるOS/ストレージ/ネットワーク」などの著作もあります 今回は、ITシステムで見られるシーケンスの紹介です。 「オンラインゲームを支える技術」で紹介されていた3つのシーケンスは、ITシステムでもよく見られます。まずはこれを載せます。 投げっぱなしのシーケンスは、応答待ちしなくて済むので、楽です。ただし、きちんと処理が終わったか把握することはできません。 三角形は、リクエストに対しての応答の形(例:Webページのリクエストに対するWebページの送信)となるため、イメージしやすいかと思います。処理が完了したかどうかも把握できます。 ぎざぎざは、三角形の変形のため、割愛します。 ●中継方式のシーケンス
ここ2-3年ほど、いわゆる非SQL系データベースがホットな話題になってきています。このムーブメントを総称して「NoSQL (Not-only SQL)」と呼ばれることが多いようです。まるでSQLを否定しているかのような誤解を招きやすい用語ですが、かといってキー・バリュー型データストアや列指向DBを総称できる他の呼び方もないので、このエントリではNoSQLという用語を使うことにします。 OracleやMySQLなどのSQLデータベースが成熟していく一方で、SQLデータベースを特徴づける弱点である柔軟性のなさ、堅牢さと引き換えに犠牲になった更新性能の低さ、スケールアウトの難しさなどから、「何でもかんでもRDB」から「目的に応じた永続化」が模索される流れになってきました。 時を同じくして、キャッシュサーバの世界でも、MemcachedのもつシンプルなAPIの使いやすさが評価される一方、LRUによ
軽量なリレーショナルデータベースとして人気のSQLite。そのWebサイトに掲載されている「How SQLite Is Tested」の内容が、海外のプログラマなどのあいだで話題になっています。 3月に公開された最新バージョンのSQLite 3.6.23。本体のソースコードは約6万7200行(67.2KSLOC、Kilo Source Lines of Code:空行やコメントを除いた行数)なのに対し、テストコードはなんと4567万8300行(45678.3KSLOC)だと紹介されているのです! これはテストコードが本体の約679倍もの大きさだということになります。 100%のブランチカバレッジ SQLiteコアのライブラリをテストするテストコードとして、以下の3つが紹介されています。 TCL Tests TCL Testsはもっとも古いテストコードで、TCL scripting lang
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く