为什么订单场景大家都使用这个产品?

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
对象存储 OSS,标准 - 本地冗余存储 20GB 3个月
对象存储OSS,敏感数据保护2.0 200GB 1年
简介: # 前言订单场景是商业公司中最核心的场景之一,具体如购物订单、外卖订单、交易流水、设备信息等等。 技术负责人在进行订单场景技术选型时候需要在各个维度进行架构决策,会对成本、性能、规模、运维、研发效率、扩展性等各个方面进行综合考虑和取舍。根据接入我们产品的用户经验来看,在业务初期数据规模较小,基本上 MySQL 类产品能够通吃所有需求,很少遇到瓶颈或问题。随着业务规模增长,会有越来越多的问题暴

前言

订单场景是商业公司中最核心的场景之一,具体如购物订单、外卖订单、交易流水、设备信息等等。 技术负责人在进行订单场景技术选型时候需要在各个维度进行架构决策,会对成本、性能、规模、运维、研发效率、扩展性等各个方面进行综合考虑和取舍。

根据接入我们产品的用户经验来看,在业务初期数据规模较小,基本上 MySQL 类产品能够通吃所有需求,很少遇到瓶颈或问题。随着业务规模增长,会有越来越多的问题暴露出来,包括但不限于 MySQL 的不断扩容难题、高昂成本、查询性能不足等问题,而这时候用户会把所有可能的替换产品都罗列出来进行筛选和排除,大多数用户最终会选择我们的云上产品::表格存储 Tablestore

为什么大家会不约而同的选择Tablestore?接下来讲一下最受客户欢迎的几个点:

为什么订单场景选择 Tablestore ?

1. Serverless

Serverless 发展历史和服务端的运维发展史密不可分,对象存储(OSS)是大家都熟悉的一款 Serverless 存储服务,我们以对象存储(OSS)为例介绍一下Serverless的发展历史:

  • 农耕时代:买一台服务器托管在 IDC,数据直接以文件形式存放在磁盘上,用户自己控制文件的增删改查。在这个时代,硬件、软件都需要进行运维。
  • 工业时代:买几台永不停机的阿里云 ECS 服务器,搭建一个分布式的开源对象存储 MinIO 集群,遇到问题需要专业的 MinIO 专家来解决和调优。在这个时代,仅需要软件进行运维。
  • 互联网时代:直接使用阿里云 Serverless 的对象存储(OSS)服务,按需使用,无需运维,极致性能。

通过上述的 Serverless 发展史,我们可以直观的感受到 Serverless 的魅力:研发再也不需要需关心服务端的硬件和软件的部署运维、容灾等问题,不再需要花费大量人力去关注和扩容水位,只需要关心核心业务价值,即开即用,使用多少付费多少地按量付费,可以更短的开发周期让产品尽早上市。现在越来越多的产品在设计之初就 All-In-Serverless,使用“函数计算FC + 表格存储Tablestore + 对象存储OSS”这样的架构设计,将服务的运维成本压缩到最低。越是底层数据存储服务,越需要 Serverless 能力。

OSS 是阿里云自研的一款Serverless 的非结构化存储产品,与之对应的,OTS(Tablestore)是阿里云自研的一款 Serverless 的结构化存储产品,是阿里云立项之初定下的战略级 Serverless 自研数据库产品,经过13年的锤炼,我们拥有大量业内前沿的国内、国际创新专利,服务了大量的阿里集团内、外部用户,经过了数次双十一的考验,我们极致的 Serverless 能力是订单场景最有力的选择理由之一。

2. 成本

