云原生多模数据库Lindorm权威指南|从入门到精通(持续更新 v2021.2)

本文涉及的产品
云原生多模数据库 Lindorm,多引擎 多规格 0-4节点
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
云数据库 MongoDB,通用型 2核4GB
简介: Lindorm是阿里云发布的业界首款云原生多模数据库,支持宽表、时序、文件等多种类型海量数据的低成本存储、检索与分析,兼容HBase/Cassandra、OpenTSDB、Solr、SQL、HDFS等多种开源标准接口,希望通过本指南,可以给开发者给更多的了解和使用指导,本文将持续更新

前言

2020年,阿里云发布了业界首款云原生多模数据库Lindorm,新用户免费试用,技术交流钉钉群:35977898,更多内容请参考链接

一、Lindorm是什么

1.1 产品简介

Lindorm是一款适用于任何规模、多种类型的云原生数据库服务,支持海量数据的低成本、实时在线的存储检索分析,提供宽表、时序、搜索、文件等多种数据模型,兼容HBase、Cassandra、Phoenix、OpenTSDB、Solr、SQL、HDFS等多种开源标准接口,是互联网、IoT、车联网、广告、社交、监控、游戏、风控等场景首选数据库,也是为阿里巴巴核心业务提供关键支撑的数据库之一。

image.png

1.2 技术背景

面对多模数据管理的应用需求和云原生的技术趋势,顺应云计算、5G/IoT时代的发展需求,阿里云发布了业界首款云原生多模数据库Lindorm,基于存储计算分离、多模共享融合的云原生架构,具备极致性能和扩展性,让系统架构简洁、高效,极大降低系统维护成本和海量数据存储成本。

更多技术背景介绍,可以参考 https://developer.aliyun.com/article/776156

二、可以做什么

2.1 功能

Lindorm是一个多模型的数据库,选择不同的模型,可以发挥不同的功能。与此同时,这些模型可以被混合使用,起到1+1>2的效果,提升应用开发维护效率,降低数据存储管理成本。

2.1.1 宽表模型

拥有和HBaseCassandraPhoenix一样的宽表数据模型,熟悉这几个数据库的用户可以直接把Lindorm当成HBase、Cassandra、Phoenix的云原生版本使用,无缝兼容它们的开源标准接口,并提供更低成本、更好弹性、更强能力。


熟悉MySQL/PostgreSQL等关系型数据库的用户,可以把Lindorm当成一个容量规模无限伸缩、使用成本低很多的关系数据库使用,Lindorm也提供标准SQL接口,但在事务能力上不如关系型数据库,非常适合有降低成本和规模扩展需求的关系型数据库用户,比如做历史库、数据归档、元数据库等。


熟悉Mongo/Dynamodb等NoSQL数据库的用户,也可以将Lindorm作为上云后的替换选择,提供更低成本、更强功能,不过Lindorm目前没有兼容性接口,需要自行适配。


关于LindormTable的更多特性介绍,可以参考 https://help.aliyun.com/document_detail/174647.html

2.1.2 时序模型

拥有和InfluxDB、OpenTSDB一样的时序数据模型,熟悉这几个数据库的用户可以直接把Lindorm当成InfluxDB、OpenTSDB的云原生版本使用,目前无缝兼容开源OpenTSDB接口。

时序模型是一种特别适合时间序列数据的模型,比如Metrics,是APM/IoT场景中设备/系统等核心指标数据的主流存储选择。


关于LindormTSDB的更多特性介绍,可以参考 https://help.aliyun.com/document_detail/182269.html

2.1.3 搜索模型

拥有和ElasticSearch、Solr一样的搜索数据模型,熟悉这几个数据库的用户可以直接把Lindorm当成ElasticSearch、Solr的云原生版本使用,目前无缝兼容开源Solr接口。

关于LindormSearch的更多特性介绍,可以参考 https://help.aliyun.com/document_detail/174715.html

2.1.4 文件模型

拥有和分布式文件系统一致的数据模型,熟悉HDFS的用户,可以将Lindorm当成HDFS的云原生版本使用,无缝兼容其开源标准接口,并提供更低成本和更强能力。

熟悉对象存储的用户,如果将其应用在大数据、数据湖等场景,可以把Lindorm作为一个更好的云原生存储选择,在目录操作性能、吞吐带宽方面将获得非常大的提升。


关于LindormFS的更多特性介绍,可以参考 https://help.aliyun.com/document_detail/185153.html

2.2 优势

