这篇BLOG是ODPS商业化一系列文章之一,更多请点击这里…… ODPS正式商业化以后,微博上议论比较多的是计量计费模型。刚好这件事我全程参与,仔细写写。ODPS的计量计费规则和价格请以阿里云官方网站上的说明和数字为准。这里的内容只反映当前状态,不能保证实时更新。 ODPS收费以项目(Project)为单位,对存储、计算和数据下载三个方面分别计费。存储和数据下载的收费形式与其他云产品很类似。而计算这边,目前ODPS仅开放了SQL任务,计费公式为:一次SQL计算费用 = 计算输入数据量 * SQL复杂度 * SQL价格。具体而言: 1.计算输入数据量:指一个SQL语句实际扫描的数据量,大部分的SQL语句有分区过滤和列裁剪,所以一般情况下这个值会远小于源表数据大小。 2.SQL复杂度:先统计SQL语句中的关键字,再折算为SQL复杂度 SQL关键字个数 = Join个数 + Group By个数 + Order By个数 + Distinct个数 + 窗口函数个数 + analyze个数 + max( insert into个数-1, 1) 例如,用户输入的SQL语句是:INSERT INTO TABLE out1 SELECT * FROM shop a JOIN sale_detail b ON a.shop_name = b.shop_name;则其SQL关键字个数是2,而SQL复杂度是1。 再例如,用户输入的SQL语句是:SELECT DISTINCT total1 FROM (SELECT id1, COUNT(f1) […]