首页 > 其他分享 >基于 Databend 实现的海量日志实时查询服务 | 多点DMALL

基于 Databend 实现的海量日志实时查询服务 | 多点DMALL

时间:2023-07-25 17:04:27浏览次数:34  
标签:COMMENT VARCHAR 查询 Databend DMALL 日志 数据

作者:苏琳

多点DMALL 供应链补货团队负责人

rs封面图2023-43.png

多点DMALL 成立于 2015 年。从创立伊始,就致力于以大数据、云计算、AI 等数字技术改变零售业,是一站式全渠道数字零售解决方案服务商,数字化解构重构零售产业,提供端到端的商业 SaaS 解决方案。

多点DMALL 通过 DMALL OS 提供零售云一站式解决方案,帮助零售商和品牌商数字化转型,实现线上线下一体化;同时通过多点 App 等工具赋能全渠道经营能力,并提供各类增值服务。

需求概述

商家要求支持 4 个月的日志查询,目前线上只支持 1 个月。每天日志是 400 万行项,1 个月的日志量是 1.2 亿, 考虑到后续业务的增长,预计每月日志数据量会增长到 2.5亿;4 个月的日志量是 10 亿行项左右。

现采用的 MongoDB 集群因资源受限无法支持 10 亿行项存储及查询,急需寻找另外的解决方案。

Databend 的介绍及优势

Databend 是一个开源的、完全面向云架构的新式数仓,它提供快速的弹性扩展能力,并结合云的弹性、简单性和低成本,使 Data Cloud 构建变得更加容易。Databend 把数据存储在 AWS S3 ,Azure Blob 等这些云上的存储系统,可以使不同的计算节点挂载同一份数据,从而做到较高的弹性,实现对资源的精细化控制。Databend 在设计上专注以下能力:

  • 高性能且部署使用成本低: 在提供更高的性能的同时,部署成本不到传统数据库(MySQL、MongoDB)的 1/10;

  • 支持标准 sql 语法: 能兼容 Mybatits 等常用 ORM 框架,对于研发来说没有任何学习成本。

  • 支持自动索引: 系统会自动对所有字段建立索引;无需研发进行优化。

技术选型

由于 Databend 可以处理海量数据的查询,并且提供了实时查询和处理能力。恰好满足了多点现在所求。基于以上,我们选择 Databend 实现海量日志实时查询的原因包括有以下四点:

1️⃣ 基于对象存储,成本低

SSD 块设备的 1/10;按实际用量付费

2️⃣ 在线查询

无须从冷备中恢复;可接受的查询性能

3️⃣ 支持大单表

TB 级别;分批持续归档

4️⃣ 兼容 TiDB

MySQL 协议;数据类型兼容

使用 Databend 方案

目前使用 Databend 主要是用在计算日志查询场景。

计算任务会将计算日志保存到 MongoDB;然后会通过定时任务,将日志从 MongoDB 同步到 Databend 供页面查询。

图片

基于 Databend 的性能测试

标签:COMMENT,VARCHAR,查询,Databend,DMALL,日志,数据
From: https://blog.51cto.com/u_15491149/6846941

相关文章

  • goaccess日志分析器使用
    一、安装goaccess软件1、安装依赖yum-yinstalllibmaxminddb-develncurses-libsncurses-developensslopenssl-devel2、下载软件wgethttps://tar.goaccess.io/goaccess-1.4.tar.gz3、编译安装tar-xzvfgoaccess-1.4.tar.gz-C/usr/local/cd/usr/local/goaccess-......
  • 【JAVA】java日志框架 - slf4j
    1、配置依赖<!--slf4j日志门面--><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.7.26</version></dependenc......
  • Databend 开源周报第 103 期
    Databend是一款现代云数仓。专为弹性和高效设计,为您的大规模分析需求保驾护航。自由且开源。即刻体验云服务:https://app.databend.cn。What'sOnInDatabend探索Databend本周新进展,遇到更贴近你心意的Databend。创建网络策略网络策略(NetworkPolicies)是一组用于管理......
  • 非IMU模式下DML语句产生的REDO日志内容格式解读
    实验内容:非IMU模式下DML语句产生的REDO日志内容格式解读,数据库版本:11.2.0.4最详细的解读是UPDATE的。实验环境准备11G中默认是开启IMU特性的,做此实验需要关闭此特性。altersystemset"_in_memory_undo"=false;altersystemset"_in_memory_undo"=true......
  • SpringBoot集成日志入门
    一、日志的作用程序中的日志是记录程序的运行情况,包括用户的各种操作、程序的运行状态等信息。类似于飞机的黑匣子。二、日志的级别表:日志级别及其描述日志级别描述OFF关闭:不输出日志FATAL致命:用于输出可能会导致应用程序终止的错误ERROR错误:用于输出程序的错误(这些错误不会导......
  • Kubernetes业务服务日志采集原理全方位剖析
    Kubernetes日志采集原理全方位剖析   简介作为容器编排领域的实施标准,Kubernetes(K8s)应用的场景也越来越广。日志作为可观测性建设中的重要一环,可以记录详细的访问请求以及错误信息,非常利于问题的定位。Kubernetes上的应用、Kubernetes组件本身、宿主机等都会产......
  • 在Linux添加定时任务删除5天前的日志文件
    在Linux添加定时任务删除5天前的日志文件利用shell脚本自动清理1.删除文件命令:find对应目录-mtime+天数-name"文件名"-execrm-f{}\;实例命令:find/usr/local/mysql/logs-typef-mtime+5-name"*.txt"-execrm-f{}\;说明:将/usr/local/mysql/logs目录下所......
  • PyCharm 在PyCharm中运行Django测试的日志输出
    环境:Windows10  +PyCharm2022.3.3+ Djangoversion4.2.3via: https://docs.djangoproject.com/zh-hans/4.2/topics/logging/#configuring-logging 日志模块配置:在settings.py添加如下配置: importosLOGGING={"version":1,"disable_existi......
  • 怎么找java项目日志输出的路径
    项目方案:Java项目日志输出路径的查找方法背景在Java项目开发过程中,日志是非常重要的一部分,可以帮助开发人员快速定位和解决问题。日志输出路径的查找方法决定了我们在开发和调试过程中如何查看和分析日志信息。本方案将介绍如何找到Java项目日志输出的路径,并提供代码示例。解决......
  • android studio打印日志过长显示补全
    AndroidStudio打印日志过长显示补全实现步骤作为一名经验丰富的开发者,我将向你介绍如何在AndroidStudio中实现打印日志过长时的显示补全功能。这个功能可以帮助你更方便地查看和调试长日志信息。实现步骤下面是整个实现过程的步骤概览。我们将逐步进行操作,确保你能够完全了解......