MongoDB には、地理空間のインデックスが用意されていて、簡単に位置情報を操作することが出来ます。 今回は、つぶやきを HTML5 の Geolocation API から取得した位置情報とともに MongoDB に保存しておき、 現在地近くのつぶやきだけを検索して表示するという簡単なサンプルを作ってみます。 ありがたいことに、うえじゅんさんの作った Node.js + MongoDB のサンプルがあるのでこれをベースに作っていきましょう。 https://dev.classmethod.jp/server-side/node-socket-io-mongodb/ 位置情報を保存するフィールドを定義 つぶやきのモデルに位置情報の保存フィールドを定義します。 「message.coffee」 mongo = require 'mongoose' mongo.connect 'mongod
従来はさくらインターネットのレンタルサーバーのスタンダードプランしか契約してなくて、cgiしか動かせないのでちょっと大変だった。そこで思い切ってVPSを契約して動かしてみた。とりあえずメモ。 さくらのVPSを契約 CPU仮想2コア メモリ1GB HDD100GB 月額980円(年額10,780円) というプラン(一番安いやつ)にした。 契約後、すこし待つと、メールでrootの初期パスワードが送られてきた。 コントロールパネルに入り、マシンを起動させる。 ユーザーまわり Macのターミナルから、 $ ssh root@(サーバーのIP) Password: (初期パスワード)これでつながった。 まずはrootのパスワードを自分で考えたものに変更し、さらに一般ユーザー「nacookan」を作り、これにもパスワードを設定する。 そして権限を与える。 # passwd (rootの新しいパスワード
前から気になっていた Heroku + MongoHQ を試してみた。HerokuはRubyアプリケーションを走らせるホスティングサービスで、MongoHQはMongoDBのホスティングサービスだ。この二つを組み合わせることで、MongoDBを使ったRubyアプリケーションを一瞬で運用開始することができる。 あまりにも簡単に使えてあまり書くこともないんだけどメモ。 まず、両方とも最低限の環境は無料で使用できる(ただしHerokuからMongoHQを使うためにはクレジットカードの登録は必要っぽい)。 今回は Ruby on Rails 3 + Mongoid で作ったアプリを置いてみた。 手順 1. まず、普通に RoR + Mongoid のアプリケーションを作る 2. Herokuにアカウントを作りアプリケーションを登録する (http://docs.heroku.com/quickst
Mitsumasa Kubo (@beatinaniwa) interests: football, natural language processing 先週GumchartというGumroadの人気アイテムをTwitterからランキングするウェブサービスを作りました。 おかげさまでアクセスはほとんどないんですが、Tweetを収集して保存して運用しようというときに参考になるようなまとまった日本語記事があまりなかったのでそれについて書きたいと思います。英語の記事では次の記事が一番参考になりました。 Twitter Streaming with EventMachine and DynamoDB まずはどこにどういう形式でTweetを保存するか決めます。もちろんローカルのMySQLにでもいいんですが、MongoDBを個人的に使ってみたかったのと、MongoDBのホスティングサービスであるM
設定については下記URL参照。 http://fuelphp.jp/docs/1.5/classes/mongo/introduction.html FuelPHPのMongoDBクラスを使用したデータ取得等のサンプル。 想定バージョン : FuelPHP 1.5 instance <?php $mongo = \Mongo_Db::instance(); get / get_one / get_where データ取得系 <?php // SELECT * FROM $collection_name WHERE type = 1; $mongo->where(array('type' => 1)); $result1 = $mongo->get($collection_name); // SELECT * FROM $collection_name WHERE type = 1 LIMIT
はじめに SaaS型WAF「Scutum(スキュータム)」では、最近バックエンドのDBにMongoDBの導入を進めています。私も個人的にPHPのフレームワークであるCakePHP向けにMongoDBを扱うプラグインCakePHP-MongoDB Datasourceを開発し、公開しています。 https://github.com/ichikaway/cakephp-mongodb/ 今回は、PHPからMongoDBを扱う際の注意点として、RequestInjection攻撃に関して書きたいと思います。この問題は、phpマニュアルのMongoドライバーの章でも扱われています。 この記事では、はじめにPHPでMongoを操作する方法、PHPの基本を書き、最後にInjection攻撃の仕組みと対応方法を書きます。 PHPでMongoDBを扱うには PHPでMongoDBを操作する場合、10gen
mongoDBのコレクションにはnatural orderという概念があります。sortせずにfindするとインサートされた時間が古いものから順番に取得されますが、この並び順がnatural order。 新しい順にドキュメントを取得したい場合は sort に { $natural: -1 } と指定すればおけー db.Hoge.find().sort({ $natural: -1 }); 連番フィールドや時刻フィールドを用意してsortするよりもかなり速いです。 ただし、natural orderはディスク上の物理的な順番なので、分散環境でチャンク移動が発生した場合や、updateでドキュメントが大きく変更された場合などに変わってしまいます。だいたい新しい順でいいやー、というようなゆるい状況でなければ使えません。 ※ capped collectionはインサート順とnatural or
MongoDBイン・アクション 作者: Kyle Banker,Sky株式会社玉川竜司出版社/メーカー: オライリージャパン発売日: 2012/12/14メディア: 大型本購入: 5人 クリック: 55回この商品を含むブログ (4件) を見る MongoDB集計機能 CentOSでNginxのログをFluentdを使ってMongodbにリアルタイムで格納する - Yuta.Kikuchiの日記 時給3000円のCEOと揶揄されている@yutakikucです。今日は簡単にMongodbのログ集計機能を紹介します。機能が豊富過ぎて泣けてくるんで、ログ解析する人は是非使ってみて下さい。FluentdでMongodbにNginxのLogを流し込む設定は上のエントリーを参照して下さい。次回はAggregationFramework/MapReduce周りについて触れたいと思います。 泣ける話 : 集
> 原文(Why MongoDB is a bad choice for storing our scraped data) 私自身はMongoDBを推進する立場なのだが、確かにMongoDBに適さないケースはある。 闇雲に推進しても結局は全員がアンハッピーになるので、この様なネタもどんどん紹介していこうと思う。 この記事はMongoDBを徹底的に使い尽くしたエンジニアが書いている様で状況が良く解った。 ちょっと難しい所もあるので要点を意訳して、軽く解説を書いてみる。 (もちろん是非原文で読むのをお勧めする) 状況 最初はMongoDBでうまく動いていたが、だんだん苦労が増えてきて 元々のアーキテクチャを刷新するタイミングでMongoDBから別のプロダクトに乗り換える事にした。 システムの規模 詳しく書かれていないが、1ノード辺り数TBとあるのでSharding環境ではないかと思われる。
MongoDB is available in two server editions: Community and Enterprise. This section of the manual contains information on installing MongoDB. For instructions on upgrading your current deployment to MongoDB 8.0, see 8.0 Upgrade Procedures. For instructions on upgrading to the latest patch release for your current version, see Upgrade to the Latest Self-Managed Patch Release of MongoDB. For documen
based on v2 (2010/08/22 更新) - オリジナル (訳注: それぞれの更新情報は各ページに書いてあります) これはMongoDBのマニュアルです。 特に注意書きがない限り、すべての例はmongo shellを使ってのJavascriptです。 この 表 にドライバー毎の文法があります。 コネクションデータベースコマンドデータベースの複製fsync コマンドインデックス関連コマンドLast Error コマンドWindows サービス動作中の処理の参照と停止Validate コマンドデータベースコマンド一覧MongoメタデータコレクションcappedコレクションcreateCollection コマンド大量のコレクションを扱うData Types と Conventions国際化された文字列オブジェクトIDdatabase referenceGridFSいつGridF
MongoDBの起動 $ service mongodb start mongodb start/running, process 17283 $ ps ax | grep mongo 17288 pts/0 S+ 0:00 grep mongo 一見エラーなく起動してそうなのですがpsコマンドで確認してもmongodプロセスが存在しません。 この時のMongoDBのログファイルです。 $ tail /var/log/mongodb/mongodb.log ************** Unclean shutdown detected. Please visit http://dochub.mongodb.org/core/repair for recovery instructions. ************* Wed Mar 7 22:12:47 [initandlisten
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く