写点什么

Dropbox 通过数据存储 API 支持结构化数据

  • 2013-07-17
  • 本文字数:991 字

    阅读完需:约 3 分钟

Dropbox 发布了数据存储 API , 提供了访问键值的功能, 并支持在使用 Dropbox 用户的设备之间进行同步和自动解决冲突。
数据存储 API 允许应用在用户的 Dropbox 帐户中保存结构化数据,并内置支持在各种不同的设备间进行同步和自动解决冲突。该 API 支持离线活动,能在网络断开重新连接后进行更新。
数据存储以表格的方式保存,其中包含了由 ID 和字段集合组成的记录。每一个字段有名称和值。支持的类型有:

  • 字符串
  • 布尔型
  • 64 位带符号整型
  • IEEE 双精度浮点型
  • 支持 POSIX 毫秒时间戳的日期类型
  • 字节类型。支持如图片或压缩数据的二进制数据。由于每条记录的大小限制为 100KB, 可以通过 Sync API 访问 Dropbox 的文件以存储更大量的数据。该字段包括对文件的引用。
  • List 列表类型。列表支持上述提及的类型。它不能包含其他列表。列表支持基本的操作:put、move、insert 和 delete。

数据存储不包括 schema,能允许记录有不同数量的字段,但建议“所有在表中的记录都有相同的字段以便查询。”多表和数据存储可以根据开发者需要去创建。

一个应用如果不使用用户的存储配额则被限制为 5MB 的存储空间。如果超过大小限制,则开始使用用户的 Dropbox 配额,如果达到限制值则应用不能运行。
下面是一个 Android 的例子,说明如何开启默认的数据存贮、创建新的表格、插入一条有两个字段 taskname 和 completed 的记录,然后使用 Dropbox 同步到内存数据库中。

复制代码
DbxDatastore store = DbxDatastore.openDefault(mAccount);
DbxTable tasksTbl = store.getTable("tasks");
DbxRecord firstTask = tasksTbl.insert().set("taskname",
"Buy milk").set("completed", false);
store.sync();

当一个同步操作发生的时候注册的监听器将会收到通知并按需处理。这就是数据存储如何在设备中运作的原理。

Dropbox 为 Android、iOS 和 Javascript 提供了 SDK 。尽管 API 还处于 beta 阶段,

Dropbox 期望“在接下来数周 API 会推出稳定版本”。

Dropbox 提供对 iOS for Xamarin 的同步组件的支持,能支持使用C#访问数据存储。

由Xamarin 创建的一个范例视频说明了如何在不同的设备间快速同步数据的。

查看英文原文: Dropbox Now Can Hold Structured Data with Datastore API


感谢崔康对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2013-07-17 07:411690
用户头像

发布了 81 篇内容, 共 26.0 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

Dapr和Rainbond集成,实现云原生BaaS和模块化微服务开发

北京好雨科技有限公司

云原生 #Kubernetes# Baas rainbond 企业号 4 月 PK 榜

持续领先同行?看华为云EI如何助力企业智能化转型

爱尚科技

DriveGPT自动驾驶大模型中国玩家首发!1200亿参数,毫末智行出品

Openlab_cosmoplat

人工智能 自动驾驶 机器学习 开源社区 ChatGPT

海外 SaaS、工具、技术栈实用指南

SaaSLab

SaaS 技术栈 海外市场

谷歌研究科学家:ChatGPT秘密武器的演进与局限

OneFlow

这样也行,在lambda表达式中优雅的处理checked exception

程序那些事

Java stream 程序那些事

架构实战营第10期模块八作业

刘博

AI日课@20230411:Prompt的三个层次和三个“万万没想到!”

无人之路

ChatGPT

华为云EI:引领企业智能化转型,助力全球行业创新

爱尚科技

Django笔记八之model中Meta参数的使用

Hunter熊

Python django model meta

Java运算符、标识符以及进制

timerring

Java

如何打开 plist 文件

ios 开发 IPA上传

解锁企业数据管理的利器——DataOps

数造万象

华为云EI引领行业智能化转型:赋能全球企业,共创智能未来

爱尚科技

华为云网站安全解决方案:为您的企业保驾护航,助力安心创造未来!

IT科技苏辞

MobTech 秒验|极速验证,拉新无忧

MobTech袤博科技

SELECT COUNT(*) 会造成全表扫描?回去等通知吧

程序员大彬

Java MySQL

华为云网站安全解决方案,如何保障中小型企业云上云下安全?

IT科技苏辞

Kubernetes 本地持久化存储方案 OpenEBS LocalPV 落地实践下——原理篇

江湖十年

后端 #Kubernetes# Go 语言

华为云网站安全解决方案:中小型企业的IT安全利器

IT科技苏辞

在线Plist文件格式转Json文件格式

走进 RocketMQ(六)事务消息的设计

白裤

Java RocketMQ 事务消息 最终一致性

如何调整和优化Go程序的内存管理方式?

Jack

【深入了解系统性能优化】「实战技术专题」全方面带你透彻探索服务优化技术方案(方案篇)

码界西柚

性能优化 JVM 软件开发 4月日更 编程体系

华为云网络安全解决方案,云上云下一体助力企业安心发展

IT科技苏辞

在 plist 中轻松转换两种格式

JMeter CSV 参数文件的使用方法

Liam

软件测试 测试 Jmeter csv

走进 RocketMQ(五)高性能文件读写

白裤

Java RocketMQ 消息队列 文件读写优化

【异常解决】UnknownHostException: api.weixin.qq.com 的解决方案

No8g攻城狮

小程序 微信 Java EE

实用技术宝典:MAC地址格式转换多种实现方式

小毛驴的烂笔头

linux命令 linux运维

Dropbox通过数据存储API支持结构化数据_JavaScript_Abel Avram_InfoQ精选文章