タグ

mixiに関するmogwaingのブックマーク (15)

  • mixi の解析基盤とApache Hive での JSON パーサの活用の紹介 - mixi engineer blog

    こんにちは.最近ピクルス作りで精神統一をしている,たんぽぽグループ解析チームの石川有です. このブログではお馴染みのたんぽぽグループですが,"No More 「刺身の上にタンポポをのせる仕事」 - 単純作業の繰り返しで開発者の時間を浪費しないために。"というミッションを持っています.その中で解析チームは,データ解析基盤の構築,データマイニング,データ解析の社内コンサルティングを行ない技術からの改善を担当しています. 今回の記事では,mixi における解析基盤について簡単に触れたあと,その基盤における「刺身の上にタンポポをのせる仕事」をどう減らすかの2点について書きます. mixi の解析基盤 まずは解析環境について,簡単にお話します.2012-08 現在 mixi では,主な解析用のツールとしては,Apache Hadoop, Hive を利用しています.またあわせて,自分など一部の人は,

    mixi の解析基盤とApache Hive での JSON パーサの活用の紹介 - mixi engineer blog
  • mixi Engineers’ Blog » memcachedのストレージ層をmodularにしてみた

    前回に続いてまたmemcachedの話をしたいと思います。今回は改造編です。 ハッシュデータベースサーバなどの実装でmemcachedライクなものを書くのも良いですが、以前からmemcached自体のストレージをmodularにできたら面白いかも?と思っていたので実験的にmemcachedを改造してみました(memcached-1.2.4がベース)。 とりあえず名前はmemcached modularの略でmmcmodと名づけて、mikioさんのTokyo Cabinetをストレージとして使うモジュール(厳密にいうと共有ライブラリ)を書きました。ソースコードは後日CodeReposの方に上げますがとりあえずこの記事で公開します。ちなみに新しいプロダクトを作る気はなくて、最終的にpatchを作ることが目的です。 で、話を続けると今回の改造を簡単にビジュアライズするとこんな感じです: 図のmm

    mixi Engineers’ Blog » memcachedのストレージ層をmodularにしてみた
  • MySQLのInnoDBでのデッドロック - mixi engineer blog

    こんにちは、mixi開発部にてアプリケーション開発をしていますyouheiです。 今回は、MySQL-5.0.45のInnoDBで連番を管理するテーブルのパフォーマンス測定をしていたのですが、その際に少し変わったデッドロック問題に遭遇しましたので、そのあたりをネタとして書いてみたいと思います。 まずは、今回使用したデータベースのスキーマは下記のようなものです。 CREATE TABLE num ( id bigint unsigned NOT NULL default '0' ) Engine=InnoDB; AUTO_INCREMENTは使用していません。 そこに1レコードだけ登録します。 INSERT INTO num (id) values (1); そして実際連番を取得する際には、 UPDATE num SET id = LAST_INSERT_ID(id+1); といったクエリを

    MySQLのInnoDBでのデッドロック - mixi engineer blog
  • 今回のmixiのリニューアルについて - 専門家に聞く [All About プロファイル]

    Web制作・クリエイティブ どこがどう良くなったんでしょうか? 一見のパッと見た目は印象が良くなったかもしれませんが、長時間使い続けるユーザーからすると、見づらく疲れるデザインで、メリハリがないため、エリア視認性がとても悪く、情報把握が非常にしづらいのですが。 専門的にどうなのか詳しく解説していただきたいです。 質問者│サリエル・東京都・男性・35歳 はじめまして クロスウェーブの鈴木です 最初に画面が公開された時は期待したのですが、確かに見づらいものがありますよね。 CSSでのコーディングが中心になり、今後の機能追加でのデザイン追加等が容易になるなどのメリットが運営者側にはあったと思いますが、これではユーザー側のメリットがわかりづらいものがありますよね。 今後の修正に期待していますが・・・ 私の環境でも崩れる場面があり使いづらいです。 評価ありがとうございます 「CS

  • @IT: 「ぼくはまちちゃん」 ――知られざるCSRF攻撃

    ある日、大手SNS(Social Networking Site)のmixiの日記にこのような書き込みがあった。それも1人だけでなく、同日に数多くのユーザーの日記に同じ文面が掲載されていた。 これは、単にこのような文章がはやり、ユーザー自身が意図して掲載したのではなく、ある仕掛けによってユーザー自身が気付かないうちに引き起こされた現象なのである。その仕掛けとは、CSRF(Cross-Site Request Forgeries)と呼ばれる攻撃手法の一種だ。 編集部注: 現在、「はまちちゃん」トラップは、mixi運営者により対策されています。上記のサンプルは、mixi風に再構成したものです。 稿の内容を検証する場合は、必ず影響を及ぼさない限られた環境下で行って下さい。また、稿を利用した行為による問題に関しましては、筆者およびアイティメディア株式会社は一切責任を負いかねます。ご了承ください

    @IT: 「ぼくはまちちゃん」 ――知られざるCSRF攻撃
  • mixi Engineers’ Blog » Inside Tokyo Cabinet その弐

    予定を立てた途端にやりたくなくなる症候群に堪えて連載を続けるmikioです(こんな私でもエアーマンくらいは倒せます)。前回はDBMの基について説明しましたが、それを忠実に実装しても実際には使いものにはならないことにも触れました。今回は、実用的なDBMに進化すべく、Tokyo Cabinet(およびその前身のQDBM)で考えた工夫についてお話します。 ハッシュ関数についてもう少し 前回の記事に関して、「ハッシュ関数はビットシフト使って実装した方が早いよ」という旨のお便りをいただきました(ありがとうございます)。まさにその通りで、乗算命令(ここではimull)より左シフト命令(ここではsall)の方が速いみたいです(Intelの資料によると、mulが15から18で、salが4とのこと)。しかし、DBMの場合はファイルI/Oにかかる時間が支配的になるというのが重要な点です。したがって、ハッシュ

    mixi Engineers’ Blog » Inside Tokyo Cabinet その弐
  • Inside Tokyo Cabinet その壱 - mixi engineer blog

    約半年間の沈黙を破ってOSSの世界に戻ってきつつあるmikioです。先日、Tokyo Cabinet(以下「TC」と呼びます)というデータベースライブラリをリリースしました。今回から数回に分けて、TCの設計と苦労話について連載してみます。 DBMとは TCは、いわゆるDBMの系譜のデータベースライブラリで、単純なハッシュテーブルをファイル上で永続化するだけの機能を提供します。DBMはAT&Tの古代UNIXの時代から受け継がれる伝統芸能なのですが、私はそういう枯れた技術が大好きなのです。 プログラマの皆さんは、PerlRubyではハッシュ(連想配列)と呼ばれ、JavaC++ではmapと呼ばれるような、何らかのキーに関連づけてなんらかの値を記録するデータ構造って実によく使いますよね。例えばmixiでは、ユーザアカウントに関連する情報(名前とかニックネームとか)は、ユーザIDをキーにしたハッ

    Inside Tokyo Cabinet その壱 - mixi engineer blog
  • mixi Engineers’ Blog » Linux Programming、epollの話

    お久しぶりです、初めての日の夏に圧倒されているトールマエサカです。 今日はLinuxにおけるネットワークプログラミング関連のネタです。分散データベースサーバの開発過程で最近よくLinuxのepollというイベントハンドリング機能を使っています。これがまた優秀な機能なので紹介します。 このContextでいうイベントハンドラーはサーバがクライエントのリクエストを処理するためのメカニズムです。イベントの感知と通知は大雑把にいうと以下の三つの処理で構成されています: 一つもしくは複数のディスクリプタを監視 ディスクリプタの準備が整うまでハチ公のごとくひたすら待ち続ける 準備が整ったディスクリプタの通知 アプリケーションでの実装は一昔までselect(2)、もしくはpoll(2)というシステムコールで行われていました。二つとも役目は同じですがselect(2)の場合、kernelをいじらない限り

    mixi Engineers’ Blog » Linux Programming、epollの話
  • http://mixi.jp/issue_ticket.pl は OpenID server だったよ - 知らないけどきっとそう。

    mixiのURLにOpenIDっぽいパラメータがくっついてる件 http://blog.fkoji.com/2007/08051128.html OpenID大好きなので、少し調べてみました 結論から言うと、news.mixi.jp とか video.mixi.jp とかの、mixi.jp と別ドメインにセッションを引き渡すために使ってるぽい このあたりの話のあと、cookiedomain指定をやめたのかもしれない http://kaede.to/~canada/doc/mixi-and-cookie リクエストのやりとりはこんな感じ ログインしてcookieもらう(domain指定なしなので mixi.jp にしか渡されない) POST /login.pl HTTP/1.1 Host: mixi.jp HTTP/1.x 200 OK Set-Cookie: BF_SESSION=***

    http://mixi.jp/issue_ticket.pl は OpenID server だったよ - 知らないけどきっとそう。
  • 端っこなひとの備忘録- 第65回カーネル読書会「mixiの話」のメモ

    7月6日(木)の第65回カーネル読書会「mixi.jp: Scaling Out With Open Source 」に行ったときのメモ。 忘れてきつつあるのでメモをブログへあげとこうと思ったら、レポートを書かかれているブログがいくつかあった。 にぽたん研究所「BKCon 2006」 ようの日記「今回のカーネル読書会はmixiの中の人」 ユメのチカラ「500万倍のスケーラビリティ」 ユメのチカラ「LiveJournalのアーキテクチャ」 カイハツニッキ「第65回カーネル読書会レポート」 上のブログの記事で聞いた内容のほとんどカバーされている上に、私よりはるかに正確な気がする。 まあいいか、復習のためにメモしておこう。 DBまわりが肝という結論だったのだけど、DBはあまり知らないので肝心なところがついていけてなかったなあ。 お話が日語、パワーポイント英語ということもあってメモ取りに苦戦、

  • g:hatena:id:hatenatech カテゴリーの記事一覧 - Hatena Developer Blog

    8月17日の技術勉強会 - Flexレイアウト手書き勉強会 8月17日に行われました技術発表会の内容を撮影した動画ファイル/資料を公開いたしました。内容は以下のとおりです。 テーマ Flexレイアウト手書き勉強会 発表者 d:id:secondlife 勉強会動画 ダウンロード…

    g:hatena:id:hatenatech カテゴリーの記事一覧 - Hatena Developer Blog
  • BKCon 2006 - にぽたん研究所

    昨日は BKCon 2006 に行ってきた。 BK というのは「一般的にはバッドノウハウの事」なんですが、昨日のは、BKCon と言っても、かつて開催された Bad Knowhow Conference 2004 の続編とかではなく、"B"atara "K"esuma "Con"ference 2006 です。 ※正しくは横浜 Linux ユーザグループ主催の「第 65 回カーネル読書会」のテーマ "mixi.jp: Scaling Out With Open Source" です。 ちなみに、Batara Kesuma さんというのは、株式会社ミクシィの取締役。 mixi の裏側を見せますというか、ちょっと hip な言いかたをすれば "Inside mixi's backend" ってカンジです。 とりあえず、プレゼン内容は YAPC::Asia の時と大凡同じでしたが、プレゼンの持ち

    BKCon 2006 - にぽたん研究所
    mogwaing
    mogwaing 2007/07/09
    mixiはほとんどinnodbらしい
  • カンブリア宮殿を見ていたら、mixiのサーバは、 さくらインターネット http://www.sakura.ad.jp/ http://www.sakura.ne.jp/ のデータセンターを利用しているっぽ…

    カンブリア宮殿を見ていたら、mixiのサーバは、 さくらインターネット http://www.sakura.ad.jp/ http://www.sakura.ne.jp/ のデータセンターを利用しているっぽい感じでした。 mixiは、1日15000人ペースでユーザが増えて、それに対応するために、1日1台サーバを増やしているそうですね。 そこで、気になったのですが、mixiのサーバは、さくらインターネットのプランで言うと、どれに該当するのでしょうか?もちろん、mixiのようなお得意様とは契約状況も通常とは違うのでしょうが、サーバのプラン的にどれが近いのでしょうか?さくらインターネットは、「専用サーバ」のプラン内でも細かく分かれているので、気になりました。 また、以前は、GREEも、さくらインターネットを利用していたと聞きます。GREEは、初めは田中社長が一人で運営していたわけですし、さくらイ

  • Perlモジュール/WWW::Mixi - Walrus, Digit.

    Mixiに簡単にアクセスするためのLWP::UserAgentライクなモジュール。 更新情報、不具合情報などはmixiのWWW::Mixiコミュニティにも挙げていきます。 WWW::Mixiコミュニティ WWW::MixiモジュールはCPANにも登録済みです。 Mixiに特化したLWP::RobotUAモジュールのサブクラスです。 WWW::MixiはふつうのLWP::UserAgentのように使うことができます。 例えば、次のような手順でCookieを有効にし、ログインし、トップページ(home.pl)を取得することができます。 この書き方であれば、use WWW::Mixiの代わりにuse LWP::UserAgentとかuse LWP::RobotUAとして、WWW::Mixi->newの行を適当に書き換えてやると、それでもトップページの取得ができます。 use WWW::Mixi;

  • mixiをユーザ認証に使えるか(工夫次第で使えるかも) « ku

    MovableTypeでコメントを投稿する際に、ユーザ認証に使われているtypekeyは、以下の流れで認証を行う。 プログのコメント欄にある”サインイン”リンクをクリックする typekeyのサイトでサインインする MovableType側に用意されているtypekey認証用のエンドポイントへリダイレクトされ、認証されたユーザの情報がパラメータとして渡される MovableTypeが設置されているドメインでユーザ情報を格納したクッキーが発行される ようするに、アクセスしているのが誰なのかを知っているtypekeyのサーバが、MovableTypeに用意されているエンドポイントに、ユーザの情報をパラメータにつけて送ってくれるということだ。 基的には、アクセスしているのが誰かを知っているサービスがあって、それと通信することができれば、任意のサービスをユーザ認証に利用することができる。もちろ

  • 1