大工程 从0到1 数据治理 数仓篇(sample database classicmodels _No.7)

大工程 从0到1 数据治理 之数仓篇

我这里还是sample database classicmodels为案列,可以下载,我看 网上还没有类似的 案列,那就 从 0-1开始吧!

在这里插入图片描述


提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 大工程 从0到1 数据治理 之数仓篇
  • 什么是数仓?
  • 企业为什么要建数仓?
  • 建数仓的数据库选型
    • 关系型数据库:
    • 列式数据库:
    • 分布式数据库:
    • 云数据库服务:
    • Mpp数据库:
  • 数仓的备份
    • 全量备份:
    • 增量备份:
    • 定期备份计划:
    • 分层备份:
    • 异地备份:
    • 压缩和加密:
    • 测试恢复流程:
    • 日志备份:
    • 监控和报警:
  • TB级数仓的硬件配置
    • [clickhouse -data warehouse](https://clickhouse.com/blog/building-a-data-warehouse-with-clickhouse) ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/164dd33ee4c640d6acad0aa3590b2cfc.png)


什么是数仓?

数仓是指数据仓库的简称(Data Warehouse)。数据仓库是一个用于集中存储和管理大量结构化和非结构化数据的系统。它的目标是帮助组织更好地理解和分析其数据,支持决策和业务运营或者说是 支持企业在决策和分析方面的需求,提供可靠、一致、高性能的数据存储和访问。

以通俗易懂的方式来说,你可以把数据仓库比喻为一个大型的数据存储仓库,就像企业中的“数据中心”。这个仓库里存放着各种各样的数据,包括销售数据、客户信息、交易记录等等,这些数据来自企业内部的不同部门和系统。

数仓的主要功能是将这些分散的数据整合在一起,清理和转换成可分析的格式,使企业管理层和决策者能够更轻松地查看、理解和利用这些信息。通过数仓,企业可以进行更有效的业务分析、趋势预测、决策制定,从而提升业务的智能化和竞争力。

数仓的优势包括:

  • 决策支持: 提供高性能的查询和报表功能,帮助企业领导和分析师做出更好的决策。
  • 数据一致性: 集中存储数据,确保数据的一致性和准确性。
  • 历史数据追溯: 可以存储历史数据,支持时间序列分析和趋势观察。
  • 数据整合: 整合来自不同业务系统的数据,提供一个全面的视图。
  • 总的来说,数据仓库在企业中扮演着重要角色,帮助组织更好地理解和利用其数据资产。

数仓通常从不同的业务系统中汇总数据,将其清洗、转换、加载(ETL)到一个统一的存储库中,以便用户可以执行复杂的查询和分析。数据仓库的设计通常遵循维度建模的原则,其中数据被组织成事实表和维度表,以支持多维分析。

企业为什么要建数仓?

企业建立数据仓库(Data Warehouse)有多个重要原因,其中一些主要的包括:

集中数据存储: 数据仓库提供一个集中存储和管理企业内部和外部数据的地方。这使得数据更容易访问、管理和维护,有助于确保数据的一致性和准确性。

支持决策制定: 数据仓库能够整合不同来源的数据,提供更全面、准确的信息,帮助企业管理层做出更明智的战略和战术决策。通过分析历史数据和当前趋势,企业能更好地了解市场、客户、业务运营等方面的情况。

提高数据质量: 数据仓库通常包括数据清洗、转换和加载(ETL)过程,通过这些过程,可以提高数据的质量,确保数据的一致性和准确性。这有助于避免在决策中因为数据质量问题而导致的错误。

支持业务智能和分析: 数据仓库是业务智能和分析的基础。通过对数据仓库中的数据进行查询和分析,企业可以获取深刻的见解,发现潜在的模式和趋势,帮助业务更好地了解市场、客户需求和业务绩效。

满足合规性要求: 数据仓库的建立可以有助于满足法规和合规性方面的要求。通过确保数据的一致性和准确性,企业能够更容易地满足监管机构的规定。

支持大数据处理: 随着大数据的崛起,企业需要处理和分析海量的数据。数据仓库提供了一种结构化的方法,帮助企业有效地管理和分析大规模数据集。

促进数据驱动文化: 数据仓库可以促进数据驱动的企业文化。通过使数据更易于访问和理解,员工更有可能使用数据支持其决策和行动。

总的来说,建立数据仓库有助于企业更好地管理、分析和利用数据资源,从而提高决策的准确性和效率,推动业务的发展。

建数仓的数据库选型

关系型数据库:

Oracle Database: Oracle是一种强大的关系型数据库管理系统,广泛用于大型企业和复杂的数据仓库环境。
Microsoft SQL Server: SQL Server是微软推出的关系型数据库管理系统,适用于Windows环境,并提供强大的商业智能和分析功能。
MySQL: MySQL是一种开源的关系型数据库,适用于中小型企业的数据仓库建设。

列式数据库:

Greenplum: Greenplum是一种基于开源的列式数据库,专注于大规模数据仓库和分析场景。
ClickHouse: ClickHouse是俄罗斯的一种列式数据库,以其高性能和可扩展性而闻名。

分布式数据库:

Hadoop和Hive: 使用Hadoop作为分布式存储,结合Hive进行数据仓库查询。这适用于大规模的数据分析和处理。
Spark SQL: 基于Apache Spark的分布式数据库,适用于大规模数据处理和复杂分析。
NoSQL数据库:
MongoDB: MongoDB是一种面向文档的NoSQL数据库,适用于半结构化数据和灵活的数据模型。
Cassandra: Cassandra是一种分布式的NoSQL数据库,适用于具有高可扩展性和高可用性需求的场景。
还有

云数据库服务:

阿里云 AnalyticDB: 阿里云的AnalyticDB是一种云上数据仓库服务,具有高性能、弹性扩展和集成大数据处理的特点。
腾讯云 ClickHouse: 腾讯云提供的ClickHouse服务,可以方便地在云上搭建基于列式存储的数据仓库。

Mpp数据库:

StarRocks 和 Doris:
StarRocks 和 Doris 都是分布式的实时分析数据库,属于MPP(Massively Parallel Processing)架构的一种。它们的设计目标是支持大规模数据存储和分析,特别适用于OLAP(Online Analytical Processing)场景,即面向复杂查询和分析的工作负载。

中国的一些MPP(Massively Parallel Processing)数据库包括:

OceanBase:
OceanBase是由阿里巴巴开发的分布式数据库系统。它支持水平扩展和MPP处理,用于应对大规模数据存储和处理需求。OceanBase不仅支持事务型工作负载,还能够处理大量的分析型查询。

TencentDB:
腾讯云的数据库服务TencentDB(原腾讯云分布式数据库TDSQL)具有分布式架构和MPP处理能力,适用于OLAP和OLTP场景。它提供了MySQL、PostgreSQL和SQL Server等不同引擎的版本。

Huawei GaussDB:
华为的GaussDB是一款分布式数据库产品,支持MPP处理,适用于海量数据的存储和分析。它支持多模型数据库,包括关系型、时序型、图形型等。

数仓的备份

数据仓库的备份是保障数据安全、可用性和完整性的关键步骤。备份策略应该根据业务需求、数据重要性和恢复时间目标(Recovery Time Objective, RTO)等因素进行制定。以下是关于数据仓库备份的一些建议:

全量备份:

定期进行全量备份是数据仓库备份策略的基础。全量备份包含整个数据库的数据,是恢复数据的基础。

增量备份:

为减少备份时间和存储成本,可以考虑增量备份。增量备份只备份自上次备份以来发生变化的数据,节省存储空间和备份时间。

定期备份计划:

制定定期的备份计划,根据业务需求和数据变化频率来决定备份的频率。一般来说,每日全量备份和更频繁的增量备份是常见的做法。

分层备份:

根据数据仓库的不同层次,可以考虑采用分层备份策略。比如,可以对ODS层和DWD层采用不同的备份频率和保留期限,根据数据变更的频率和重要性进行调整。

异地备份:

将备份数据存储在与数据仓库主体不同的物理位置,以防止因自然灾害、硬件故障等原因导致的数据丢失。云存储服务也是一个常见的异地备份选择。

压缩和加密:

在备份数据时,可以考虑对备份文件进行压缩,以节省存储空间。同时,对备份数据进行加密有助于确保备份文件的安全性。

测试恢复流程:

定期测试备份的恢复过程,以确保备份数据的完整性和可用性。这可以在面临真实灾难时提高数据恢复的成功率。

日志备份:

在数据库支持的情况下,进行事务日志的备份,以支持点时间恢复(Point-in-Time Recovery)。这可以减小数据丢失的范围。

监控和报警:

设置备份任务的监控和报警机制,及时发现备份失败、存储空间不足等问题,确保备份任务按计划执行。
备份是数据管理中至关重要的一环,一个健全的备份策略有助于最小化数据丢失、确保系统可用性,并提供在紧急情况下迅速恢复数据的能力。

TB级数仓的硬件配置

要构建一个TB级别的大规模数据仓库,需要精心设计硬件配置以满足高性能、可伸缩性和可靠性的要求。以下是一个概括性的TB级数据仓库的硬件配置示例:

计算节点(Compute Nodes):

数量: 数十至数百台计算节点,具体数量根据数据规模和性能需求而定。
处理器: 每个计算节点配备多个高性能的多核处理器,如Intel Xeon或AMD EPYC系列。
内存: 大量的RAM,通常每个节点需要几百GB到数TB的内存,以支持大规模数据的并行处理和分析。
存储节点(Storage Nodes):

数量: 数十至数百台存储节点,用于存储大规模的数据。
存储类型: 高性能的分布式存储系统,可能包括SSD和HDD的混合存储,以平衡性能和成本。分布式文件系统或对象存储可用于提供高可用性和可伸缩性。
存储容量: 每个节点具有数十TB到数百TB的存储容量,总存储容量达到TB级别。
网络架构:

高速网络: 使用高速网络互联计算节点和存储节点,例如40Gbps或100Gbps以保障快速数据传输。
InfiniBand或Ethernet: 选择适当的网络技术,以支持低延迟和高带宽的通信,确保计算节点和存储节点之间的有效通信。
数据库引擎和软件:

分布式数据库: 选择适合大规模数据仓库的分布式数据库引擎,如StarRocks、Doris、Greenplum等。
操作系统: 使用稳定、高性能的操作系统,如Linux发行版(例如CentOS、Red Hat)。
负载均衡和管理工具:

负载均衡器: 在前端引入负载均衡器以平衡查询负载,确保计算和存储资源充分利用。
集群管理工具: 使用专业的集群管理工具,确保节点的高可用性和故障恢复。
冗余备份和灾难恢复:

冗余节点: 在计算和存储层面引入冗余节点,以防单个节点故障。这可以通过数据复制和备份机制来实现。
灾难恢复: 考虑在不同地理位置部署冗余数据中心,以实现灾难恢复和数据备份的安全性。
以上硬件配置只是一个示例,具体的TB级数据仓库硬件配置需要根据实际需求、预算和性能目标进行调整。在设计和建设过程中,建议进行性能测试和负载测试,以确保硬件配置能够满足数据仓库的需求。


一些学习资料
github
在这里插入图片描述

wiki-data_warehouse
在这里插入图片描述

aws-data-warehouse
在这里插入图片描述
azure-data-warehouse

在这里插入图片描述
IBM-data-warehouse
在这里插入图片描述

clickhouse -data warehouse
在这里插入图片描述

文本 将使用 clickhouse 做数据仓库,后面一章会说到,谢谢大家

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/402311.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

WordPress后台自定义登录和管理页面插件Admin Customizer

WordPress默认的后台登录页面和管理员,很多站长都想去掉或修改一些自己不喜欢的功能,比如登录页和管理页的主题样式、后台左侧菜单栏的某些菜单、仪表盘的一些功能、后台页眉页脚某些小细节等等。这里boke112百科推荐这款可以让我们轻松自定义后台登录页…

2024-02-21 学习笔记(DETR)

自动多模态检测验证效果不佳(过检太多)后,节后开始尝试DETR路线。 基本梳理了下DETR发展和验证的脉络,先进行相应指定场景的效果验证。 关于DETR系列的介绍,B站上比较多,迪哥的都讲的比较细。 推荐大佬的…

【数据结构】_队列

目录 1.概念 2.队列的使用 3.队列模拟实现 4.循环队列 5.双端队列 6.栈与队列的互相实现 6.1 用队列实现栈 6.2 用栈实现队列 1.概念 (1)队列是只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表; &am…

1Panel使用GMSSL+Openresty实现国密/RSA单向自适应

本文 首发于 Anyeの小站,转载请取得作者同意。 前言 国密算法是国家商用密码算法的简称。自2012年以来,国家密码管理局以《中华人民共和国密码行业标准》的方式,陆续公布了SM2/SM3/SM4等密码算法标准及其应用规范。其中“SM”代表“商密”&a…

C++日志库plog使用指南

前言 之前介绍过一个C语言日志库 轻量级c语言开源日志库log.c介绍,源代码只有不到200行,使用非常方便。但是也存在很多缺点,比如日志时间只支持打印到秒,没有作多线程处理,不支持日志回滚。在小型项目或者测试demo中使…

SpringBoot-helloworld

1. helloworld 使用springboot完成一个简单的web应用&#xff0c;当访问/hello时&#xff0c;返回"hello springboot"字符串。 首先&#xff0c;创建一个maven工程&#xff0c;并引入依赖。 <!--使用springboot编写web应用前&#xff0c;需要声明父工程spring-b…

Cent OS 7 无线网连接

环境&#xff1a;小型迷尔工控机 CentOS的镜像版本&#xff1a;CentOS-7-x86_64-DVD-2009.iso 下载地址&#xff1a;https://www.centos.org/download/ 安装CentOS的过程跳过。 成功安装后&#xff1a; 1、通过 ip addr 查看网卡的情况 2、通过nmcli dev status 查看网卡的…

嵌入式学习-qt-Day3

嵌入式学习-qt-Day3 一、思维导图 二、作业 完善对话框&#xff0c;点击登录对话框&#xff0c;如果账号和密码匹配&#xff0c;则弹出信息对话框&#xff0c;给出提示”登录成功“&#xff0c;提供一个Ok按钮&#xff0c;用户点击Ok后&#xff0c;关闭登录界面&#xff0c;跳…

【Nacos】构建云原生应用的动态服务发现、配置管理和服务管理平台【企业级生产环境集群搭建应用】

基础描述 一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集&#xff0c;帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。Nacos 帮助您更敏捷和容易地构建、交付和…

快速鲁棒的ICP(一)

一、代码下载以、修改以及使用 链接&#xff1a;OpenGP/sparseicp: Automatically exported from code.google.com/p/sparseicp (github.com) 解压之后&#xff1a; 快速鲁棒的ICP是其他人在这份Sparse ICP代码基础上改写出来的&#xff1a; 我这里已经下载好了&#xff1a;…

【C Primer Plus第六版 学习笔记】 第十七章 高级数据表示

有基础&#xff0c;进阶用&#xff0c;个人查漏补缺 链表&#xff1a;假设要编写一个程序&#xff0c;让用户输入一年内看过的所有电影&#xff0c;要储存每部影片的片名和评级。 #include <stdio.h> #include <stdlib.h> /* 提供malloc()的原型 */ #include <s…

​LeetCode解法汇总106. 从中序与后序遍历序列构造二叉树

目录链接&#xff1a; 力扣编程题-解法汇总_分享记录-CSDN博客 GitHub同步刷题项目&#xff1a; https://github.com/September26/java-algorithms 原题链接&#xff1a; 力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 描述&#xff1a; 给定两个…

jetson是什么?

jetson是NVIDIA推出的一系列嵌入式计算板&#xff0c;用于边缘计算。这些板卡专门设计用于加速机器学习和计算机视觉等人工智能应用&#xff0c;它们是低功耗设备&#xff0c;非常适合在无人机、机器人、智能相机和其他自动化设备中使用。 Jetson板卡包括多种型号&#xff0c;…

前端知识复习

1.symbol类型 Symbol 是 ECMAScript 6 中引入的一种新的基本数据类型&#xff0c;它表示独一无二的值。Symbol 值是通过 Symbol() 函数创建的。 Symbol 值具有以下特点&#xff1a; 独一无二性&#xff08;唯一性&#xff09;&#xff1a;每个通过 Symbol() 函数创建的 Symb…

2024 年,向量数据库的性能卷到什么程度了?

对于数据库&#xff08;尤其是向量数据库&#xff09;而言&#xff0c;“性能”是一个十分关键的指标&#xff0c;其用于衡量数据库是否能够在有限资源内&#xff0c;高效处理大量用户请求。对于向量数据库用户而言&#xff0c;尽管可能在某些情况下对延时的要求不高&#xff0…

模板(类模板)---C++

模板目录 2.类模板2.1 类模板语法2.2 类模板与函数模板区别2.3 类模板中成员函数创建时机2.4 类模板对象做函数参数2.5 类模板与继承2.6 类模板成员函数类外实现2.7 类模板分文件编写2.8 类模板与友元2.9 类模板案例 2.类模板 2.1 类模板语法 类模板作用&#xff1a; 建立一个…

pikachu靶场-XSS

XSS&#xff1a; XSS&#xff08;跨站脚本&#xff09;概述 Cross-Site Scripting 简称为“CSS”&#xff0c;为避免与前端叠成样式表的缩写"CSS"冲突&#xff0c;故又称XSS。一般XSS可以分为如下几种常见类型&#xff1a; 1.反射性XSS; 2.存储型XSS; 3.DOM型XSS; …

猫头虎分享已解决Bug || Spring Error: Request method ‘POST‘ not supported

博主猫头虎的技术世界 &#x1f31f; 欢迎来到猫头虎的博客 — 探索技术的无限可能&#xff01; 专栏链接&#xff1a; &#x1f517; 精选专栏&#xff1a; 《面试题大全》 — 面试准备的宝典&#xff01;《IDEA开发秘籍》 — 提升你的IDEA技能&#xff01;《100天精通鸿蒙》 …

上海交大研究团队成功开发可读大模型指纹 /苹果连续17年蝉联全球最受赞赏公司榜首 |魔法半周报

我有魔法✨为你劈开信息大海❗ 高效获取AIGC的热门事件&#x1f525;&#xff0c;更新AIGC的最新动态&#xff0c;生成相应的魔法简报&#xff0c;节省阅读时间&#x1f47b; &#x1f525;资讯预览 上海交大研究团队成功开发可读大模型指纹&#xff0c;实现模型血统识别 苹果…

C++从入门到精通 第十七章(终极案例)

写在前面&#xff1a; 本系列专栏主要介绍C的相关知识&#xff0c;思路以下面的参考链接教程为主&#xff0c;大部分笔记也出自该教程&#xff0c;笔者的原创部分主要在示例代码的注释部分。除了参考下面的链接教程以外&#xff0c;笔者还参考了其它的一些C教材&#xff08;比…