有很大一部分用户选择表格存储 Tablestore 是因为成本费用问题,表格存储 Tablestore 可以做到在大多数用户的使用场景下成本大幅下降,有大量的 MySQL 关系数据库类产品、Elasticsearch 搜索类产品用户在遇到成本问题后迁移到表格存储 Tablestore上,让业务能够用更低的成本承载更优质的服务。
我们的成本为什么可以做到很低?主要依赖以下这些能力:

  1. 存算分离:“存储计算分离”这一特性几乎已经成为现代数据库的标配能力之一,存算分离让计算和存储的资源得到充分利用。
  2. 盘古 + EC:表格存储 Tablestore 底层使用了世界领先的阿里云“盘古”分布式存储系统,其先进的容错架构和柔性平台设计可以将存储成本降到极低,开启 EC(Erasure Code)后可以继续压榨存储成本。
  3. 冷热分层:有温度变化的业务数据,可以自动从热数据层迁移到冷数据层,来降低存储成本。
  4. 灵活的计费方式:按量、预留、资源包三种计费方式,不同模式的业务使用不同的计费方式。

3. 查询性能

订单场景对查询的丰富度有要求,又对查询性能要求很高。表格存储 Tablestore 底层实现了多种索引帮助数据库查询进行加速,包括但不限于主键索引、二级索引、倒排索引、BKD-Tree、列存、BloomFilter 等多种索引加速能力,结合多年的查询优化经验积累和沉淀,能够实现主键查询、非主键列的自由组合查询、自定义排序、模糊查询、全文检索、地理位置 GEO 查询、统计聚合等各种常见的查询方式。

表格存储 Tablestore 依赖底层丰富的索引加速能力,支撑了各种类型的查询,能够实现:

  1. 在阿里集团内部真实的千亿~万亿规模订单场景下,依然能够表现优秀,实现毫秒级的查询性能。
  2. 全新实现的查询优化器可以在大多数场景下比常见的数据库查询加速(如 Elasticsearch )方式快,而且会根据查询模式自动进行数据重排,进一步提升性能和降低毛刺。
  3. 通过二级散列功能可以有效提升大租户的查询性能,并消除超时。
  4. 支持 API 和 SQL 两种查询方式。

4. 可靠性和可用性

表格存储 Tablestore 具有极高可靠性和可用性。首先,如介绍 Serverless 时所介绍,表格存储 Tablestore 从创立之初就具有极高的战略地位,经过阿里集团内、外部大量的用户锤炼,十分可靠和值得信赖;其次,表格存储 Tablestore 底层存储基于分布式存储系统“盘古”,可以在一些场景下实现11个9的可靠性;然后,表格存储 Tablestore 是作为存储/数据库产品,在各个环节都会尽力保证数据不丢不错;最后,表格存储 Tablestore 不仅经历了数次双十一的历练,也经过无数次外部用户的大型促销活动或运营活动,在阿里集团内部、外部积累了大量的用户作为信用背书,这里仅列举其中的订单场景的用户:

  • 内部:阿里云订单、菜鸟、淘宝特价版、飞猪、饿了么、1688、闲鱼、AliExpress等。
  • 外部:某大型连锁超市、某大型出行公司,某大型电信运营商、某保险公司等。

5. 快速带来业务价值

作为 Serverless 的服务提供者,表格存储 Tablestore 以用户为导向,以满足用户需求并快速实现用户商业价值为主要目标,我们提供了丰富的额外服务可以帮助用户快速入门、业务迁移、构建核心代码,包括但不局限于:

  • 入门案例和示例代码:各个场景的文章和示例代码,方便用户入门。
  • 钉钉用户群:多个内部和外部用户群,有任何问题都可以在群内交流和反馈,群里有资深研发、产品、老板进行交流。
  • 专家支持服务:针对长期用户和大客户,表格存储Tablestore提供了特别的专家支持服务,研发同学可以帮助用户设计和 Review 方案、解决一些疑难问题、对实例进行重点护航。

总结

表格存储 Tablestore 在订单场景深耕了多年,积累了大量的经验,在规模、性能、成本、运维成本、可靠性和可用性、服务等各方面都具有极佳的竞争力,欢迎大家体验和交流,本文末尾列举一些订单相关的技术文章作为补充阅读:

  1. 大规模订单系统解读-架构篇
  2. 多元索引最佳实践 ( 订单场景索引使用必备 )
  3. 云上应用系统数据存储架构演进
