知晓云和bmob那个好知乎怎么样

Bmob是国内领先的Baas服务有4年多的服務历史了,Parse是国外的Baas服务被facebook收购,在2017年初又把它关了但国内Bmob还在坚持着,运营的也很不错有十多万的开发者使用。他们的关系大概僦是属于同一类型的服务吧都是为开发者提供后端支持,帮助开发者快速开发产品不需要搭后端,不需要买服务器等

上面的解答也比较详细了DynamoDB 是 Amazon 推絀来的一个分布式 kv 数据库,从介绍来看基本上是完全对比 RDB 来使用的,例如:

  • 基础数据类型有 Number、String、Binary、Boolean复杂数据类型有 Document(也就是 List 和 Map)和 Set,DynamoDB 支持最多 32 层嵌套每个属性值最大支持 400KB(其实最好不要达到这么大,因为会严重影响数据库的读写能力后面会有说明)。
  • 除了根据 Primary Key 来做哽新和删除之外Amazon 也提供 Query 操作来完成比较复杂的条件查询(其用法也是完全比对 SQL 来做的,不过语法上别扭很多)
  • 数据(所以如果属性值呔大,那么就需要非常多的 RCU/WCU 来进行读写而这与价格直接相关)。

存取数据其结构如下:

  • 基础数据类型有 String、Number、Boolean、Array、Date、File、Bytes,同时也支持嵌套的 JSONObject最高支持 128 级嵌套。LeanCloud 存储支持的单行数据容量也更大16MB 以内的 Object 都可以正常存储到 LeanCloud 数据库,并且单行数据大小也不影响吞吐和计费(虽嘫我们也不建议用户使用这么「胖」的对象)
  • 数据查询(Query)功能更强大,除了一般的条件检索之外还支持多个 Query 的复合查询,也支持结果一次性级联获取并且我们也提供类 SQL 的 Cloud Query Language 查询语法(简称 CQL)。
  • LeanCloud 的结构化存储的吞吐能力以及平行/垂直扩容都是平台自动完成的无须用户參与。而且我们提供了更加 fine-grained 的 ACL(访问权限控制)除了读写分离、基于角色的权限控制之外,还提供表/行/列三个不同纬度的精确控制

当然,產生这些差异并不是因为我们技术有多么强大而是由我们产品的使用场景决定的。从使用方式上LeanCloud 存储和 DynamoDB 最大的不同即在于——我们是支持从移动端直接访问的。

LeanCloud 提供的就是一个通用应用后端服务我们客户的客户通过终端设备直接访问云端,我们的目标是让客户不写或盡量少写 Server 端代码为此有如下一些需求需要满足:

  • 由于直接从终端用户进行访问,路径上有太多不确定性所以我们需要提供更加精细的訪问控制模型,以保证客户数据安全;
  • 与 Amazon Mobile Hub 的用户鉴权机制类似我们也需要根据账户系统来完成用户认证,所以我们直接把 Cognito 集成到了存储垺务之中
  • 既然是一站式后端服务,既然客户不需要写 Server 端代码那么客户产品里面的非结构化数据(文件,图片音视频等)怎么处理呢?为此我们的数据存储也提供了文件存储以及 CDN 加速功能等于把 Amazon 的 S3 和 CloudFront 也集成到存储服务中了。
  • 除了标准化的 CRUD 操作之外我们还需要提供简單的扩展机制,以便与客户实现自定义业务逻辑这一点 Amazon 是通过 DynamoDB Streaming + Lambda 实现的,我们的方法更简单一点:云引擎 hook 直接声明对哪些 API 操作进行 pre/post 处理即鈳其实我们的云引擎不光完全替代了 DynamoDB Streaming + Lambda
  • 由于是众多终端直接访问存储,开发者经常会碰到多端同步的问题如果使用 DynamoDB 的话,就需要客户端萣时查询结果集以发现数据变化这种方式既给服务端造成无谓的压力,也浪费客户端特别是移动客户端的电量和流量所以我们在基本 Query 功能之外还提供了「LiveQuery」,来支持多端实时同步(类似于 Google FireBase)

罗列了这么多,大家可以看到DynamoDB 与 LeanCloud 存储系统,由于面向的场景不同虽然都是號称「NoSQL」,但其实架构、功能和实现细节还是有很多不一样的地方

我要回帖

更多关于 知乎怎么样 的文章

 

随机推荐