产品功能
数据通道
批量、历史数据通道
Tunnel是MaxCompute向用户提供的数据传输服务。该服务水平可
扩展,支持每天TB/PB级别的数据导入导出。特别适合于全量数据或
历史数据的批量导入。Tunnel提供了Java SDK,并且在MaxCompute
的客户端工具中,有对应的命令实现本地文件与服务数据的互通。
实时、增量数据通道
另一方面,针对实时数据上传的场景,我们提供了另一套名为
DataHub的服务。该服务具有延迟低、使用方便的特点,特别适用于
增量数据的导入。Datahub还支持多种数据传输插件,例如:Flume,
Fluentd, Sqoop等。
存储
以二维表格存储数据
所有数据均以表格式存储,不暴露文件系统。并采用列压缩存储格式,极高的数据压缩比极大节省了用户成本。通常情况下,
MaxCompute存储具备5倍压缩的能力。
计算
SQL
MaxCompute SQL采用标准的SQL语法。更高效的计算框架支持SQL计算模型,执行效率比普通的MapReduce模型更高。需要注
意的是,MaxCompute SQL不支持事务、索引及Update/Delete等操作。
MapReduce
MaxCompute提供的Java MapReduce编程模型。值得注意的是,由于MaxCompute并没有开放文件接口,用户只能通过它所提
供的Table读写数据,因此MaxCompute的MapReduce模型与开源社区中通用的MapReduce模型在使用上有一定的区别。我们
相信,这样的改动虽然失去一定的灵活性,例如:不能够自定义排序及哈希算法,但却能够简化开发流程,免除很多琐碎的工作。
更为重要的是,MaxCompute还提供了基于MapReduce的扩展计算模型, 即MR2。在该模型下,一个Map函数后,可以接入连
续多个Reduce函数。
Graph
对于某些复杂的迭代计算场景,例如:K-Means,PageRank等,如果仍然使用MapReduce来完成这些计算任务将是非常耗时的。
MaxCompute提供的Graph模型能够非常好的完成这一类计算任务。