相关实践学习
【AI破次元壁合照】少年白马醉春风,函数计算一键部署AI绘画平台
本次实验基于阿里云函数计算产品能力开发AI绘画平台,可让您实现“破次元壁”与角色合照,为角色换背景效果,用AI绘图技术绘出属于自己的少年江湖。
从 0 入门函数计算
在函数计算的架构中,开发者只需要编写业务代码,并监控业务运行情况就可以了。这将开发者从繁重的运维工作中解放出来,将精力投入到更有意义的开发任务上。
目录
相关文章
|
JavaScript 关系型数据库 测试技术
接口文档管理神器RAP2安装和部署
一 RAP2 RAP2是在RAP1基础上重做的新项目,它包含两个组件(对应两个Github Repository)。 rap2-delos: 后端数据API服务器,基于Koa + MySQLlink rap2-dolores: 前端静态资源,基于React link 什么是RAP? rap是一款API 文档管理工具,在 RAP 中,可以定义接口的 URL、请求 & 响应细节格式等等。
13765 0
|
消息中间件 关系型数据库 MySQL
Flink--6、输出算子(连接到外部系统、文件、kafka、MySQL、自定义Sink)
Flink--6、输出算子(连接到外部系统、文件、kafka、MySQL、自定义Sink)
|
大数据 API Android开发
Activity之间传递大数据问题
<p style="color:rgb(51,51,51); font-family:Arial; line-height:26px"><span style="font-size:14px">Android开发人员都知道,Intent适用于在不同的Activity之间传递数据,包括参数、字符串、以及序列化的对象等。但是笔者所做的项目用到了使用Intent 传递Bitmap图片对象,图片的
4632 0
|
JavaScript 数据安全/隐私保护 Python
东方财富股票数据JS逆向:secids字段和AES加密实战
东方财富股票数据JS逆向:secids字段和AES加密实战
477 0
|
存储 Oracle 关系型数据库
OceanBase有什么优势?
【8月更文挑战第12天】OceanBase有什么优势?
753 3
|
监控 安全 物联网
物联卡:物联网卡和SIM卡的不同
物联网卡(IoT SIM卡)和普通SIM卡在多个方面存在显著的差异,这些差异主要体现在应用场景、功能特点、资费结构、管理方式等方面。以下是它们之间区别的详细分析:
|
负载均衡 关系型数据库 MySQL
MySQL 主主复制与主从复制对比
MySQL的主主复制和主从复制是两种常见的数据库复制配置方式,各有优缺点和适用场景。以下是对这两种复制方式的详细对比: ### 主从复制 (Master-Slave Replication) **特点:** 1. **单向复制**:数据从主服务器复制到一个或多个从服务器。从服务器只能从主服务器接收数据更新,不能向主服务器发送数据。 2. **读写分离**:主服务器处理写操作(INSERT、UPDATE、DELETE),从服务器处理读操作(SELECT),可以分担读负载,提高系统的整体性能。 3. **数据一致性**:数据在主服务器上是最新的,从服务器上可能会有一定的延迟。 **优点:**
956 1
|
Java 程序员 数据处理
从软件危机中处理软件工程问题
【6月更文挑战第28天】本文介绍软件危机及其处理方式。1968年的北约会议首次提出“软件危机”,指软件开发的复杂性和成本超支问题。现代解决策略包括多种方法和模型,如OO、结构化、RUP和SOA,旨在提高效率和适应性。
1221 0
从软件危机中处理软件工程问题
|
存储 数据可视化 大数据
从零到一建设数据中台 - 应用场景及实施路径
从零到一建设数据中台 - 应用场景及实施路径
710 0
|
存储 程序员 API
python web开发示例详解
python web开发示例详解
200 0

热门文章

最新文章