データストア
本記事は国産のモバイルアプリ開発ツール「Monaca Education」でぷよぷよをプログラミングできる「ぷよぷよプログラミング」に、ランキング機能を追加実装するコンテンツとなります。 「ぷよぷよプログラミング」は、プログラミングを学ぶ上での基本である写…
mBaaSのデータストアではACLを使ってデータの利用を細かく制限できます。自分や友達だけ閲覧や書き込み許可すれば、他人からそれらのデータにアクセスされることはありません。 しかし、あなたが望んでいないデータが紛れ込んでくる可能性はあります。今回は…
NCMBではJavaを使ったSDKをAndroid SDKとして提供しています。これはデバイストークンの取得機能など、Androidの関連付いて作られています。同じJavaではありますが、サーバサイドで利用することはできません。 ここでは現在開発中のJava用SDK(非公式)の使…
NCMBでは検索に特化した機能は提供していません。しかしアプリの中で検索機能を提供したいと考えることもあるでしょう。そうした時にどんな形で提供できるのか、紹介したいと思います。
あまり知られていませんが、NCMBでのデータストアでは正規表現を使った検索が行えます。MongoDBが実装する正規表現は使えるのですが、相違点も幾つかあります。 ここでは実装時の注意点を紹介します。
あまり知られていないのですが、NCMBのデータストアでは正規表現を使った検索ができます。正規表現を使うことで、単純な文字列一致だけでなく、前後一致や一部一致などもできるようになります。簡易的な検索に使えるでしょう。 しかし正規表現はプログラマー…
一覧データを表示したり、さらにそこから関連データを表示する際など、ループ処理(繰り返し処理)の中でネットワーク処理を行うことはよくあります。しかし、各ネットワーク処理が1秒で終わるとしても、10回ループすると10秒かかってしまいます。そうした処…
Google App ScriptはGoogleスプレッドシートなどで使えるプログラミング言語になります。マクロ的な使い方もできますし、外部サービスと連携したり、GETやPOSTを使ったWeb APIインタフェースを追加することもできます。 Google App Script用SDKはv8エンジン…
Unity SDKを使ってデータストアのデータ取得を行う際に Unauthorized operations for signature が発生することがあります。これは複雑な検索条件を指定した場合に発生します。 現在SDKは修正中ですが、その対処法を紹介します。
iOSアプリの開発時にSwiftを使っているケースが増えています。その際、各種SDKの利用にObjective-C版を使われることがまだまだ多いようです。Objective-C版は昔から使われていて、こなれていますし、言語のバージョンアップも行われなくなっています。 しか…
これからアプリ開発に挑戦する方、初心者の方、プッシュ通知や位置情報機能、会員管理やサーバーサイドスクリプト等にお悩みの方必見のブログです。
データストアはmBaaSにおいて最もよく使われる機能かと思います。プッシュ通知や会員管理などもベースとしてデータストアを使っていますので、データストアの基本を押さえれば、mBaaSがぐっと使いやすくなるでしょう。 今回はJavaScript SDK利用時のデータス…
mBaaSではデータの取得時にクエリストリングを使ってデータの絞り込みを行います。例えば絞り込み条件であればwhereを使います。ドキュメント「REST API リファレンス : クエリの指定方法 | ニフクラ mobile backend」に記載されている他にも複数あるので、…
データストアで検索を行い、データの存在状態によって処理分けすることがあります。そんな時に間違った書き方をすると、思わぬ不具合につながります。今回はそんな問題を回避する方法を紹介します。
mBaaSでは、行ごとのACLのみ設定できます。あるカラムを全体公開しない、あるカラムは更新対象外にするといったことはできません。しかしユーザ情報の一部を公開したい、でも全部取得されてしまうといったニーズはあるかと思います。 そこで今回はデータスト…
データストアは通常のRDBMSとは異なり、NoSQL型データベースになっています。そのため、特性を理解してデータ取得を行わないと、思ったよりもパフォーマンスが出ないと言った問題になります。 今回はskipを指定した場合のデータ取得について解説します。
データストアのちょっとしたTipsを幾つか紹介します。
mBaaSではAndroid向けにSDKを提供しています。コードはJavaで書かれていますが、Androidに最適化されているため、サーバサイドのJavaでは利用できません。 そこで非公式ながらJava SDKを作り始めています。まず最初はデータストアの保存処理からです。
Google Chromeではセキュリティ強化のため、scriptタグを動的に生成するタイプのブックマークレットは利用できなくなっています。そのため、管理画面を便利にするブックマークレットが各種利用できなくなっています。 そこでGoogle Chrome機能拡張にすること…
データをバックアップしたり、分析したりといった目的でエクスポートすることはよくあるかと思います。また、別なシステムからデータをエクスポートして、取り込みたいと思うこともあります。そんな時に注意して欲しい点を挙げます。
データストアはネットワークアクセスを伴うので、大量のデータを処理しようと思うとネットワークレイテンシーがボトルネックになってきます。そこで今回はデータの追加処理(更新、削除も)高速化するためのアイディアを紹介します。
データストアに限りませんが、mBaaSを使う際にはネットワークアクセスが必要です。そのため、いかにネットワーク通信量(回数、データ量)を減らすかがアプリ高速化の鍵になります。 今回はデータストアにおけるデータの持ち方と、その速度比較を紹介します。
データストアはスキーマレスなデータベースで、柔軟に利用できます。しかし、その柔軟さ故にコーディングミスでカラムが作られてしまったり、データが追加されてしまったりします。 RDBMSに慣れている人はもう少し制約を付けたいと思うでしょう。今回はその…
データストアでは一度に1,000件のデータまでしか取得できません。しかし、それ以上データがあることは多いでしょう。そんな時に、毎回データの件数を調べて繰り返し取得する処理を書くのは面倒です。 そこで使ってみて欲しいのが ncmb-utils です。Node.js向…
データストアはスキーマレスなデータベースとなっています。さらにデータベースで言うテーブル相当についても、リクエストした際になければ作るといった仕組みになっています。そのため、今回紹介するようなちょっと無茶な使い方もできてしまいます。
mBaaSのデータストアでは数字や文字列、日付、位置情報などの他に配列やオブジェクトを保存することができます。その際、特に注意して欲しいのが配列のカラムです。今回はJavaScript SDKを使った際の注意点を紹介します。
mBaaSではエクスポート機能を提供しています。エクスポートを使うことでデータストアや会員管理、プッシュ通知などのデータをダウンロードできます。難点は処理がオンデマンドではなくバッチ処理になっていることで、申請してメールでダウンロード可能になっ…
ファイルストレージとして便利なファイルストアですが、条件を付けて検索したいと思うことがあります。ファイルストアの検索ではファイル名やmimeType、ファイルサイズなどが指定可能です。 しかし、これだけでは物足りない場合もあるでしょう。そこで使って…
データストアのクラス同士でデータを連係させる場合、二つの方法が用意されています。 ポインター リレーション ポインターは1対n、リレーションはn対nのデータ関係性において利用が可能です。しかし、データ連係を行わずに各クラスにデータを投入してしまっ…
5月27日、TwilioとNCMBの共催ハンズオンを実施しました。Monacaアプリから電話をかけ、かかってきた電話への反応をNCMBのデータストアに保存するというものです。