比较一下 关系型 vs 文档性
下面是第一张幻灯片。
各自的特点 de
去中心化架构
请参阅此处,暂时跳过了MongoDB副本集的讨论。
SQL语法的比较
create table customers (
id number(10) not null primary key,
name varchar(40) not null,
tell varchar(40) not null,
)
2. データの投入
insert into customers(id, name, tell) values(null, ‘test’, ‘080-0000-0000);’
3. カラムを増やす
alter table customers add address column varchar(255);
4. データの投入
insert into customers(id, name, tell) values(null, ‘test’, ‘080-0000-0000);’1. コレクション定義
db.createCollection( “customers”)
2. データを入れる
db.customers.insert([{name: ‘test’, tell: ‘080-0000-0000’}])
3. カラムを増やしてデータを入れる
db.customers.insert([{name: ‘test’, tell: ‘080-0000-0000’,address:’Tokyo’}])
使用实例
重複なく設計されたマスタ系のデータテーブルを保管して参照する
□銀行システム
厳格なトランザクションの下で、入金、出金、振り込みなどの操作を行わなければならない□大量のログ保管
ヒートマップデータやアプリ操作ログなどの保管や統計的集計
□ゲームのセーブデータ
特定個人のプレイデータで厳密排他制御の必要性がない
不使用Rails的架构示例(MongoDB)
■AWS
MongoDB Atlas serverless architecture
Awsを利用したマイクロサービスのアーキテクチャ
■Atlas
Microservices with MongoDB Atlas
MongoDBの提供するマネージドサービス☆例: 蓄積されたデータの閲覧ツールを実装せずに閲覧する
■ Studio
Studio 3T(GUI client)
MySQLだとnavicatというツールがあるがそれと同じもので
クエリさえ分かればデータが引き出せるというもの
■HumongouS.io
HumongouS.io(Web GUI )
上記のWeb版
我們希望積極地使用和發揮新功能的作用。
地理编码
空間データ型
緯度経度MongoDBでは、複雑なGeometry(点、直線、多角形)をlon/latで扱うものと、2Dの座標空間を扱えます(点、四角、多角形、円、Sphere)
球面空間でのクエリもサポートしています
Geospatial Queries
图形表示
AWSのAuroraではサポートしていないそう
SQL Server Graph Features
MongoDB as a Graph Databaseを確認すると、ノード(頂点)、エッジ(リレーション)、プロパティ、ラベルを基本としてグラフ型のオブジェクトとその検索をサポートしている
graphLookupという、agrreegation piplineの機能を使うだけで簡単に利用できる
別途GraphQLなどのデータベースを用意しなくても利用できるようので使い勝手がいい