OLAP简介(结合个人工作)
OLTP和OLAP 传统的数据库系统都是OLTP,只能提供数据原始的操作。不支持分析工作。 OLTP系统::执行联机事务和查询处理。一般超市进销存系统,功能:注册,记账,库存和销售记录等等, OLAP系统:数据分析与决策服务,组织不同式数据,满足不同用户需求。 区
OLTP和OLAP
传统的数据库系统都是OLTP,只能提供数据原始的操作。不支持分析工作。
OLTP系统::执行联机事务和查询处理。一般超市进销存系统,功能:注册,记账,库存和销售记录等等,
OLAP系统:数据分析与决策服务,组织不同格式数据,满足不同用户需求。
区别:
面向性。OLTP面向顾客,就是操作员,如超市收银员,银行柜台人员。OLAP面向市场,用于数据分析,分析人员包括数据分析员,做出决策的业务经理,或者策略制定部分。
数据内容:OLTP当前数据。OLAP历史数据的汇总与聚集。
数据库设计:OLTP用ER模型和面向应用数据库。OLAP 用星型或雪花模型,面向主题数据库设计。
还有访问模式:操作事务与只读的分析计算的区别。
等等
多维数据模型:
数据立方体cube:
给定维度的每个子集产生一个cuboid(称为方体)。这样可以在不同粒度上的汇总级别或分组(group by),来显示数据,整体上方体的格成为cube。
最低层汇总的方体称为基本方体(basecuboid)。出现某一个维度上的汇总后,则为非基本方体。
汇总到最高层的数据称为顶点方体(apexcuboid),如0-d方体,that’s to say,所有维度汇总到一起只剩一个cuboid,不能再汇总了。
顶点方体是最高泛化的方体。基本方体是最低特殊化的方体。
粗细粒度是不同程度上的汇总,涉及操作:
上卷(roll up),供应商称之为上钻drillup,沿着维度的概念分层向上
下钻(drill down)沿着维度的概念分层向下,需找更细粒度的数据。
切片:固定某一维度的取值,抽取这一维度下的子集。
切块:由多个维度上选择多个取值,抽取其所映射的子立方体。
旋转rotate: 也叫pivot数轴变换,简单说,二维表中的行列转置。到三维以上复杂,不同数轴之间的位置变换。说的高大上叫数据的视图角度转变
概念分层:低层概念(如城市)映射到更高的层次概念(如国家)。从低到高叫泛化(generalize),从高到低叫特殊化(specialize)。
模式分层(schema hierarchy)概念分层为数据库模式中属性的全序或偏序。
集合分组分层(set-grouping hierarchy)给定维度的属性值的离散化或分组。如年龄age属性离散化为young、mid、old三个子集,分组group by sex的男女子集。
数据立方体的实现:
使用数据仓库的模型是多维模型,目前经常的有:
星型模型:一个大而全,且无冗余的事实表(fact);以及不同分析维度上的维度表(dimension)。维度表围绕事实表,通过每个维度自身的dimension key(所有可能范围内的取值)关联。
雪花模型:星型模型的进一步细化,即将其中包含多个值的维度表进行规范化的(就是将维度表包含的某个值提取出来,作为新的dimension表),以便减少冗余。
这样把数据进一步分解到附加表中,易于维护,省空间(防止维度灾难),但查询时需要更多关联操作,降低时效性。
事实星座模型(fact constellation)or 星系模式(galaxy schema):多个fact tableshare all dimesioms(共享维度表)。
比如我的设计的data warehouse。Workbench
Cube定义
Dimension定义
一般的data warehouse 都是用fact constellation。
指标Index
度量measure
维度灾难(curse of dimensionality),当维度过多(特征空间非常复杂),那么维度之间的关联计算就变得非常多,而维度概念分层会加重灾难。反应在cube中,就是不同维度的计算就会产生巨大的数据,就是预计算cube中所有的方体(子cube),存储空间是爆炸似增长。N维会有2n个子cube,加上概念分层Li,则方体总数
预计算:1不物化(no materialization)2全物化(full materialization)3部分物化(partial materialization)
OLTP和OLAP
OLTP系统::执行联机事务和查询处理。一般超市进销存系统,功能:注册,记账,库存和销售记录等等,
OLAP系统:数据分析与决策服务,组织不同格式数据,满足不同用户需求。
区别:
面向性。OLTP面向顾客,就是操作员,如超市收银员,银行柜台人员。OLAP面向市场,用于数据分析,分析人员包括数据分析员,做出决策的业务经理,或者策略制定部分。
数据内容:OLTP当前数据。OLAP历史数据的汇总与聚集。
数据库设计:OLTP用ER模型和面向应用数据库。OLAP 用星型或雪花模型,面向主题数据库设计。
还有访问模式:操作事务与只读的分析计算的区别。
等等
多维数据模型:
数据立方体cube:
给定维度的每个子集产生一个cuboid(称为方体)。这样可以在不同粒度上的汇总级别或分组(group by),来显示数据,整体上方体的格成为cube。
最低层汇总的方体称为基本方体(basecuboid)。出现某一个维度上的汇总后,则为非基本方体。
汇总到最高层的数据称为顶点方体(apexcuboid),如0-d方体,that’s to say,所有维度汇总到一起只剩一个cuboid,不能再汇总了。
顶点方体是最高泛化的方体。基本方体是最低特殊化的方体。
粗细粒度是不同程度上的汇总,涉及操作:
上卷(roll up),供应商称之为上钻drillup,沿着维度的概念分层向上
下钻(drill down)沿着维度的概念分层向下,需找更细粒度的数据。
切片:固定某一维度的取值,抽取这一维度下的子集。
切块:由多个维度上选择多个取值,抽取其所映射的子立方体。
旋转rotate: 也叫pivot数轴变换,简单说,二维表中的行列转置。到三维以上复杂,不同数轴之间的位置变换。说的高大上叫数据的视图角度转变
概念分层:低层概念(如城市)映射到更高的层次概念(如国家)。从低到高叫泛化(generalize),从高到低叫特殊化(specialize)。
模式分层(schema hierarchy)概念分层为数据库模式中属性的全序或偏序。
集合分组分层(set-grouping hierarchy)给定维度的属性值的离散化或分组。如年龄age属性离散化为young、mid、old三个子集,分组group by sex的男女子集。
数据立方体的实现:
使用数据仓库的模型是多维模型,目前经常的有:
星型模型:一个大而全,且无冗余的事实表(fact);以及不同分析维度上的维度表(dimension)。维度表围绕事实表,通过每个维度自身的dimension key(所有可能范围内的取值)关联。
雪花模型:星型模型的进一步细化,即将其中包含多个值的维度表进行规范化的(就是将维度表包含的某个值提取出来,作为新的dimension表),以便减少冗余。
这样把数据进一步分解到附加表中,易于维护,省空间(防止维度灾难),但查询时需要更多关联操作,降低时效性。
事实星座模型(fact constellation)or 星系模式(galaxy schema):多个fact tableshare all dimesioms(共享维度表)。
比如我的设计的data warehouse。Workbench
Cube定义
Dimension定义
一般的data warehouse 都是用fact constellation。
指标Index
度量measure
维度灾难(curse of dimensionality),当维度过多(特征空间非常复杂),那么维度之间的关联计算就变得非常多,而维度概念分层会加重灾难。反应在cube中,就是不同维度的计算就会产生巨大的数据,就是预计算cube中所有的方体(子cube),存储空间是爆炸似增长。N维会有2n个子cube,加上概念分层Li,则方体总数
预计算:1不物化(no materialization)2全物化(full materialization)3部分物化(partial materialization)

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제