Lindorm是一款主打低成本、弹性、多模融合特点的云原生数据库,特别适合于互联网、物联网中的大数据场景,提供实时在线的存储、检索、分析能力。

2.2.1 低成本,使用成本最低的数据库之一

  • 提供性能型、标准型、容量型多种存储规格,可满足不同场景的性价比选择。
  • 多种引擎共享统一的存储池,减少存储碎片,降低使用成本。
  • 容量型存储单价为业界最低标准,大幅低于基于ECS本地盘自建。
  • 内置深度优化的压缩算法,数据压缩率高达10:1以上,相比snappy提高50%以上。
  • 内置面向数据类型的自适应编码,数据无需解码,即可快速查找。
  • 支持智能冷热分离,多种存储规格混合使用,大幅降低数据存储综合成本。

2.2.1 云原生弹性,无需容量规划

  • 基于存储计算分离的全分布式架构,支持计算资源和存储资源的独立弹性伸缩。
  • 存储资源支持秒级在线扩缩,计算资源(宽表引擎、时序引擎、搜索引擎)支持分钟级在线伸缩。
  • 提供按需即时弹性、按使用量付费的Serverless服务,自适应弹性伸缩,无需人工容量管理。

2.2.1 多模融合,应用架构大大简化

  • 多模型之间支持数据互通,搜索引擎可无缝作为宽表引擎、时序引擎的索引存储,加速复杂条件查询。
  • 支持统一的SQL访问,以及跨多模引擎关联查询。

2.2.1 丰富生态,与主流大数据、数据库生态无缝打通

  • 支持与MySQL、HBase、MongoDB等系统的平滑在线数据搬迁。
  • 可轻松与Spark、Flink、DLA、MaxCompute等计算引擎无缝对接。
  • 支持无缝订阅Kafka、SLS等日志通道的数据,并具备快速处理能力。
  • 通过Lindorm Stream,可以实时订阅Lindorm的增量变更数据,自定义消费。


更多Lindorm的优势介绍,可以参考链接

2.3 应用领域

基于Lindorm的多模型能力,可以大幅简化很多领域的数据架构,典型如下:

2.3.1 大数据存储分析

企业在构建大数据架构过程中,需要面对结构化、半结构化、非结构化等多形态数据,如原始日志(文件)、中间状态(键值、文件)、维表(键值、表)、结果数据(表、文件)等,非常适合使用多模数据库Lindorm进行统一存储,其支持低成本存储、实时查询、批量归档、数据库导入、高效的全增量通道等能力,可轻松与Hadoop、Spark等大数据计算引擎集成,完成数据的大规模在离线处理和交互式分析。

image.png

2.3.2 物联网平台

在物联网场景,大量设备会产生时序状态、音视频、日志文件等多种形式数据,使用多模数据库Lindorm可以统一存储这些结构化、非结构化数据,结合AI算法库和大数据计算平台,提供物联网数据的统一在线存储检索与分析,低成本、高效率地处理海量数据。

image.png

2.3.3 可观察性系统

企业在构建可观察性系统时,需要面对Metrics、Tracing、Logging三种数据,使用多模数据库Lindorm可以统一存储这些数据,并且进行在线检索与分析,大幅简化系统架构

image.png

2.3.4 低成本数据库

对于数据体量大或增速快的业务,使用关系型数据库,往往意味着比较高的成本。若业务本身的数据价值密度不高,也没有复杂的事务需求,使用多模数据库Lindorm会是更好的性价比选择,既能满足业务对于数据库的在线需求,还能享受近似于离线数仓的存储成本,比如,社交聊天、Feed流、账单、游戏录像、访问日志等等。

image.png

三、场景实践

3.1 阿里经济体内部实践

Lindorm在阿里巴巴集团内部成熟业务中得到广泛使用。

image.png

3.2 大数据场景:海量数据存储与分析

Lindorm支持海量数据的低成本存储、快速批量导入和实时访问,具备高效的增量及全量数据通道,可轻松与Spark、MaxCompute等大数据平台集成,完成数据的大规模离线分析。

image.png

3.3 广告场景:海量广告营销数据的实时存储

使用Lindorm存储广告营销中的画像特征、用户事件、点击流、广告物料等重要数据,提供高并发、低延迟、灵活可靠的能力,帮助您快速构建领先的实时竞价、广告定位投放等系统服务。

image.png

3.4 金融&零售:海量订单记录与风控数据的实时存储

使用Lindorm存储金融交易中的海量订单记录,金融风控中的用户事件、画像特征、规则模型、设备指纹等重要数据,提供低成本、高并发、灵活可靠的能力,帮助您构建领先的金融交易与风控服务。

