backend(mBaaS)。データストアデータストアに限りませんが、mBaaSを使う際にはネットワークアクセスが必要です。そのため、いかにネットワーク通信量(回数、データ量)を減らすかがアプリ高速化の鍵になります。今回はデータストアにおけるデータの持ち方と、その速度比較を紹介します。今回は2,000個のデータを対象にします。この時、保存法は二つ考えられます。2,000行のデータに分ける一つの行、一つのカラムに2,000個の配列で保存するなお、それぞれにメリットとデメリットがあります。データを分けた場合、送信されるデータ量が圧倒的に増えます。1行のデータにはobjectId/acl/createDate/updateDateといったカラムが付きますので、この分だけデータ量が増えます。データストアは一度に1,000行までのデータしか取得できません。そのため、2,000行のデータを取るためには二回ネットワークアクセスする必要があります。一つの行に配列で入れてしまった場合は、一度のネットワークアクセスで解決します。行を分けた場合、行ごとにACLを設定できるのがメリットです。一部のデータだけを取り出せます。一つのカラムに入れてしまった場合は、常にすべてのデータを取得する必要があります。10個だけデータを取り出すと言った操作はできません。SDKを使った時の速度比較です(単位はms)。143.02,000行取得する場合は2回ネットワークアクセスが発生する関係上、遅くなります。それでも配列の場合に比べて二倍程度、データダウンロードに時間がかかっているようです。配列でも問題ない場合は、配列を使って保存する方がデータ容量、利用速度的に有利と言えます。まとめデータの持ち方一つで速度は大幅に変わります。ユーザがストレスを感じないよう、スキーマレスならではのデータの持ち方を考えると良さそうです。篤司NCMBエヴァンジェリスト。プログラマ、エンジニアとしていくつかの企業で働き、28歳のときに独立。2004年、まだ情報が少なかったオープンソースソフトの技術ブログ「MOONGIFT」を開設し、毎日情報を発信している。2013年に法人化、ビジネスとエンジニアを結ぶDXエージェンシー「DevRel」活動をスタート。Tumblr関連記事2019-07-12データストアはこんな使い方もできます!データストアはスキーマレスなデータベースとなっています。Service)とは、スマートフォンアプリでよく利用される汎用的な機能をSDKとクラウドから提供するサービスです。backendのちょっと便利な使いかた・非公式SDKやアプリ開発の関連情報などをお届けするブログです。※記事内には、サポート対象外の内容も含みます。本ブログではコメント機能を公開しておりません。アプリ開発を行う上での課題解決には、ユーザーコミュニティやもくもく会などもご活用ください。LIMITEDスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。