600ページを超える書籍である「データ指向アプリケーションデザイン」の要点を最近の話題を交えながら解説します。 Data Engineering Study #18 の発表資料です プレゼンテーション https://www.youtube.com/watch?v=ZiKWXc0fSCw …
私たちopenBDプロジェクト(カーリル・版元ドットコム)は書誌情報・書影を、だれでも自由に使える、高速なAPIで提供します。 個人が、SNSやブログで本を紹介するとき 書店が、仕入れや、販売のために本を紹介するとき 図書館が、選書し、利用者に本を紹介するとき メディアが、本を紹介し評するとき 企業が、書誌情報・書影を利用したあらたなサービスを開発するとき こうしたときに、自由に使える書誌情報・書影を、高速なAPIで提供するopenBDの提供を開始します。 オープンな本のデータが、本の世界をますます豊かにすると考えるからです。 openBDは、カーリルがAPIシステムを開発します。 カーリルは、図書館蔵書・貸出情報を横断的に高速で検索するサイトを提供しています。 ここで培ったノウハウを活用します。 openBDに掲載する書誌情報・書影は版元ドットコムが収集します。 版元ドットコムは、会員出
2019年3月6日紙版発売 2019年2月27日電子版発売 曽根壮大 著 A5判/288ページ 定価3,014円(本体2,740円+税10%) ISBN 978-4-297-10408-5 Gihyo Direct Amazon 楽天ブックス 丸善ジュンク堂書店 ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo honto 本書のサポートページサンプルファイルのダウンロードや正誤表など この本の概要 「データベースがよく落ちる」「前任者が残したテーブル,SQLが読み解けない」「RDBMSを入れ替えたら予期せぬバグが」――MySQLやPostgreSQLといったRDBMS(リレーショナルデータベース管理システム)を使った業務システム,Webサービスを設計・運用していると,こういった問題によく直面するのではないで
テーブル構成を把握しておくメリットとしては… 頭の片隅にでも置いておくと何気なく記述しているソースの理解が深まるかもしれない。プラグインによってテーブルが追加されることがあるが、必要がなくなった場合に不要なデータが把握しやすくなる。WordPressのコアの関数では取得が難しいもののSQLを実行すれば簡単なこともある。「wpdb」というクラスを使って、データベースにアクセスすることができる。(「$wpdb->posts」みたいな記述たまに見ますよね。) ※$wpdb->postsは「wp_posts」テーブルのデータを参照できます。 データベーステーブルの基礎 まずはテーブルの基礎から。 記事のネタがWordPressなので一番重要なテーブルである「wp_posts」テーブルの例で説明。 列のことをフィールド(もしくはカラム)と呼び、行のことをレコードと呼びます。 WordPressは11
クラウドベンダなどによるサービス利用を制限したMongoDBの新ライセンス「SSPL」を理由にDebian、Fedora、RHELがMongoDBの配布取りやめを表明 MongoDBがAWSなど大手クラウドベンダによるサービス化に反発し、商用サービス化を制限する新ライセンスに変更したことは以前の記事で紹介しました。 参考:Redis、MongoDB、Kafkaらが相次いで商用サービスを制限するライセンス変更。AWSなどクラウドベンダによる「オープンソースのいいとこ取り」に反発 新ライセンスはAGPLをベースにMongoDBが独自に作成したもので、「Server Side Public License」(以下、SSPL)と呼ばれています。 SSPLではサービス提供元もソースコード公開を義務化 SSPLでは、MongoDBをサービスとして提供する場合、サービス提供元が独自に変更した部分を含めて
「サーバレスコンピューティング」や「サーバレスアーキテクチャ」といった言葉は、2014年にAWS Lambdaが発表され、その後広く普及したことで一気に注目を浴びるようになりました。 現在ではAWS Lambdaだけでなく、Microsoft AzureのAzure Functions、Google Cloud PlatformのGoogle Cloud Functions、IBM CloudのIBM Cloud Functionsなど、主要なクラウドサービスの多くでサーバレスコンピューティング環境が提供されています。 サーバがない、のではない。サーバ管理が不要ということ AWS Lambdaに代表されるサーバレスコンピューティング環境は、一般にユーザーがあらかじめ用意しておいた関数を、イベントをトリガーとして実行することで何らかの処理を行うFunction as a Service的なア
AWSやAzureでマネージドサービスも提供されるなどNoSQLサーバーとして広く使われている「Redis」だが、開発元のRedis Labsは22日、これまでAGPLで提供していた同社開発の拡張モジュールを、今後はクラウド事業者による商用利用に制限のかかるCommons Clause条項付きのApache 2.0ライセンスに移行することを発表した(プレスリリース、OSDN Magazine、ZDNet、Register)。 移行の対象となるのは「RediSearch」「Redis Graph」「ReJSON」「Redis-ML」「Rebloom」などの拡張モジュールで、コア部分には引き続きBSDライセンスが採用される。Redis Labsでは変更の理由として「クラウド事業者はほとんどこれらのオープンソースプロジェクトに貢献していない」と述べており、クラウド事業者によるフリーライドに耐えか
設定したりもっと細かい作業をしたい場合は help コマンドを使う。 種類ごとのヘルプをみたい場合は @ をつけるとよい 例えばリスト関連のコマンドを知りたいなら > help @list といった感じ。 以下は解説 keys 登録されている key がわからないと何もできないので、keyの一覧をみる方法 > keys * 引数にはパターンを入力する hogeではじまるものに絞りこみしたい場合は > key hoge* とかする。shell の場合はアスタリスクはエスケープする必要があるのに注意 $ redis-cli keys \* type redis は key に格納された値の種類によって取得コマンドが違うらしい。 値をみるために種類の確認が必要。 hoge というキーがあった場合は > type hoge とする。 返す値としては string list set zset has
mysqlのselectの結果をcsvで出したい場合。 よく、 MySQL CSVファイル出力 - 雑想空間 SELECT * FROM table_name INTO OUTFILE "/tmp/sample.csv" FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"';こんな事やってたんですが、結果が数行とかの時は、remote上からscpなんかでfile移動するのが面倒でした。 コマンドライン上でカンマ区切りとかに mysql -uuser database -p -e 'SELECT id,a_id FROM test limit 10' -B | sed -e 's/\t/,/g' id,a_id 1,2 3,4 2,16 7,17 5,24 4,25 6,26 8,28 20,29こんな感じで、コマンドライン上でカンマ区切りで
DELETE_FLAG という思考停止フラグ DELETE_FLAG という boolean の列が DB 設計でよく話題になります。 論理削除という言葉で上手に論理武装し、スキを見せるとすぐに入れたがる人がおり、 一方でそれにつよく反対する人もいます。 自分の経験としては、広義の論理削除はありえると思いますが、実現方法が DELETE_FLAG だとなった時、それはあまり考えてないでなんとなくパターンとして盛り込んでる場合が多いと感じます。 ただし、設計に唯一の答えは無いので、もしかしたらそれが妥当な設計である場合があるかもしれません。 今回は「DELETE フラグがなぜダメなのか?」などという話をするつもりも、アンチパターンだと断言するつもりもありません。 問題は、仕様をきちんと把握すると、「最適な設計は DELETE_FLAG ではない」という場合が有って、その場合は、その最適な設計
はじめに Ubuntu上でPostgreSQLを動かしていたのですが、PostgreSQLが吐き出すエラーメッセージが文字化けしてしまいます。 日本語で出なくても良いので、せめて何が書いてあるのか分かるようにしたいと思い、対処方法を調べてみました。 文字化けしたエラーメッセージ こんな感じで???で化けてしまう。 FATAL: ??????"postgre"??????? PostgreSQLのエラーメッセージが文字化けする場合の対処方法 具体的には設定ファイルに記載してあるエラーメッセージの文字コードを変更することで、文字化けしないようになります。 エラーメッセージの文字化け - ここはちょっと見せられない Debian の postgresql - Yukiharu YABUKI の tDiary(2010-06-20) PostgreSQLの設定ファイルを変更する 1. 以下のファイ
ネットを見ていたら「問題集 : PHP技術者認定・初級」というのを見つけました。 【セキュリティ対策】 セキュリティ対策について、正しいものを1つ次の記述の中から選択せよ。 入力のフィルタリングのみ行う。出力のエスケープのみ行う。少なくとも、入力のフィルタリングと出力のエスケープを行う。データベースのデータは信頼してよい。ITトレメ PHP技術者認定・初級 - @IT自分戦略研究所より引用 過去問なのか練習用の想定問題なのかわかりませんが、「問題提供: PHP技術者認定機構」とあります。 PHPアプリケーションの問題ですから、Webアプリケーションセキュリティの問題ですね。茫漠とした問題文ですが、実は正答を得るのは難しくありません。選択肢から技術的な中味を抜いてみると下記になります。 ○○のみ行う。○○のみ行う。少なくとも、□□を行う。○○は信頼してよい。このように並べてみると、○○の選択
DB操作ツール Emacs DBI を作ってみた - 技術日記@kiwanami このツールの目的は、クロスプラットフォームで便利なDB操作環境を実現することです。 pgAdmin や MySQL Query Browser のようなGUIの良さをCUIで実現してみようとしてみました。すなわち、ぼくのかんがえたさいきょうのDBツールです。ちなみに、このツールにとってEmacsはただの実行環境です。Emacs使わない人でも使うと便利だと思います。 http://d.hatena.ne.jp/kiwanami/20120305/1330939440 VimもーVimもー! って事で作りました。 mattn/vdbi-vim - GitHub Database client for Vim https://github.com/mattn/vdbi-vim Emacs版はepcというRPCプロト
データベースの世界でいま注目されているのがNoSQL。特にキーバリュー型データストアは、グーグルのBigTable、FacebookやTwitterが内部で利用しているCassandraやAmazonクラウドが提供しているSimpleDBなど、すでに実際に使われ始めています。 ではそのNoSQLをリレーショナルデータベースの代わりに使ってシステムを構築するとどうなるのか? 身をもって体験したことを記したShinya Kawanaka氏によるプレゼンテーション「間違った方向にCassandraを使ってみた」が公開されています。 NoSQLを用いたシステム構築は、リレーショナルデータベースによる構築どう違うのか? とても分かりやすくまとめられています。ご本人の承諾もいただいたので、その内容を紹介しましょう。 NoSQLを使ったときに起こる恐ろしい事例 プレゼンテーションのテーマは「NoSQLを
12/11(土)のMySQL Casual Talks vol.1で突如熱い話題となったInnoDBの発音。 営業部門のトップ(ロンドン在住英国人)や自分の部門のボス(ニューヨーク在住米国人)にも聞いてみたけど、共通した答えは「英語の発音だとイノ・ディー・ビーっぽいけど、作ったヤツに聞くのが良いんじゃない?」と。 ちょうどMySQL 5.5のリリース前だったので聞きづらかったけど、予定通りMySQL 5.5がGAリリースとなったのでInnoDBの制作者のHeikkiに直接聞いてみました。真面目なHeikkiはきっちり教えてくれました。 Heikkiによる説明を以下にまとめています。 InnoDBの最初の名前はInnobaseだった。MySQL創業者の一人David AxmarkがInnoDBという名前を付けた。 フィンランド語での一般的な発音としては IN - no - dee - bee
「今後12カ月以内にWebインフラを新しく立ち上げるプロジェクトの大多数は,プライマリ・データストアとしてRDB以外のデータベースを選ぶだろう」。オープンソースのデータベース開発プロジェクト「MongoDB」を支援する米10genのCEOであるDwight Merriman氏(写真1)は,「Web 2.0 Expo New York 2009」でこう予測した。 Merriman氏は,「表と表の関係でデータを処理するリレーショナル・データベース(RDB)は,現在のWebアプリケーションの実態にそぐわない。リレーショナル・モデルに向かないデータ処理や分析処理が急増しつつある」と指摘。Webでは,写真や動画といった巨大データを多数のユーザーがやり取りし,クレジットカード情報もあればTwitterのつぶやきまでと価値の異なるデータと混在している。このため最近Web技術者の間で「NoSQL」と呼ばれ
Typefaces, Designers, and Foundries Typeface Name Designer Foundry Country of Origin Release Year Distributor Original Format Related Links Background
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く