1. 먼저 휴대폰에 다운로드한 기업 위챗 소프트웨어를 엽니다. 로그인 시 선택하는 방법은 두 가지가 있습니다. 하나는 WeChat ID를 사용하는 것이고, 다른 하나는 휴대폰 번호를 사용하는 것입니다. 3. 이때 기업 관리자는 백그라운드에서 귀하의 휴대폰 번호를 추가해야 하며, 그러면 기업 WeChat이 귀하의 휴대폰 번호를 기반으로 기업을 식별합니다. 그런 다음 귀하의 비즈니스를 표시하고 아래의 비즈니스 입력 옵션을 클릭하세요. 4. 그런 다음 소프트웨어에서 기능 사용을 입력할 수 있습니다. 가장 중요한 것은 관리자가 귀하의 휴대폰 번호를 기업에 추가해야 한다는 것입니다. 그렇지 않으면 사용할 수 없습니다.

ORM(객체 관계형 매핑) 프레임워크는 Python 개발에서 중요한 역할을 하며, 객체와 관계형 데이터베이스 사이에 브리지를 구축하여 데이터 액세스 및 관리를 단순화합니다. 다양한 ORM 프레임워크의 성능을 평가하기 위해 이 기사에서는 다음과 같은 널리 사용되는 프레임워크를 벤치마킹합니다. sqlAlchemyPeeweeDjangoORMPonyORMTortoiseORM 테스트 방법 벤치마크에서는 100만 개의 레코드가 포함된 SQLite 데이터베이스를 사용합니다. 테스트는 데이터베이스에서 다음 작업을 수행했습니다. 삽입: 테이블에 10,000개의 새 레코드를 삽입합니다. 읽기: 테이블의 모든 레코드를 읽습니다. 업데이트: 테이블의 모든 레코드에 대해 단일 필드를 업데이트합니다. 삭제: 테이블의 모든 레코드를 삭제합니다. 각 작업

