タグ

2014年12月10日のブックマーク (51件)

  • Apache Sparkとデータの永続化

    2日目です Apache Sparkは「インメモリで処理できる分散処理基盤」ですが、状況によってはディスクへのアクセスがあります。 明示的にディスクに永続化した場合 (persist()) チェックポイントを取った場合(checkpoint()) シャッフル時(暗黙的) 3がわかりにくいので、簡単にまとめてみます。 明示的に永続化する Spark Programming Guideから抜粋しますが、例えば以下のようなコードを書くと、明示的にディスク(またはコードを変更すればメモリに)にRDDを永続化できます。永続化しておくことで、処理をもう一度実行する際、先頭からRDDのリネージを辿る必要がなくなるため、繰り返し処理などに効率的です。 当然ですが、ディスクに永続化するよりもメモリに永続化する方が高速ですが、その分多くのメモリを必要とします。キャッシュされた古い情報はLRUで捨てられます。ま

    Apache Sparkとデータの永続化
  • Scala - Symfoware

    Play Framework 2.5.0をUbuntu 14.04 + OpenJDKで動かす Play Frameworkを触ってみようと思います。 https://www.playframework.com/ Ubuntu 14.04で動かしてみました。 事前準備 java 8系をインストールしておきます。 UbuntuにOpenJDKをインストールする手順はこちら。 Ubuntu 14.04にOpenJDK 8をインストールする OpenJDK 1.8.0_72で試しています。 $ java -version openjdk version "1.8.0_72-internal" OpenJDK Runtime Environment (build 1.8.0_72-internal-b15) OpenJDK 64-Bit Server VM (build 25.72-b15, mi

    Scala - Symfoware
  • [和訳] Cookbookを引き取ってもらうには #opschef_ja #getchef_ja - クリエーションライン株式会社

    稿は Adopt a Cookbook (2014/12/04) の和訳です。 ある日、Cookbookについてよいアイディアが思いついたとします。それをビルドし、Supermarketで共有したとします。すばらしい! でも、後日、Cookbookのメンテナンスが行えない状況になったとします。時間がなくなったとか、興味がなくなったとか、その他もろもろの理由でこのCookbookをもはやメンテナンスできなくなってしまったとします。心配しないでください。誰にでも起きうることです。日、私達はメンテナンス権限を誰かに簡単かつ確実に引き渡す方法を発表します。 adoption (訳注:養子縁組)と呼ぶ新機能を追加しました。もしCookbookをメンテナンスし続けられなくなったり、Cookbookを他の人に引き渡したい場合、そのCookbookをadoptionに出すことができます。そうすると、C

    [和訳] Cookbookを引き取ってもらうには #opschef_ja #getchef_ja - クリエーションライン株式会社
  • サーバが増えた時にインフラ担当者がやってきたこと - Qiita

    はじめに これは ドリコムAdventCalendar の9日目の記事です。 8日目はsazae657さんによるドリコムの俺を支えるUIツールキットです。 自己紹介 @hiracy といいます。 ドリコムのインフラやってます。 最近発表したスライド ドリコムのInfrastructure as Code インフラ自動化とテストについて この内容について WEBサービス・ソーシャルゲームのインフラにてサーバが増加した時の管理について採用してきたツールとノウハウについて書かせて頂きました。 サーバ増加時の管理にお悩みのインフラ担当者は参考にしてみてはいかがでしょうか。 プロビジョニング 業者又は自前でラッキングされたサーバやクラウド業者で契約し使えるようになったサーバからOS設定・ミドルウェアインストール等を1台1台コマンドで設定すると日が暮れてしまいます。(たまにやってみるといい気付きがあり

    サーバが増えた時にインフラ担当者がやってきたこと - Qiita
  • elliptium.net - elliptium リソースおよび情報

    This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.

  • Hiveのパフォーマンスチューニングで試した7つのこと - Qiita

    Spark, SQL on Hadoop etc. Advent Calendar 2014 - Qiita 10日目の記事です。 とあるプロジェクトにて、パフォーマンスチューニングのために実施した7つのことをまとめました。 この内容はCloudera World Tokyo 2014でお話しさせていただいた内容を再編したものです。 登壇資料 - Hadoopで作る広告分析プラットフォーム 登壇の様子 - 国内最大級のHadoop関連カンファレンスに登壇してきました! 1.YARNが利用可能なリソースの変更 YARNではMR1と異なりスロットではなくコンテナという概念でリソースが管理されます。 以下のパラメータでノードマネージャがコンテナに利用可能なメモリ量、CPU数を変更しました。 yarn.nodemanager.resource.memory-mb yarn.nodemanager.

    Hiveのパフォーマンスチューニングで試した7つのこと - Qiita
  • Ansibleと個人開発 - Qiita

    Help us understand the problem. What is going on with this article?

    Ansibleと個人開発 - Qiita
  • golang_ad_server

    pixivエンジニア勉強会 - Golang利用の現状確認会 「月間38億PVからの
全インプレッションに耐えるgolang製配信サーバの話」

    golang_ad_server
  • dockerでWebサイトを集約してみた一事例 - Qiita

    記事はDocker Advent Calendar 2014の10日目の記事です。 最初に Ubuntu14.04+nginx(リバースプロクシ)をホストとし、dockerコンテナとして構築された複数のWebサイトを並べてみた。運用のことも考えてみた。 ポートはバインディングしない ホストとゲストは、仮想的に構築されたネットワークで、デフォルトだと、172.17.0.0/16のセグメントで繋がっている。リバースプロクシすること考えると、ホストのサービス側に届いたリクエストを、172.17.0.0/16内のゲストに中継できれば良いので、ゲストのポートをバインディングで外に晒す必要はない。 でコンテナを起動。イメージは一応、80をexposeしてdocker buildしてるけど、もしかしたら要らないかも知れない。イメージをイジるときに、手元の環境で、リバースプロクシなしで動かすこともあるの

    dockerでWebサイトを集約してみた一事例 - Qiita
  • Dockerの構成管理「Fig」で開発環境を整備しよう | さくらのナレッジ

    Dockerに対する注目がどんどん高まっています。GoogleMicrosoftDockerを積極的に採用して自社クラウドサービスに組み込んでいますし、Dockerを使ったコンテナベースのクラウドサービスも増えています。 Dockerでは各コンテナではあまり複雑な構成をせず、1コンテナ1アプリケーションとして、コンテナ間をリンクして使うのがお勧めです。それによってコンテナ間の依存度を下げつつ保守性を維持できるのがメリットになります。 逆にデメリットとしては構成が複雑になるためにアプリケーションをまとめあげ、構成する仕組みが必要になります。今回はそのためのツールとしてリリースされたFigを紹介します。元々Orchard Labsが開発していましたがDocker社に買収され、2014年10月にリリースされたツールになります。Docker体が買収したとあって、需要は高いツールと言えるでしょ

    Dockerの構成管理「Fig」で開発環境を整備しよう | さくらのナレッジ
  • デブハゲ

    でぶはげ めしくえ

  • RHEL7でDockerを利用する手順 - めもめも

    RHEL7でRed Hat公式のDockerとRHEL6イメージを使用する手順です。 RHELのサブスクリプションが必要ですので、ご注意ください。 Dockerのインストール RHEL7を最小構成でインストール サブスクリプション登録 # subscription-manager register --username=<username> --password=<password> # subscription-manager list --available # subscription-manager attach --pool=<pool_id>パッケージアップデートとfirewalldからiptablesへの切り替え(iptablesへの切り替えは必須ではないですが・・・) # yum -y update # yum -y install iptables-services #

    RHEL7でDockerを利用する手順 - めもめも
  • scikit-learnでよく利用する関数の紹介

    ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog はじめに こんにちは。ヤフーで広告プロダクトのデータ分析をしている田中と申します。 今回のAdvent Calendar 2014では、データサイエンスのプロセスの中の「分析・モデリング」で私がよく利用しているツールについて書いています。 どうぞよろしくお願い致します。 データサイエンスのプロセスについては、いろいろと定義があると思いますが 基的に以下の5つのプロセスからなると自分は考えています。 ・問題設定 ・データ抽出・加工 ・分析・モデリング ・評価 ・ビジネス提案/プロダクト実装 どのプロセスもとても大事で、例えば「問題設定」では、ビジネス的な課題(売上低迷・KPI低下)を分析課題に落とすのですが、ここを間違えてしまうと

    scikit-learnでよく利用する関数の紹介
  • CentOS 7にMongoDBをインストールする | 俺的備忘録 〜なんかいろいろ〜

    通常、データベースというとRDBMSをイメージすると思うが、このMongoDBRDBMSではなく、いわゆるNoSQLと呼ばれるものだ。 以下、Wikipediaから引用。 MongoDBRDBMSではなく、いわゆるNoSQLと呼ばれるデータベースに分類されるものである。RDBMSのようにレコードをテーブルに格納するのではなく、「ドキュメント」と呼ばれる構造的データをJSONライクな形式で表現し、そのドキュメントの集合を「コレクション」として管理する(このデータの物理的な格納はBSONと呼ばれるJSONのバイナリ版といえる形式で行われる)。コレクションはRDBMSのような固定的なスキーマを持たない。ドキュメントには複雑な階層構造を持たせることもでき、それらの構造に含まれるフィールドを指定したクエリやインデクス生成も簡単な指定によって行える。RDBMSのように高度な結合操作を効率的に行うこ

  • JavaScript フレームワーク - ペパボテックブログ

    フロントエンド周りの技術は驚異的なスピードで進化し、また多様化しています。それらを全てマスターするのは途方もなく大変なので、ペパボでは、社内のエンジニア・デザイナが「最低限これだけはおさえておこう」というスタンダードを文書化することにいたしました。社内向けを想定した文書ではありますが、社内のみに留めず多くの方に役立てたいと考えたため公開します。 この項目の担当 @hadashiA どうしてフレームワークを使う? (1) ドメインロジックとプレゼンテーションの分離 (2) SPA(シングルページアプリケーション) 流行り廃り (1) MVC (2) MVVM (3) Virtual DOM どれを使う? どうしてフレームワークを使う? (1) ドメインロジックとプレゼンテーションの分離 まずこちらの画面を見てください。 ©任天堂 スーパーマリオワールド スーパーマリオが右にダッシュすると、マ

    JavaScript フレームワーク - ペパボテックブログ
  • これから始めるAngularJS

    HTML5の普及とともに、より表現豊かなWebアプリケーションを開発できるようになりました。その反面、Webアプリケーションの開発は、より複雑に、より大規模になってきています。こうした問題を解決するために、数多くのフレームワークが生まれてきました。 Backbone.jsやKnockout、最近であれば、Vue.jsやFacebook社が発表したReactなどが挙げられます。 連載では、数多くあるフレームワークの中でも、今注目されているAngularJSについて幅広く紹介していきます。今回は、AngularJSに触れたことのない方に向けての入門編です。 AngularJSとは AngularJSはGoogle社製のフレームワークで、冒頭で挙げたフレームワークと違い、フルスタックであることが特徴の1つです。 データバインディングやルーティング、テンプレート機能をはじめとする、Webアプリケ

    これから始めるAngularJS
  • Hashicorp社の新サービスATLASと周辺ツールのまとめ | Pocketstudio.jp log3

    ■概要 ATLAS ( https://atlas.hashicorp.com/ ) は、Vagrant 等を開発している Hashicorp社 ( https://hashicorp.com/ ) が提供開始したサービスです。これまで提供していた Vagrant Cloud の環境をバージョンアップし、開発環境だけでなく、番環境への展開や運用を1つのワークフローで実現できるようにしたプラットフォームです。 ATLAS はクラウド上のサービスですが、これまでの Hashicorp が公開してきた Vagrant、Packer、Terraform、Consul を1つの画面上で管理できるようになりました。 以下では、サイト上の説明などを元に、ATLAS についてと、周辺ツールについて整理したものです。 ■ATLAS https://atlas.hashicorp.com/ サイトの説明によ

    Hashicorp社の新サービスATLASと周辺ツールのまとめ | Pocketstudio.jp log3
  • #10 Consulと連携するpull型デプロイツール stretcher - KAYAC engineers' blog

    tech.kayac.com Advent Calendar 2014 10日目担当の @fujiwara です。 最近書いている stretcher というデプロイツールの紹介をしたいと思います。 長いので3行で push型デプロイはホスト台数が増減しやすい環境に適さない 各種問題を解決するpull型デプロイツールを書いた Consul と連携するよ 中央ホスト配布(push)型デプロイの問題点 カヤックの自社サービスでは久しく Archer というツールを利用し、中央ホストから各デプロイ対象ホストrsync でファイルを配布する形のデプロイを行っていました。ここではこれを push 型と呼びます。 push型のデプロイは、ホスト台数が頻繁に増減する環境で以下のような問題があります。 新しくホストが起動してきた場合に、中央ホストからデプロイを行ったあとでないと (古い状態で起動してい

    #10 Consulと連携するpull型デプロイツール stretcher - KAYAC engineers' blog
  • Amazon S3とnanocで作る 安い・落ちないwebサイト

    2012年5月12日に青山ブックセンター店で開催された欧文書体セミナーTypeTalks第10回「もっと知りたい!Webフォント」のスライドです。 ・・・ 【追記1】スライド10の「Arialは何と呼ぶ?」は、日においてArialは色々な呼び方が流通しているという蛇足話で、正しい読み方を追求する意図はありません。統計データは当ブログのFacebookページで皆さんに行ったアンケート結果です。スライドのペラ1画像がひとり歩きしてしまっているため、この場で補足いたします。 【追記2】スライド62の「OpenTypeフォント機能に対応するブラウザ」は、現在Chromeも対応しています。 ・・・ 1. Webフォントとは? 1-1. Webで使えるフォント 1-2. Webフォントサービス 1-3. 利用者にとってのメリット 1-4. 制作者にとってのメリット 2. Webフォントの今 2-1

    Amazon S3とnanocで作る 安い・落ちないwebサイト
  • GradleによるJVMアプリケーションのパッケージングと配布 #gadvent - GeekFactory

    G*Advent Calendar(Groovy,Grails,Gradle,Spock...) Advent Calendar 2014 - Qiitaの10日目です。 アプリケーションを公開する際、ユーザが使いやすい形でアプリケーションを配布することで、より多くのユーザに使ってもらえることが期待できます。また、アプリケーションをサービスとして公開する際にも、インフラにデプロイしやすい形でアプリケーションをリリースすることで、より早くユーザに提供することができます。どんなに優れたアプリケーションであっても、インストールや実行に面倒な手間がかかる場合は魅力が半減してしまいます。 JVMベースのアプリケーションを配布する際の課題 JVMベース(Java、Groovy、Scalaなど)のアプリケーションをユーザに配布するには以下の課題が考えられます。 まず、アプリケーションの実行に必要な ja

    GradleによるJVMアプリケーションのパッケージングと配布 #gadvent - GeekFactory
  • MongoDB のデータを BigQuery にインポートするための mongobq - Qiita

    mongobq とは MongoDB の特定のコレクションのデータを BigQuery のテーブルとしてインポートするためのコマンドラインツールです。 想定している使用方法 fluent-plugin-bigqueryなどでBigQueryにログやトランザクション系のデータが登録済みである ログ中には商品IDなどは入っているが、商品の値段などの詳細データはMongoDBで管理されている 両者を JOIN して分析するために、MongoDB 上のマスタデータを BigQuery に日次バッチなどでインポートしたい インストール方法 npm パッケージとして公開しているので、Node 0.10 以上が必要です。 ソースはgithub上で公開しています。ご意見、機能追加要望などありましたら、こちらまで。 なお、mongobq を利用するには Google Cloud Platform の利用登録

    MongoDB のデータを BigQuery にインポートするための mongobq - Qiita
  • PostgreSQLカンファレンス2014に登壇してきた。

    PostgreSQLカンファレンス2014に登壇してきたので資料をアップします。 今回は初カンファレンス参加でしたが 日曜から39℃を超える熱を出して死にそうになり、 なんとか体調を取り戻して朝からスタッフ業をし、 英語がぜんぜん出来ないのに控室では英語飛び交い、 セッションを二こなし、 当日いきなり懇親会の司会業引き継ぎをされる というなかなかセクシーなスケジュールでした。 更にPostgreSQL アドベントカレンダーの担当日でそれはとっても嬉しいなって… 自分で切ったスケジュールながら過密で濃厚な一日を過ごすことが出来ました。 カンファレンスとしてはどのセッションも盛況でしたね。 特にハンズオンやチュートリアルのような初心者〜中級者のコマは立ち見が出るほどの大盛況でした。 (30人ぐらいの部屋に80人が押し寄せるようなセッションもありました) 私としてもガッツリDBエンジニア向けの

    PostgreSQLカンファレンス2014に登壇してきた。
  • Javaであまりしないコーディング - 日々常々

    Java Advent Calendar 2014 - Qiita の9日目です。9日ったら9日です。 なんか難しいエントリが多い中ですが、空気を読まずに軽めでいきます。 Javaでは色々なコードの書き方ができるけど、実際あまりやらないよなーって思うコーディングについて、やらない理由を無理矢理書いてみた。 決して「やってはいけないコーディング」と言う意味ではないです。単に「私はあまりしない」程度で、一般的な(?)業務開発でもあまり見ない、くらいの位置付け。理解した上でやる分には全く問題無いですし、そう言うもんだと思って使っても良いとは思います。 複数変数を同時に宣言する int i, j = 2, k; 同じ型の変数(フィールドでもローカル変数でも)は同じ文で宣言できます。 けど、あまり使ってるのは見ません。 同じ型でしか使えないし、フィールドだとJavaDocコメント書き辛いし、初期化式

    Javaであまりしないコーディング - 日々常々
  • GREEを支えるテキスト情報可視化ツールのご紹介 | GREE Engineering

    こんにちは、マーケティング部の戸井田明俊と情報システム部の亀井利光です。 Advent Calendarの7日目(今日でグリー創立10周年!)は、ユーザーの皆様から頂いたご意見・ご感想などのテキスト情報を可視化するツール、UserText Dashboard(以下UTD)を開発した話です。 背景・目的 グリーでは、ユーザーの皆様から頂いたお問い合わせなどのテキスト情報を管理しています。 それらは今までデータの種類によって別々のストレージで管理されており、管理ツールも様々なものが混在していました。 またテキスト情報とユーザー様の属性情報が紐付けられていなかったため、ユーザーセグメントごとの分析が不十分でした。 そこでユーザーの皆様のご意見・ご感想をもれなくくみとり、より多くの方に安心してご利用していただけるサービス運用の実現をめざし、テキスト情報を一括で管理できる社内BIツールを開発しました

    GREEを支えるテキスト情報可視化ツールのご紹介 | GREE Engineering
  • The Hadoop Ecosystem Table

    The Hadoop Distributed File System (HDFS) offers a way to store large files across multiple machines. Hadoop and HDFS was derived from Google File System (GFS) paper. Prior to Hadoop 2.0.0, the NameNode was a single point of failure (SPOF) in an HDFS cluster. With Zookeeper the HDFS High Availability feature addresses this problem by providing the option of running two redundant NameNodes in the s

  • Hive on Tez を CDH で動かす - Qiita

    Tezとは まずはTezの説明です。 TezはYARN上で動作するバッチ処理用のフレームワークで、Hortonworksが主導して開発しています。 Tezに近い位置付けのものには、リアルタイム処理用のSliderがあります。 HortonworksはSliderの上でStormを動かすことを計画しています。 Hive on Tezとは Hive on Tezは、上記のTezの上でHiveを動かすものです。 Hive 0.13からTez対応のパッチが入っていて、動かす準備はできています。 しかし、ClouderaはCDH 5.2でHive 0.13に対応したものの、Tezをパッケージングしませんでした。 そのため、そのままのCDHではHive on Tezが動きません。 Hive on TezをCDHで動かす方法 Tezはライブラリであるため、CDHのHive 0.13と組み合わせれば動作す

    Hive on Tez を CDH で動かす - Qiita
  • Hadoop関連本リリース予定 (2014/12版)

    4日目です。 2015/1/1: 最新情報を別ページにまとめました O’Reillyのサイバーセールで洋書を買いまくった皆様、いかがお過ごしでしょうか?前回のブログからだいぶ時間が過ぎてしまったので、今後出版される予定のHadoop関連のまとめを更新してみました。(一部O’Reillyじゃないものも含まれています) しかし象4版は来年秋かぁ、、、まだまだ先ですね 🙂 Early Releaseと見間違いました。ご指摘ありがとうございました> @tamagawa_ryuji  さん m(__)m #日語版楽しみにしてますw NoTitleRelease date和書名出版日雑感

    Hadoop関連本リリース予定 (2014/12版)
  • 2014年版 Hadoopを10分で試す(1)

    Hadoop関連(全部俺) Advent Calendar 2014:7日目 先週の研修中に、「Hadoopをこれから試してみたいけど、どこから始めたらいいでしょうか?」という質問がありました。 構築の勉強をしたいのであれば、今ならパブリッククラウドや仮想化環境を使えるので、実際に構築してみるのが良いでしょう。パッケージを手作業でインストールしても良いですし、Cloudera Managerを使えば簡単です。 MapReduceやSparkのジョブの開発方法を学びたいのであれば、環境を用意した上で、先日紹介したO’Reillyなどの書籍を利用したり、あるいはセミナーや研修を受講するのが良いかもしれません。 MapRediuceやSparkを試すための簡単な方法のひとつは、「Hadoop入門:Hadoopを10分で理解する」 シリーズで紹介したCloudera Managerであり、Clou

    2014年版 Hadoopを10分で試す(1)
  • GitHub - sanochiron/reading_the_linux_kernel_0.01: Linux 0.01を読み解く地図、ソースコードを渡り歩く前準備としてヘッダファイル全てに注釈を入れました

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - sanochiron/reading_the_linux_kernel_0.01: Linux 0.01を読み解く地図、ソースコードを渡り歩く前準備としてヘッダファイル全てに注釈を入れました
  • 開発効率化への道は一日にしてならず - tehepero note(・ω<)

    2014-12-08 開発効率化への道は一日にしてならず CyberAgent 開発 CyberAgent エンジニア Advent Calendar 2014の8日目です。 7日目はoinumeさんによるGoLangJavaのenumっぽいライブラリ作った話 - おいぬま日報 でした(弊社もGoがだいぶきてますねぇ)。 サイバーエージェント技術部に所属している@stormcat24です。特定のプロジェクトにはジョインしてなくて、技術的な支援とか特命的ミッションをしています(簡単に言うと雑用)。サービスに関わらせてもらう日は来るのでしょうか。 さて、この時期では自分のミッションの一つである開発効率化というテーマで書きたいとおもいます。思えばこの1年半くらい様々な取り組みをしてきたような気がします。 Vagrant Vagrantは仮想環境の構築を支援するツールで、ChefやAnsib

  • How To Deploy Flask Web Applications Using uWSGI Behind Nginx on CentOS 6.4 | DigitalOcean

    Status: Deprecated This article covers a version of CentOS that is no longer supported. If you are currently operating a server running CentOS 6, we highly recommend upgrading or migrating to a supported version of CentOS. Reason: CentOS 6 reached end of life (EOL) on November 30th, 2020 and no longer receives security patches or updates. For this reason, this guide is no longer maintained. See In

    How To Deploy Flask Web Applications Using uWSGI Behind Nginx on CentOS 6.4 | DigitalOcean
  • NGINX Tutorial: Developing Modules

    Aaron Bedra Aaron is a Senior Fellow at Groupon and has over 10 years of experience working with NGINX. ##1 Introduction This NGINX tutorial and the accompanying video will be a look into developing modules for the NGINX web server. Typically we use web servers like NGINX and Apache as simple reverse proxies for our web based software, leaving a lot of functionality on the table. We will explore n

    NGINX Tutorial: Developing Modules
  • Python言語によるプログラミング・イントロダクション

    Python言語によるプログラミング・イントロダクション: 世界標準MIT教科書 (近代科学社) サポートページ ここは,John V. Guttag著,Introduction to Computation and Programming Using Python (MIT Press) の訳書のサポートページです. 第二版のサポートページはこちら EdXで,書の内容に沿った講義MIT6.00x, MIT6.00.2xが無料で受けられます. 翻訳者 久保幹雄(東京海洋大学):1 章,付録Python 2.7 簡易マニュアル � 麻生敏正(東京海洋大学):2から4 章 � 木村泰紀(東邦大学) :5から7 章 � 藤原洋志(信州大学) :8から10 章 � 関口良行(東京海洋大学):11から13 章 � 小林和博(海上安全技術研究所):14から16 章 � 並木誠(東邦大学) :17から

  • DynamoDB + S3 + EMRでコホート分析(cohort analysis)をする(3)

    前回からかなり間が空いてしまったけど、今回で完結予定。 前回はHiveの話を中心に、S3に置いたファイルをHiveでどう扱うかなどについて書いた。また、第1回では全体の流れを書いたので、どんなことをやるかは詳しくはそちらを参照。 今回は、DynamoDBに書き込んでいるデータを定期的にS3にエクスポートしたり、MySQLからエクスポートしたデータに対して、EMR上のHiveからクエリーを実行して結果を取得してみる。 DynamoDBからS3にエクスポート DynamoDBは、事前に設定した読み書きのスループット以上のアクセスは出来ないし、同じデータに対して違うクエリーを複数実行する場合とかに無駄なので、過去データを定期的にS3にエクスポートする事にした。 テーブル定義 まずはDynamoDBのテーブルをHiveに認識させるために、以下のようなテーブルを作成する。 CREATE EXTERN

  • 「ELBからの通信で408が多発する」件で、結局どうすべきか調べたのでまとめた - 双六工場日誌

    少し前にQiitaにこんなエントリが載っていました。問題としては、ELB配下に配置したApacheサーバで、レスポンスコード408で中身のないログが数秒おきに出続けるというものです。 AWS - ELBからの通信で408が多発する - Qiita この現象は、自分のところでも出ていて、このエントリにあるように公式フォーラムを見ても解決せず、原因がわからず困っていました。このエントリを見て、自分でも検証してみましたが、事象の分析としては、このQiitaのエントリにある内容の通りみたいです。 TCPコネクションを張ったあと、HTTPデータが来ないため、mod_reqtimeoutがDoSと判定して、apacheがコネクションを終了させている。 この件をググって見つけたのですが、qpstudyのリーダーこと、@iaraさんも2年前にこれを取り上げていますね。 Cloudpack night03

    「ELBからの通信で408が多発する」件で、結局どうすべきか調べたのでまとめた - 双六工場日誌
  • CloudFormationのStack(templateファイル)を作成する前に知っておくべきこと - Qiita

    これを読むとわかること 一度作ったことがある人はわかると思いますが、 「時間が掛かる」ので少しでも 「技術的ではなく事前知識で」時間を省略してHappyになりましょうねっ!っていうお話。 難しいことは書いていないので・・ タイトルだけ読むと良いと思います 1. Amazonが提供しているテンプレートの再利用は、効率上がるように見えて非効率なこともある CloudFormationの文法やお作法は慣れていないと最初はテンプレートに頼りがちになります。確かにすごく役に立つテンプレートがいっぱいありますが、それをそのまま自分のシステムに適用する場合は、当然、どういう設定がされているか内容を把握しておく必要もあります。ファイルを開くと結構なコード量があり、多くの行を読まされてしまいます。また中にはちゃんと動作しないケースもあります。変にそこに悩んで調べてしまうよりは、ダメだったら自分で作るほうが良

    CloudFormationのStack(templateファイル)を作成する前に知っておくべきこと - Qiita
  • Kinesisの複数PUT対応APIを試してみた | DevelopersIO

    はじめに AWSチームのすずきです。 AWSが提供するストリーミングデータの受口となるAmazon Kinesis。 2014年12月のアップデートにより、複数レコード(最大500件、1件50KBの合計容量上限は4.5MB)の登録を、1回のAPI実行で行う事が可能となりました。 Amazon Kinesis Update - New High-Throughput PutRecords API Function Kinesisの用途が広がる可能性がある当機能、AWS CLIを利用し簡単に試す事が可能となっていますので、紹介させて頂きます。 準備 OSはAmaon Linux 201409を利用します。 EC2ロールとして、Kinesisを含むIAM権限を付与済とします。 AWS CLIは1.6.6以降を必要とするため、OS付属のものを入替えます。 AWS CLI 1.6.6.リリース情報(

    Kinesisの複数PUT対応APIを試してみた | DevelopersIO
  • 第15回 Solr勉強会 #SolrJP Amazon CloudSearch Deep Dive

    AWS Black Belt Tech Webinar 2016 〜 Amazon CloudSearch & Amazon Elasticsearch ...

    第15回 Solr勉強会 #SolrJP Amazon CloudSearch Deep Dive
  • Elasticsearch in Apache Spark with Python

    Sloan Ahrens is a co-founder of Qbox and is currently a freelance data consultant. In this series of guest posts, Sloan will be demonstrating how to set up a large scale machine learning infrastructure using Apache Spark and Elasticsearch. This is part 2 of that series. Part 1: Building an Elasticsearch Index with Python on an Ubuntu is here.  -Mark Brandon  In this post we're going to continue se

    Elasticsearch in Apache Spark with Python
  • [Rails] RSpecのリファクタリング - Qiita

    Ruby on Rails Tutorialのエッセンスを自分なりに整理してみる7 Railsにおけるリンクの記述方法とそのテスト http://qiita.com/kidachi_/items/d704e7eb63513c3831ae の続き。 Ruby on Rails Tutorial(chapter5) http://railstutorial.jp/chapters/filling-in-the-layout#sec-layout_exercises Rspecのリファクタリング 指定のページが指定の要素を持っている(もしくはいない)かをチェックするテストコード。 require 'spec_helper' describe "Static pages" do describe "Home page" do it "should have the h1 'Sample App'"

    [Rails] RSpecのリファクタリング - Qiita
  • CircleCI経由でRailsアプリをデプロイ - Qiita

    最近CircleCIもprivate repoのビルドが無料になった。(1コンテナまで) せっかくなので使ってみようということで、 Railsアプリのビルド実行に使うサービスをwerckerから乗り換えてみた。その設定などのメモ。 Continuous Integration and Deployment on CircleCI just got better: now it’s free. | The Circle Blog 設定ファイル 他のCIサービスと同じく、基的にRailsプロジェクトのルートディレクトリに置いたyamlファイル(circle.yml)に記述していく。 設定については、ドキュメント見れば詳しく書いている。 Configuring CircleCI - CircleCI 凝ったことをする必要がなければ、そんなに設定をいっぱい書かずともビルドとデプロイができる印象。

    CircleCI経由でRailsアプリをデプロイ - Qiita
  • "Rails 4で作るドラッグアンドドロップで表示順を変更できるサンプルアプリ"をAngularJSで - Qiita

    はじめに 『Rails 4で作るドラッグアンドドロップで表示順を変更できるサンプルアプリ(スクリーンキャスト付き)』という記事,読まれたことがある方も多いと思います. RailsでAjax(via jQuery)を使ったデータの更新,ドラッグアンドドロップの実現,その他UXを向上させるためのいろいろな技などが詰まった最高にありがたい記事です.拝むしかない. お世話になった方も多いのではないでしょうか. 稿はjQuery & jQuery UIで実現されていた機能を,AngularJSを用いて実現してみるという内容になってます. (ざんねんながらスクリーンキャストはありません.眠すぎて撮れませんでした.) 元ネタと大きく異なるところを列挙していくようなものになると思います. ソースコード GitHubにおいてます.ごかくにんください. izumin5210/sortable-table-s

    "Rails 4で作るドラッグアンドドロップで表示順を変更できるサンプルアプリ"をAngularJSで - Qiita
  • GitHub - johnpapa/angular-styleguide: Angular Style Guide: A starting point for Angular development teams to provide consistency through good practices.

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - johnpapa/angular-styleguide: Angular Style Guide: A starting point for Angular development teams to provide consistency through good practices.
  • 【CyberAgent】技術情報/TechReport - テックレポート/MongoDBの運用について | 株式会社サイバーエージェント

    ■はじめに 弊社でも、ピグライフをはじめとしてモバイルゲームなどのサービスでMongoDBを使い始めています。 運用に関してはMySQL等にはまだノウハウ的にはかなわないものの、NoSQLのジャンルの中では有用なプロダクトであるといえるかと思います。 ですが、運用に関しての共有ができておらず、有効な使い方ができていないパターンも多いです、そのため運用に関してノウハウを共有するための資料を作成しました。 ■概要/特徴 MongoDBには以下のような特徴がある ●      BSONによる、JSONによるスキーマレスなデータ運用 これにより、柔軟なデータ構造をわかりやすく表現できる。 加えてスキーマレスなため、データの構成を柔軟に帰ることが出来る ●      レプリカセットによる冗長化対応 MySQLでも、マスタを冗長化するためには、MySQLCluster、MHAなどのプロダクトがあ

  • AWS Lambdaを使ってサイト監視 | HAWSクラウドサービス

    AWS re:Invent 2014で発表された新サービスAWS Lambda。 先日Limited Previewの申請が通ったので早速Lambda使って何かできないかと思い、Webサイトの監視をLambdaを使って実現してみました。 5分間隔で指定したサイトを監視し、400、500系のレスポンスが帰ってきた場合は、SNSに異常状態である旨メッセージ通知をします。 LambdaはS3上のファイルの変更やKinesisに届いたメッセージ、DynamoDBへのデータの更新といったイベントに反応して任意のコードを実行できるプラットフォームです。Lambda自体に定時処理を行うような仕組みは用意されていないので、Lambda Function内部でS3にオブジェクトをPUTすることでLambda Functionの実行をループします。 処理は↓のステップで行います。 site-監視時刻ミリ秒(例

    AWS Lambdaを使ってサイト監視 | HAWSクラウドサービス
  • JMeterとJUnitとMavenで独自プロトコルサーバーの負荷テストを自動化するぞ | GREE Engineering

    こんにちは、インフラストラクチャ部の@nagaseyasuhitoです。このエントリは GREE Advent Calendar 2014 10日目の記事です。昨日はイケメンmoritaさんによる男性エンジニアリングマネージャが長期育休を取った話でした。 エンジニアブログのアカウントは2年くらい前からあるのですが、これが初エントリになります。グリーでは比較的珍しいJavaEEを始めとしたサーバーサイドJavaアプリケーションの開発、SolrやHadoopといったミドルウェアの周辺機能開発や運用などを行っています。どうぞよろしくお願いします。 最近はPvE/PvP/GvGなどユーザー同士がリアルタイムに協調プレイする際、クライアント-サーバー間を常時接続通信で行うゲームが増加しています。このような場合はHTTPのREST APIなど慣れ親しんだプロトコルでは要件を満たしきれないため、Web

    JMeterとJUnitとMavenで独自プロトコルサーバーの負荷テストを自動化するぞ | GREE Engineering
  • Rails で静的ファイルを撒く時に考えること : sonots:blog

    Rails で静的ファイルを撒く時に考えること : sonots:blog
  • 最小のdockerイメージを作る

    Dec 9, 2014 この記事はDocker Advent Calendar 2014の9日目です。 書こうと思ってたことが完全にネタかぶりしたので今日はどうでもいい小ネタを書きます。 dockerのイメージをDockerfileで作るにはベースイメージが必要ですよね。例えばgoを使ったWebアプリケーションを作ろうと思ったら公式のgolangイメージを使う人が多いだろうと思います。 公式の安心感もあるし基的にそれでいいと僕も思うんですが、サイズが大きいんですよね。今手元でdocker pull golang:latestしたら448MBあるみたいです。 僕が欲しいのはgoでビルドしたらバイナリの実行環境であって全てが揃った完全なdebianではないのです。 ということで、今日のテーマは可能な限り小さいdockerイメージを作ることです。 scratchイメージ 公式にscratch

  • APIのエラーハンドリングを見直そう - WebPay Engineering Blog

    ここ数ヶ月にわたって、WebPayはAPIのエラーにまつわる変更を少しずつ行ってきました。 それに付随してドキュメントも拡張しましたが、変更の背景について十分に説明できていない部分がありました。 この記事では、最近のエラーに関連した変更の背景を紹介し、今後どのようにエラーをハンドルすべきか説明します。 記事の内容は執筆時点のものであり、今後同じようにエラーやAPIの変更を行うことがあります。 変更があっても記事の内容はその時点の内容を保持し、ウェブサイトのドキュメントのみ更新します。 必ずウェブサイトのドキュメントを合わせて参照し、手元で動作確認を行ってください。 エラーはなぜ起きるのか WebPayのAPIは、リクエストされた操作ができなかったときにエラーを返すように設計しています。 可能なかぎりエラーにならないような設計、実装を心がけていますが、エラーは絶対に避けられません。 例えば、

  • 機械学習はじめの一歩に役立つ記事のまとめ - その後のその後

    機械学習」というワードになんとなく惹かれつつも、具体的にやりたいことがあるわけでもないので、手を動かすことなくただひたすら「いつかやる」ために解説記事やチュートリアル記事を集める日々を過ごしていたのですが、このままじゃイカン!と Machine Learning Advent Calendar 2014 - Qiita に参加登録してみました。 が、やはり何もしないまま当日を迎えてしまったので、お茶濁しではありますが、せめて「機械学習ってどんな手法やライブラリがあって、どんな応用先があるのか?」というあたりをざっくり把握して最初に何をやるのか方向付けをするためにも、たまりにたまった機械学習系の記事をいったん整理してみようと思います。 機械学習の概要 特定のライブラリや手法の話ではなく、機械学習全般に関する解説。 機械学習チュートリアル@Jubatus Casual Talks 機械学習

    機械学習はじめの一歩に役立つ記事のまとめ - その後のその後
  • fluentd pluginで集計処理をする(Norikra以外で) - Qiita

    はじめに 世間的には「fluentdで集計 ≒ Norikra!!!!!」という流れで、それに対して一石を投じる気のかけらも私には無いわけですが、Norikraを用いるまでもない軽微な処理を実行する場合fluentdのプラグイン単体で処理を完結したいケースもあり、そしてNorikraが若干重厚に映るケースもあります(JRuby!! Esper!!!) ということで、集計が行えるようなfluentd pluginについてまとめてみます。チョイスは僕の独断と偏見です。 ユースケース fluentdの基的なユースケースは、inputとして入力をしたデータをoutput先にrelayする、というものです。そして集計処理は、多くの場合output先のシステム内、もしくはシステムに蓄積されたデータを用いて別のシステムを用いて行う事が多いと思います。 (ex. HDFSに保存したログデータをHiveを

    fluentd pluginで集計処理をする(Norikra以外で) - Qiita