目次:
ビデオ: Keynote (Firebase Dev Summit 2017) 2024
Time to Valueは、ITプロジェクトの開始からビジネス上の利点を実現するまでに要する時間です。これは、コスト削減や新しいビジネスの取引能力、より優れた顧客サービスや製品の提供といった無形のメリットの具体的なメリットです。
Key-Valueストアは、データモデルに関する最も単純なNoSQLデータベースです。したがって、特に、データ構造の管理方法の見直しなど、いくつかの重要な原則を適用すると、アプリケーションを迅速に構築できます。
<! - 1 - >単純な構造の使用
キーバリューストアは、データのフォーマットに関してリレーショナルデータベースよりも柔軟性があります。この柔軟性を活用して、アプリケーションのスループットの速度を最大化します。たとえば、マップタイルを格納する場合は、ブラウザで直ちにレンダリングできるように16進形式で格納します。
あなたのアプリケーションでは、処理時間を必要としない使いやすい構造を保存します。これらの構造体は、整数、文字列、日付などの単純な組み込み型、リスト、ソート済みセット、JSONドキュメントなどのより洗練された構造を文字列として格納できます。
<! - 2 - >JavaScript Webアプリケーションで直接解釈できるため、JSONを使用して簡単なWebアプリケーションの状態や環境設定を保存できます。ログデータを保存する場合は、検索と分析に最も適した形式で保存します。
データベース管理者ではなく、アプリケーションに最適な構造を使用します。また、データベースへの時間の影響を考慮してください。将来新しい機能をサポートするためにデータ構造を変更したいですか?
<! - 3 - >データ構造は時間とともに変化します。 JSON構造は、新規または削除されたプロパティを考慮する必要なしに、時間の経過と共に容易に変化する可能性があるため、柔軟なJSONドキュメントはCSVデータファイルまたは固定幅データファイルより優れています。キー値ストアに格納されているCSVファイルの列を変更し、アプリケーションのコードをすべて更新する必要があります。古いコードでは単に新しいプロパティを無視するJSONドキュメントではそうではありません。
複雑な構造の処理
複雑な相互関係のあるデータセットがある場合は、キー値ストアのデータ構造を慎重に検討してください。簡単な検索が可能な方法でデータセットを保管します。 8つのアイテムを別々に保管するのではなく、8つの読み取りを必要とする場合は、データを非正規化する - データを取り込み時に同じレコードに書き込みます。
これは、いくつかのデータが複数回格納されることを意味します。一例は、注文書に顧客名を格納することです。これは多くの注文に顧客名を格納しますが、注文の要約を表示すると、値 customer_number = 12 が Mr A Fowler 追加の読み取り要求
非正規化は、リレーショナルデータベースの 標準形式 よりもディスク領域を消費しますが、クエリスループットは大幅に向上します。リレーショナルデータベースのマテリアライズドビューと同じNoSQLです。古典的なコンピュータ科学のトレードオフである速度のためにストレージスペースを犠牲にしています。ある世代のコンピュータ科学者にとって、同じデータの複数のコピーを保持することは異論とみなされます。単純に非効率です。リレーショナルデータベースの講師が朝食を食べるでしょう!
しかし、現在のストレージのコストが低く、最新のアプリケーションの要求が高まっているため、データを読み取る速度のためにストレージを犠牲にする方がはるかに優れています。だから、非正規化を友人とみなす。