Copyright © 2004-2024 Impress Corporation. An Impress Group Company. All rights reserved.
Copyright © 2004-2024 Impress Corporation. An Impress Group Company. All rights reserved.
はじめに 実は、かなり前になりますが、私はThink ITで2つの連載を執筆していました。 「即活用!企業システムにおけるプロジェクト管理」(2004年) 「即活用! 業務システムの開発ドキュメント標準化」(2005年) 連載終了後、プロジェクト管理に関しては、そこで紹介したプロジェクト管理手法「PYRAMID(ピラミッド)」を統合型プロジェクト管理システム「SI Object Browser PM(OBPM)」として製品化しました。また、開発ドキュメント標準化の方も、記事でダウンロード可能とした開発ドキュメント標準「DUNGEON(ダンジョン)」をシステム開発の設計書作成CAD「SI Object Browser Designer(OBDZ)」として製品化しています(図1、2)。 今回は、図2の延長としてDUNGEONをOBDZに製品化する際に得たノウハウ、出来上がった製品を各社に導入し
前回の連載、前々回の連載では、MySQL 5.6での主要な機能強化点として、InnoDBとオプティマイザ、NoSQL APIとパフォーマンス・スキーマについて紹介しました。今回はレプリケーションの改善点について紹介します。 レプリケーション:人気の機能を更に機能強化 MySQL 5.6では、レプリケーション機能に対して非常に多くの改善が行われています。パフォーマンスの改善につながる機能から耐障害性を高める機能、開発生産性や運用性の向上につながる機能まで、幅広く改善されています。ここでは、主要な改善点を紹介します。 レプリケーション:パフォーマンスを向上 バイナリログのサイズ削減 レプリケーション構成時は、バイナリログというファイルを利用してデータベースに対する更新内容を伝搬していきます。バイナリログのフォーマットには以下の3種類があります。 SQL文自体を記録するSBR(Statement
今回のサミットには、運用者の視点でOpenStackを含めたコンテナセキュリティ、クラウド基盤の運用性とコンテナ、VMとコンテナのハイブリッド環境を中心に参加してきました。その中で気になったトピックを挙げて行きたいと思います。 コンテナセキュリティ 今回のサミットで、Zuul(の独立)と並んで目玉の一つとなったのは、Kata Containersの正式リリースです。先日のOpenStack ops meetup TokyoやKubeCon EU 2018でも紹介されていましたが、今回晴れてバージョン1.0としてお披露目されました。 Kata Container concept diagram(出典: Katacontainers The speed of containers、the security of VMs※1 P.12、P.13) ※1: https://katacontaine
コンテナ誕生までの歴史と コンテナの成長 前回に引き続き、今回はコンテナが生まれるまでの歴史とコンテナが成長してきた道のりをたどってみたいと思います。 コンテナの歴史は、1979年にchrootが誕生したことから始まります(図1)。chrootとは名前の通り「root(/)ディレクトリ(基準となるディレクトリ)を変える(change)」操作です。 操作したディレクトリ(カレントディレクトリ)に、起点となるルートディレクトリが変更されるので、以降はそのディレクトリ配下にしかアクセスできず、外側のディレクトリへはアクセスできなくなります(図2)。chrootには特権を分離してOSを保護する効果があり、主にセキュリティ強化のために用いられています。 このように、まるで外に出られないことからchroot監獄と呼ばれます。 時は過ぎて、2000年にUnix OSであるFreeBSDがOS仮想化機能F
PostgreSQLとOracle Databaseのアーキテクチャ構造 本シリーズの最終回は、PostgreSQLと、商用RDBMSとして普及しているOracle Databaseとの違いについて簡単にご紹介していきます。 「第1回:PostgreSQLの概要とアーキテクチャ」で、PostgreSQLアーキテクチャの概要図を説明しましたが、PostgreSQLとOracle Databaseは同じような役割を担ったプロセスやファイルで構成されていることがわかります(表1および表2参照)。 また、図1にあるプロセスとデータベース構成ファイルを解説すると、以下のようになります。 クライアントから接続要求を受けてデータベースと通信するためのプロセスを起動する。 クライアントからのSQL要求を処理するプロセスが、ディスク上にあるデータをメモリ上に保持する。 メモリ上の変更内容は専用のプロセスによ
「JBoss Enterprise Application Platformの全貌」では全4回にわたって、JBoss Enterprise Middleware全般について解説している。 本連載ではJBoss Enterprise Middlewareを使った具体例として「エンタープライズレベルの検索サービス」を提供するWebアプリケーションを取り上げ、試作する。なお、検索エンジンにはオープンソースソフトウェア(以下、OSS)のApache Lucene(以下、Lucene:ルシーン)を使用する。 ここで述べる「エンタープライズレベルの検索(注1)」サービスとは、企業が保有する大量のコンテンツを高速に検索するサービスのこととする。Luceneは小規模(文書数が数万件以下)から大規模(数百万件以上)のコンテンツを高速に検索することを得意としているため、「エンタープライズレベルの検索」に適して
連載2回目は、PagerDutyの概要と基本的な使い方について紹介していきます。今回からは実際にPagerDutyを実務で使用しているスマートニュース社の尾形さんに案内人をお願いします。 はじめに PagerDutyの利用を始めるにあたって、最低限エスカレーションポリシー(Escalation Policy)とサービス(Service)を設定する必要があります。 エスカレーションポリシーは、あるサービスに対するインシデントが発生した場合に、誰にどの順番で通知するかを定義するものです。サービスとはインシデントをアプリケーションやコンポーネントでカテゴリー分けするためのものになります。サービスには必ずエスカレーションポリシーが必要になります。またPagerDuty自体には監視機能はついておらず、インシデントを検知するにはNagiosやDatadogといった他のツールと連携する必要がありますが、
インシデント管理とは? なんでもかんでもWebサービスなしでは動かない現代、24x7でのサーバ運用が当たり前になって久しくなります。絶対落ちないシステムはありえないのに、求められるのはダウンタイムゼロ。ただでさえエンジニア不足がひどい昨今ですが、運用担当者の負担は増えるばかりです。 DevOpsでのアジャイル開発で、できるだけ早くサービスを投入しようという流れの中、どうしても完璧なテストを実行するのが難しくなってきており、バグ発生の頻度も高くなる傾向にあります。 加えて、最近はオンプレミスとクラウド、プライベートクラウドとパブリッククラウドのハイブリッド運用が急増し、サーバ構成もたくさんのマイクロサービスを組み合わせる構造となるなど、非常に複雑化しています。 当然、それぞれのインフラ、サ―ビスにはNagios、Zabbix、Mackerelなどの障害検知、運用監視ツールが組み込まれています
さて前回の記事では、GitHub Flowのごくごく基本的な部分についておさらいしてみました。基本ということで、CIやデプロイについては触れず、レビュー後にすぐマージする形でお話をしました。 GitHub社が実際に実施しているGitHub Flowにおいては、レビュー後にすぐマージするのではなく、マージ前に当該Pull Requestブランチを本番環境にデプロイするのが基本的な流れになります。もちろん、本番環境以外にも複数のテスト用環境が用意されており、場合によって複数のテスト環境で動作を確認してから本番環境へデプロイする場合も多くあります。また、デプロイフローは自動化されており、ブランチを本番環境にデプロイする前に、自動的にCIが実行され、コードが正しく動作するかがチェックされます。デプロイ後に本番環境にて問題なく動作することを確認後、masterブランチにマージします。逆に動作に不審な
サービスメッシュのLinkerdを開発するBuoyantのCEOにインタビューを実施。LinkerdとConduitとのマージなどについて語ってもらった。 サービスメッシュを実現するためのProxyであるLinkerdを開発するBuoyantのサンフランシスコのヘッドクォーターを訪問。Co-FounderでCEOであるWilliam Morgan氏にインタビューを行った。 自己紹介をお願いします。 私はBuoyantのCEOで、Oliverと一緒にBuoyantを立ち上げました。Buoyantの前は二人ともTwitterでエンジニアをやっていました。私は主にバックエンド、Oliverはインフラストラクチャー側を担当していました。私が書いた写真を扱うライブラリーは、今でもTwitterで動いていると思いますよ。 LinkerdやConduitを開発した理由を教えてください。 そもそもTwit
ベルリン在住のイラストレーター(兼漫画家)、高田ゲンキが送るコミックエッセイ 『ライフハックで行こう!』、第3話です(第2話はこちら)。 今回は海外で大活躍する日本人デベロッパーが登場です―― ↑これは今年(2016年)5月にベルリンでお会いした際の写真です。また続編も描きますが、堤さんはその後も何度かドイツに来ています。 堤さん、ハッカソンで伝説を作る とにかく堤さんのハッカソンでの話が印象的で、「これはいつかマンガに描かなくては!」と思い続け、今回やっと実現しました。 断っておきますが、堤さんは(僕と違って)他人に細やかな気遣いができるジェントルマンです。その堤さんが、ハッカソンではチームメンバーに何と思われようと自らの強い意志でチームから離脱して単独チームで開発し、プレゼンテーションもひとりで英語でしたというのは、良い意味でショックを受けました(堤さん自身もあちこちで言っていることで
ベルリン在住のイラストレーター(兼漫画家)、高田ゲンキが送るコミックエッセイ 『ライフハックで行こう!』、第9話です(第8話はこちら)。 今回から数回にわたって、僕のフリーランス論をお送りしていきます。 今回は、僕がフリーランスになる前、まだ会社員だったころの話です―― 「フリーランスになりたい」すべての人へ 今回から数回にわたり、シリーズで「フリーランサーとして働くメリット」をテーマに描いていきます。最近ではフリーランスのITエンジニアも多く、ある会社から次の会社に移るときに、フリーランス期間を挟んでも無駄にはならないようです(【マンガ】第3話 iOSデベロッパー、堤修一さん登場!参照)。 最初にことわっておきますが、このテーマはあくまで「フリーランスになりたい」とか「会社を辞めて好きなことを仕事にしたい」という意思を持っている人に向けたものです。会社が好きな人やフリーランスとしての働き
Copyright © 2004-2024 Impress Corporation. An Impress Group Company. All rights reserved.
前回は、ディープラーニングの概要を紹介した。今回は、もう一歩踏み込んだニューラルネットワークのモデルの説明と、ディープラーニングの学習をするためのオープンソースのフレームワークを紹介しよう。 ディープラーニングは、他の機械学習技術とどこが違う? まず学習方法の説明に入る前に、ディープラーニングと他の機械学習技術には決定的に違う点があることを理解する必要がある。それは、機械学習において非常に難しいとされる変数の設計だ。従来の技術では、例えば画像認識を行う場合、入力データはピクセル値そのものではなく、「特徴量」と呼ばれる何らかの変数の集合となる(図1)。画像の特徴量は色、形状、テクスチャなどいろいろな情報を、ヒストグラムなどでコンパクトに表現した変数のセットであることが一般的だ。ただし、特徴量の設計というのは非常に難しく、研究者の経験と直感によるところが大きかった。一方ディープラーニングは、そ
OpenStackは、オープンソースで開発されているクラウド環境構築用のソフトウェア群です。クラウドの分類のうち、いわゆるIaaSと呼ばれる仮想マシンとストレージ、ネットワークといった、一番低いレイヤーのリソースを提供するクラウド環境が構築できます。もともとAWS(Amazon Web Services)を参考に開発が始まったこともあり、AWSのようなものを自分自身の環境でプライベートに構築できると考えるとよいでしょう。 OpenStackの国内導入事例 OpenStackはIaaS環境を構築するソフトウェア群ですが、国内での導入事例を見るとIaaSクラウドサービスを提供するために使っている例と、Webサービスを提供するインフラに採用しているパターンが多いようです。いくつかの事例を挙げてみます。 GMOインターネットのVPSサービス「ConoHa」 VPS(Virtual Private
Leap Motion Controllerとは Leap Motion ControllerはアメリカのLeap Motion, Incというベンチャー企業が制作、販売している小型の3Dモーションコントローラーです。 Leap Motion, Inc.モーションセンサー技術を売りにしているアメリカのスタートアップです。シリーズBの投資で約3000万米ドル、それ以前には約1450万米ドルの大型の資金調達をしたことで知られています。 Leap Motion, Incはこのモーションセンサー技術をベースとして、ユーザ・インターフェースの改善に力を注いでいるようです。2012年半ばに「The Leap」と呼ばれる小型の端末を公開しました。このThe LeapはUSBサイズの小型の筐体に、驚くべき認識精度を持ちます。このThe Leapの製品版が今回紹介するLeap Motion Controll
マイクロソフト社のKinect(キネクト)が、ゲーム機Xbox 360の拡張コントローラーとして2010年に発表されて以来、コントローラーを全く持たずに遊ぶことができる革新性が、大きな注目を浴びてきました。 個人によるKinectを使ったアプリケーション開発は、当初は公式にアナウンスされなかったものの、熱心なユーザーの希望をかなえる形で、PC用の「Kinect for Windows」が2012年2月に発売されました。それと同時に、SDK(Software Development Kit)も提供され、Kinectでの開発を目指す多くのエンジニアに門戸が開かれることになりました。 今回は、そんなKinectの組み込み機器への可能性を探るべく、2012年9月に行われた「Kinect for WIndows コンテスト 2012」の様子を中心に、楽しく役に立つKinectアプリケーションを紹介し
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く