기린 전투에 항목에서 : 실제 사례 기린 전투에 도착 : 실제 케이스

전투 입장에서 기린 : 실제 케이스

저작권 : 재생하는 소스를 표시하시기 바랍니다.
출처 : http://bigdataer.net/?p=308

혼란을 조판? 이동하시기 바랍니다 텍스트를 더 나은 독서 경험을 얻을 수

이전 두 기사는 기린의 개념을 도입하고 큐브의 원칙 중 일부는 실제 사례에서이 문서는 기린 플랫폼에서 다차원 분석 프로젝트를 만드는 방법, 시작합니다.

1. 프로젝트를 생성

기린 사용자 인터페이스로, 분리하는 비즈니스 데이터 분석의 다양한 효과적인 다중 기린 프로젝트를 작성할 수 생성 될 수없는 프로젝트, 존재하지 않는 경우. 그림 :
계획
아래의 프로젝트 이름을 입력, 설명을 채울 수없는
계획
및 제출, 성공적으로 생성 된 프로젝트를 제출합니다.

2. 데이터 소스를 추가

데이터 소스 탭을 클릭 -> 하이브로드 테이블
DS
라이브러리 이름 앞에 하이브 테이블 이름을 작성
DS
, 동기화를 클릭하고 데이터 소스를 가져, 다음과 같은 정보를 볼 수 있습니다 :
DS

3. 모델을 만들기

모델

모델 이름을 추가하고 다음
모델
조회 테이블이 추가 될 수 있습니다 경우, 사실 테이블에 데이터 소스에 추가 단지 선택하고 다음
모델
차원 원하는 선택
모델
선택 인덱스에 필요한
모델
설정
모델
시간 분할에 의해 하이브 테이블을 선택, 파티션 필드 표현 파티션 날짜 colume을 필드. 그리고 시간 형식에서 다른 날짜 형식을 선택합니다. 최하부의 필터는 필터 조건과 같은 데이터 소스에 첨가 될 수있다.
지금까지 모델을 만들었습니다.

4. 큐브 만들기

下面进入关键环节创建cube。
类似于创建model,创建cube。选择之前创建好的model,并填入cube name。notification email list是选填项,表示报警接收人邮件地址,多个邮件地址以逗号隔开。
입방체
然后next。选择dimession,有两种方式:一是手动添加dimession,二是使用自动生成,我们这里使用自动生成,然后勾选需要的字段。
입방체
입방체
然后next,选择指标
입방체
count(1)是系统默认自带的,不要删除。
点击+号添加需要的指标,需要填入名称,选择表达式。这里选择的是sum。我们要针对disp加和求pv,在param value里面选择disp列。
需要注意的是kylin中hive表中每一列字段的类型要求比较严格。dimession字段需要为String,用来加和的指标字段须为bigint或者decimal
添加了所有需要的指标后,点击next
입방체
设置merge时间。Kylin每次build会生成一张hbase表,merge操作会把多天数据合并成一张新的hbase表。可加快查询。
设置partition Start Date,即数据源开始时间,默认为1970-01-01.点击Next.
입방체
Mandatory Dimensions:每次查询均会使用的维度可添加在此。比如某些情况下的partition column.
Hierarchy Dimensions:维度列中彼此间存在层级关系的列,比如“国家-省份-市-县”
Joint Dimensions:每次查询会同时使用或不使用的维度组合。
Aggregation Group:在不同的查询中,两组维度组合之间不会产生交叉,可选择此选项,比如所有的cube维度有 [ a,b,c,d,e,f ] 6个,每次查询中只会同时查与 [ a,b,c ] 相关的信息(比如[a],[a,c]等)而不会查询 [ d,e,f ],或者相反,则可选择此选项。
以上选择均可减少build过程中的数据量,是加快build与query速度的优化点之一。
接下来基本上就是next,然后保存,如果没有报错,则证明cube创建成功,如下图
입방체

5.cube其他操作

最常用的就是build操作,它会根据我们创建的cube进行数据的预计算。
짓다
选择构建的终止时间,然后提交,之后可以在monitor中看到cube构建的状态。
짓다
其他操作说明:
Drop:丢弃现有cube,条件:无Pending, Running, Error 状态的job.
Edit:编辑现有cube,条件:cube需处于disable状态。
Refresh:重建某已有时间段数据,针对于已build时间段的源数据发生了改变的情况。
Merge:手动触发merge操作。
Enable:使拥有至少一个有效segment的cube从disable变为enable状态。
Purge:清空所有该cube的数据。
Clone:克隆一个新的cube,可设置新的名字,其他相关配置与原cube相同。
Disable:使一个处于ready状态的cube变为Disable状态,查询不会从disable的cube中获取数据。

6.查询操作

数据预计算完成后就可以进行查询了,查询过程中也可以验证cube创建的是否有问题。有两种查询方式:一种是通过kylin的web界面,一种是使用kylin提供的rest api。下面分别介绍。
(1)web查询。进入insight,输入sql语句,等待查询结果,和一般的数据库客户端类似。
(2)rest api。举例如下:
假如需要查询的sql语句为:“select sum(disp) as pv from t_table group by td,bd”
kylin账户的账号密码为:“kylinid:passwd”,对其进行base64加密。secret=echo -n “kylin_id:password” | base64
使用的project为:my_kylin_project
接口地址为:http://localhost:7070/kylin/api/query
则请求为:

bash    2行

curl -X POST -H "Authorization:Basic ${secret}" -H "Content-Type:application/json" -d '{ "sql" : "select sum(disp) as pv from t_table group by td,bd", "project" : "my_kylin_project" }' http://localhost:7070/kylin/api/query 