image.png

3.5 车联网:车辆轨迹与状况数据的高效存储处理

使用Lindorm存储车联网中的行使轨迹、车辆状况、精准定位等重要数据,提供低成本、弹性、灵活可靠的能力,帮助您构建领先的网约车、物流运输、新能源车检测等场景服务。

image.png3.6 互联网社交:高效、稳定的社交Feed流信息存储

使用Lindorm存储社交场景中的聊天、评论、帖子、点赞等重要数据,提供易开发、高可用、延迟的能力,帮助您快速构建稳定可靠的现代社交Feed流系统。

image.png四、解决方案

4.1 基于Lindorm的互联网账单解决方案

请参考 https://developer.aliyun.com/article/776252

4.2 基于Lindorm的大数据用户画像解决方案

请参考 https://developer.aliyun.com/article/776427

4.3 基于Lindorm的HDFS上云解决方案

请参考 https://help.aliyun.com/document_detail/187183.html

4.4 基于Lindorm的车联网数据存储处理方案

请参考 https://developer.aliyun.com/article/781046

4.5 基于Lindorm的低成本RDS历史库方案

请参考 https://help.aliyun.com/document_detail/202224.html


五、操作实践

六、技术原理

七、咨询交流

  • 钉钉群:Lindorm技术交流群

image.png

相关实践学习
新能源电动车监控数据上报
本场景介绍了阿里云原生数据库Lindorm定位智能海量数据存储场景,可提供车辆数据实时监控,助力建立驾驶行为分析等服务。
相关文章
|
20天前
|
SQL 数据可视化 关系型数据库
轻松入门MySQL:深入探究MySQL的ER模型,数据库设计的利器与挑战(22)
轻松入门MySQL:深入探究MySQL的ER模型,数据库设计的利器与挑战(22)
104 0
|
20天前
|
存储 关系型数据库 MySQL
轻松入门MySQL:数据库设计之范式规范,优化企业管理系统效率(21)
轻松入门MySQL:数据库设计之范式规范,优化企业管理系统效率(21)
|
20天前
|
关系型数据库 MySQL 数据库
轻松入门MySQL:精准查询,巧用WHERE与HAVING,数据库查询如虎添翼(7)
轻松入门MySQL:精准查询,巧用WHERE与HAVING,数据库查询如虎添翼(7)
|
16天前
|
存储 关系型数据库 MySQL
MySQL基础入门:数据库操作全攻略
MySQL基础入门:数据库操作全攻略
47 0
|
20天前
|
SQL 关系型数据库 MySQL
轻松入门MySQL:深入学习数据库表管理,创建、修改、约束、建议与性能优化(3)
轻松入门MySQL:深入学习数据库表管理,创建、修改、约束、建议与性能优化(3)
|
3月前
|
NoSQL 中间件 API
分布式锁【数据库乐观锁实现的分布式锁、Zookeeper分布式锁原理、Redis实现的分布式锁】(三)-全面详解(学习总结---从入门到深化)(下)
分布式锁【数据库乐观锁实现的分布式锁、Zookeeper分布式锁原理、Redis实现的分布式锁】(三)-全面详解(学习总结---从入门到深化)
81 2
|
3月前
|
NoSQL Java API
分布式锁【数据库乐观锁实现的分布式锁、Zookeeper分布式锁原理、Redis实现的分布式锁】(三)-全面详解(学习总结---从入门到深化)(上)
分布式锁【数据库乐观锁实现的分布式锁、Zookeeper分布式锁原理、Redis实现的分布式锁】(三)-全面详解(学习总结---从入门到深化)
73 0
|
1月前
|
SQL 存储 关系型数据库
【C/C++ 应用开发 数据库】入门 Qt数据库编程:从基本操作到高级技巧
【C/C++ 应用开发 数据库】入门 Qt数据库编程:从基本操作到高级技巧
74 0
|
1月前
|
存储 SQL 数据库
【Android 从入门到出门】第六章:使用Room数据库并测试
【Android 从入门到出门】第六章:使用Room数据库并测试
29 4
|
2月前
|
NoSQL Java API
分布式锁【数据库乐观锁实现的分布式锁、Zookeeper分布式锁原理、Redis实现的分布式锁】(三)-全面详解(学习总结---从入门到深化)
分布式锁【数据库乐观锁实现的分布式锁、Zookeeper分布式锁原理、Redis实现的分布式锁】(三)-全面详解(学习总结---从入门到深化)
298 0