인터넷의 급속한 발전과 함께 웹 애플리케이션에 대한 수요도 증가하고 있습니다. 웹 개발자에게는 우수한 웹 애플리케이션 프레임워크를 선택하는 것이 필수적입니다. PHP 분야에서 Laravel은 널리 사용되는 웹 애플리케이션 프레임워크가 되었습니다. 그러나 동시성이 높고 로드가 높은 시나리오의 경우 PHP의 기존 CGI 모드 웹 애플리케이션은 그다지 적합하지 않습니다. 이때 특히 고성능 네트워크 통신 프레임워크가 중요하며, Swoole은 매우 뛰어난 솔루션입니다.

ORM(객체 관계형 매핑)은 개발자가 SQL 쿼리를 직접 작성하지 않고도 객체 프로그래밍 언어를 사용하여 데이터베이스를 조작할 수 있도록 하는 프로그래밍 기술입니다. Python의 ORM 도구(예: SQLAlchemy, Peewee 및 DjangoORM)는 빅 데이터 프로젝트의 데이터베이스 상호 작용을 단순화합니다. 장점 코드 단순성: ORM을 사용하면 긴 SQL 쿼리를 작성할 필요가 없으므로 코드 단순성과 가독성이 향상됩니다. 데이터 추상화: ORM은 데이터베이스 구현 세부 사항에서 애플리케이션 코드를 분리하여 유연성을 향상시키는 추상화 계층을 제공합니다. 성능 최적화: ORM은 캐싱 및 일괄 작업을 사용하여 데이터베이스 쿼리를 최적화함으로써 성능을 향상시키는 경우가 많습니다. 이식성: ORM을 통해 개발자는 다음을 수행할 수 있습니다.

Yii 프레임워크는 웹 애플리케이션을 개발할 때 효율성과 안정성이 뛰어난 고성능, 확장성, 유지 관리 가능성이 높은 PHP 개발 프레임워크입니다. Yii 프레임워크의 가장 큰 장점은 고유한 기능과 개발 방법이면서 동시에 많은 실용적인 도구와 기능을 통합한다는 것입니다. Yii 프레임워크의 핵심 개념인 MVC 패턴 Yii는 애플리케이션을 비즈니스 로직 처리 모델과 사용자 인터페이스 표현 모델이라는 세 가지 독립적인 부분으로 나누는 패턴인 MVC(Model-View-Controller) 패턴을 채택합니다. .

Java 디자인 패턴 이해: 일반적으로 사용되는 7가지 디자인 패턴에 대한 소개, 특정 코드 예제가 필요합니다. Java 디자인 패턴은 널리 수용되는 일련의 디자인 아이디어와 행동 강령을 제공합니다. 디자인 패턴은 코드 구조를 더 잘 구성하고 계획하는 데 도움이 되므로 코드의 유지 관리, 읽기 및 확장성이 향상됩니다. 이 글에서는 Java에서 일반적으로 사용되는 7가지 디자인 패턴을 소개하고 해당 코드 예제를 제공합니다. 싱글톤 패트

PHP와 블록체인의 완벽한 조합 탐색 블록체인 기술이 성숙해지고 응용 범위가 계속 확장됨에 따라 사람들은 더 많은 유형의 응용 프로그램을 달성하기 위해 기존 프로그래밍 언어와 블록체인을 결합하려고 시도하기 시작합니다. 이러한 맥락에서 널리 사용되는 네트워크 프로그래밍 언어인 PHP 언어도 블록체인 기술과의 결합을 모색하기 시작했습니다. 이 기사에서는 독자가 더 잘 이해할 수 있도록 특정 코드 예제를 포함하는 PHP 언어와 블록체인 기술의 결합에 중점을 둘 것입니다. 블록체인이란 무엇입니까? 먼저,

프론트엔드 엔지니어 업무 분석: 주요 업무는 무엇인가요? 인터넷의 급속한 발전과 함께 프론트엔드 엔지니어는 매우 중요한 전문적 역할을 수행하며 사용자와 웹사이트 애플리케이션을 연결하는 가교 역할을 합니다. 그렇다면 프론트엔드 엔지니어는 주로 어떤 일을 할까요? 이 기사에서는 프론트엔드 엔지니어의 책임을 분석하여 알아보겠습니다. 1. 프런트엔드 엔지니어의 기본 책임 웹사이트 개발 및 유지 관리: 프런트엔드 엔지니어는 웹사이트의 HTML, CSS 및 JavaScr 작성을 포함하여 웹사이트의 프런트엔드 개발을 담당합니다.