更多文章请关注微信公众号:bigdataer

版权申明:转载请注明出处。
文章来源:http://bigdataer.net/?p=308

排版乱?请移步原文获得更好的阅读体验

前面两篇文章已经介绍了kylin的相关概念以及cube的一些原理,这篇文章将从一个实际的案例入手,介绍如何在kylin平台上创建一个多维分析项目。

1.创建project

进入kylin操作界面,如果没有project可以创建,kylin里面可以创建多个project,有效的把各种业务数据分析隔离开来。如图:
계획
如下,填写project name,description可以不填
계획
然后submit 提交,project创建成功。

2.添加数据源

点击DataSource选项卡->Load Hive Table
DS
填写hive表名,前面加上库名
DS
然后点击sync,导入数据源成功,可以看到如下信息:
DS

3.创建model

모델

添加model name然后 next
모델
选择刚才添加到数据源中的事实表,如果有Lookup Table也可添加,然后next
모델
选择需要的维度
모델
选择需要的指标
모델
相关设置
모델
partition date colume表示分区字段,选择hive表中按时间分区的字段。然后从date format中选择不同的时间格式。最下面的filter可以添加where条件对数据源中的数据做过滤。
至此,model创建完成。

4.创建cube

下面进入关键环节创建cube。
类似于创建model,创建cube。选择之前创建好的model,并填入cube name。notification email list是选填项,表示报警接收人邮件地址,多个邮件地址以逗号隔开。
입방체
然后next。选择dimession,有两种方式:一是手动添加dimession,二是使用自动生成,我们这里使用自动生成,然后勾选需要的字段。
입방체
입방체
然后next,选择指标
입방체
count(1)是系统默认自带的,不要删除。
点击+号添加需要的指标,需要填入名称,选择表达式。这里选择的是sum。我们要针对disp加和求pv,在param value里面选择disp列。
需要注意的是kylin中hive表中每一列字段的类型要求比较严格。dimession字段需要为String,用来加和的指标字段须为bigint或者decimal
添加了所有需要的指标后,点击next
입방체
设置merge时间。Kylin每次build会生成一张hbase表,merge操作会把多天数据合并成一张新的hbase表。可加快查询。
设置partition Start Date,即数据源开始时间,默认为1970-01-01.点击Next.
입방체
Mandatory Dimensions:每次查询均会使用的维度可添加在此。比如某些情况下的partition column.
Hierarchy Dimensions:维度列中彼此间存在层级关系的列,比如“国家-省份-市-县”
Joint Dimensions:每次查询会同时使用或不使用的维度组合。
Aggregation Group:在不同的查询中,两组维度组合之间不会产生交叉,可选择此选项,比如所有的cube维度有 [ a,b,c,d,e,f ] 6个,每次查询中只会同时查与 [ a,b,c ] 相关的信息(比如[a],[a,c]等)而不会查询 [ d,e,f ],或者相反,则可选择此选项。
以上选择均可减少build过程中的数据量,是加快build与query速度的优化点之一。
接下来基本上就是next,然后保存,如果没有报错,则证明cube创建成功,如下图
입방체

5.cube其他操作

最常用的就是build操作,它会根据我们创建的cube进行数据的预计算。
짓다
选择构建的终止时间,然后提交,之后可以在monitor中看到cube构建的状态。
짓다
其他操作说明:
Drop:丢弃现有cube,条件:无Pending, Running, Error 状态的job.
Edit:编辑现有cube,条件:cube需处于disable状态。
Refresh:重建某已有时间段数据,针对于已build时间段的源数据发生了改变的情况。
Merge:手动触发merge操作。
Enable:使拥有至少一个有效segment的cube从disable变为enable状态。
Purge:清空所有该cube的数据。
Clone:克隆一个新的cube,可设置新的名字,其他相关配置与原cube相同。
Disable:使一个处于ready状态的cube变为Disable状态,查询不会从disable的cube中获取数据。

6.查询操作

큐브 생성 문제가있는 경우 데이터가 쿼리 이후에 완료된 것으로 간주 될 것으로 예상된다, 쿼리 프로세스도 확인할 수 있습니다. 검색하는 방법은 두 가지가 있습니다 : 하나는 웹 인터페이스 기린 통해 제공된 나머지 API를 기린을 사용하는 것입니다. 다음은 소개되었다.
(1) 웹 쿼리. 통찰력, 입력 SQL 문을 입력 쿼리 결과 대기 및 일반 데이터베이스 클라이언트 유사합니다.
(2) 나머지 API. 예를 들어로는 다음과 같습니다
에 필요한 경우 SQL 쿼리 문 "등의 합계 (DISP)를 선택 TD으로 t_table 그룹에서 태양 광 발전을, BD는"
"kylinid : passwd에"그 base64로 암호화 암호 기린 계정이 차지하고있다. = 비밀 echo -n “kylin_id:password” | base64
사용하는 프로젝트는 다음과 같습니다 my_kylin_project의
인터페이스 주소는 : HTTP : // localhost를 : 7070 / 기린 / API / 쿼리가
그 요청은 다음과 같습니다

bash는 2 선

curl -X POST -H "Authorization:Basic ${secret}" -H "Content-Type:application/json" -d '{ "sql" : "select sum(disp) as pv from t_table group by td,bd", "project" : "my_kylin_project" }' http://localhost:7070/kylin/api/query 

더 많은 기사를 들어 마이크로 채널 대중 번호에주의하십시오 : bigdataer를

추천

출처www.cnblogs.com/zzjhn/p/11525012.html