
HANA实训指导书(共40页).doc
40页精选优质文档-----倾情为你奉上数据仓库HANA实训指导书1、连接 SAP HANA 数据库安装 HANA 客户端工具和建模工具SAP HANA Studio,1) 打开SAP HANA Studio , 弹出如下界面:2)单击SAP HANA modeler(建模)左边栏鼠标右键,选择Add System,弹出如下对话框:3)分别填入如下内容:1、Host Name:2、Instance Number: (HANA实例标示,00代表第1个,最大99)3、表述信息根据自己喜好填写然后单击Next进入下面对话框4)分别输入HANA数据库管理员分配的账户和密码单击完成连接HANA服务器成功后进入如下图所示界面: 2、加载数据安装 HANA 客户端工具和建模工具后,需要将数据加载到 HANA 实例中,以开始执行示例应用程序数据加载可能非常复杂,SAP 为不同的数据加载业务情景提供了多个解决方案2.1 图形界面方式这里将使用由 SAP HANA 建模工具提供的基本文本数据文件加载功能它可以直接将本地文件加载到 HANA 系统中操作如下:1. 打开 HANA 建模工具,单击“文件”(File) 菜单并选择“导入”项(Import)。
2. HANA 建模工具将显示“导入”(Import) 向导,请选择“从本地文件导入数据”(Data from Local File)然后单击“下一步”(Next) 按钮3. 选择在之前步骤中创建的 HANA 实例COURSE,然后单击“下一步”(Next) 按钮4. 单击源文件选项中的“浏览器”(Browser) 按钮选择示例包中提供的“教务学生数据new.csv”文件选择“标题行存在”(Header row exists) 选项;将模式设置为“USER01”,并将表名设置为“COURSE”然后单击“下一步”(Next) 按钮5. 在“管理表定义和数据映射”(Manage Table Definition and Data Mappings)图表中定义表结构:选择复选框将 CID 设置为关键字段,并设置为非空,将 BIRTHDAY的数据类型从 NVARCHAR 更改为 DATE单击“Finish”按钮,开始导入2.2 命令行方式前面图形界面导入比较直观,但是导入速度很慢,而命令行方式,因为可以设置增加线程数,导入速度很快打开HANA Studio ,进入SQL 控制台,导入数据文件”教务学生数据new.csv”到数据库SQL语句示例如下: IMPORT FROM CSV FILE ‘/data/data.csv’ INTO "COURSE"."COURSE" WITH THREADS 20 BATCH 10000 LOCK TABLE --提高列表初始装载性能 RECORD DELIMITED BY \n FIELD DELIMITED BY , DATA FORMAT ‘YYYY-MM-DD’ ERROR LOG ‘/data/DATA.log’执行结果:Statement IMPORT FROM CSV FILE /tmp/JWDATA.CSV INTO "RAWDATA" WITH THREADS 20 BATCH 10000 RECORD DELIMITED ... successfully executed in 52.592 seconds (server processing time: 52.584 seconds) - Rows Affected: 03、数据清洗从“教务学生数据new.csv”可以看到原始数据所包含字段,HANA是分析型数据库,所以其默认表模式都是列存储。
如下图所示:原始数据表模式结构经过数据清洗,例如,删除成绩为0,即选修课后,没有参加考试的记录,删除课程代码为空的记录等结果如下表所示:表3.1 选课数据表序号数据数据量备注1总数据量2,058,4302数据清洗后1,839,3353选课代码为空8,1084没有成绩(成绩0分和为空)199,3205入校学年为空976生日为空9377籍贯为空,无18,431 4、数据建模分析4.1基础数据创建我们将导入的数据经过数据清洗后得到原始数据表如下图4.1 所示:图4.1 HANA 建模工具显示原始数据表4.2 范式分解根据数据库范式分解理论,这里将原数据表分解为符合第三范式(3NF)的三个表:学生信息表(STUDENT),课程信息表(COURSEDATA),选课情况信息表(SC)数据库关系图如下图4.2所示:图4.2 HANA 建模工具显示数据库关系图在HANA中,我们使用创建计算视图方式,构建以上三个表:表4.2 数据库模式信息表表名学生信息表(CAC_S)课程信息表(CAC_C)选课情况信息表(CAC_SC)数据量29,9673,7361,840,273课程信息表学生信息表选课情况信息表4.3 建模打开左边导航栏的“Content”内容目录下Package,右键单击属性视图、分析视图和计算视图。
完成后,单击下图右方的绿色按钮,进行验证,验证通过单击按钮发布之后,就可以单击,进行数据预览和建模分析4.3.1 课程信息建模 对课程信息创建了计算视图CAC_C,其脚本如下图所示,此外,在右边输出窗口定义,输出列分别为COURSECODE和COURSENAME下面其它视图都需要建立输出列,并在语义层定义维度与度量1)课程名相同,课程代码不同的课程: 可以看出排名前10位的课程主要是每个学院都开设的实习类课程通过Row Count数值可以很容易得到全校课程数目为3,7364.3.2 学生信息建模对课程信息我们创建了计算视图CAC_S,其中利用出生日期,建立计算列,从而获得每个学生的星座其计算公式如下图所示:1) 全校按照生源地学生分布:通过Row Count数值可以很容易得到2004年以来全校学生数目为29,967人,排名前5位的是上海、江苏、浙江、湖南、山东2) 全校按照入学时间的入校学生分布:在分析视图,选择“入学时间”这个维度,度量选择安装“学号”计算发现2004,2005年记录缺少2006年至今的8年每年入校学生入学数基本持平选择”Table”页面可以看到每年的具体数据如下图: 3) 全校学生按照星座的分布:在分析视图,选择“星座”这个维度,度量选择安装“学号”计算。
排名前5位的是天枰座、天蝎座、狮子座、处女座、水瓶座4.3.3 选课信息建模对选课信息我们创建了图形化计算视图CAC_SC,其计算公式如下图所示:4.3.4 成绩绩点建模对成绩信息我们创建了计算视图CAC_S,其中利用成绩,建立计算列:成绩绩点其计算公式如下图所示:其得到的数据如下图所示:1) 全校学生生源地的平均成绩分布:在分析视图,选择“生源地”这个维度,度量选择安装“平均成绩”计算排名前5位的是浙江、河北、河南、福建、山东选择筛选器(filter), 可以对数据进行筛选,例如,只查看留学生,台湾、香港、澳门学生的数据:2) 全校学生星座的平均成绩分布:在分析视图,选择“星座”这个维度,度量选择安装“平均成绩”计算排名前5位的是天枰座、天蝎座、狮子座、处女座、水瓶座3) 全校学生生源地和绩点的平均成绩分布:在分析视图,选择“生源地”和“绩点”这个维度,度量选择安装“平均成绩”计算选择筛选器(filter), 可以对数据进行筛选,例如,查看等级为差的学生的生源地分布数据:排名后5位的是北京、河南、广东、陕西、云南4) 全校学生星座和绩点的平均成绩分布:在分析视图,选择“星座”和“绩点”这个维度,度量选择安装“平均成绩”计算。
选择筛选器(filter), 可以对数据进行筛选,例如,查看优秀学生的星座分布数据:排名前5位的是处女座、水瓶座、天枰座、双鱼座、射手座5、HANA数据挖掘5.1 HANA内嵌数据挖掘平台PAL在传统数据模型中,数据库只是作为存取数据一个工具,对于类似下图所示的应用, 客户端从Database获取数据,然后计算,最后再把结果写回Database, 如果数据量过大, 数据传输的开销过大,并且如果客户端的内存不够, 计算分析的过程也将非常缓慢借助于大内存的优势, SAP HANA的数据挖掘解决方案是把数据敏感的相关计算逻辑都移动到SAP HANA内, 从而省去了数据传输的开销这个方案就是SAP HANA PAL (预测分析库)5.2 SAP HANA PAL中的数据挖掘算法及功能清单表5.1 PAL算法清单分类PAL支持算法内嵌函数名 聚类ClusteringAnomaly Detection ANOMALYDETECTIONK- means KMEANS VALIDATEKMEANS Self - Organizing Maps SELFORGMAP分类ClassificationBi - Variate Geometric Regression GEOREGRESSION FORECASTWITHGEOR Bi - Variate Natural Logarithmic RegressionLNREGRESSION FORECASTWITHLNRC4.5 Decision Tree CREATEDT PREDICTWITHDT CHAID Decision Tree CREATEDTWITHCHAID PREDICTWITHDT Exponential Regression EXPREGRESSION FORECASTWITHEXPR KNN KNNSupport Vector MachineSVMTRAINMultiple Linear Regression LRREGRESSION FORECASTWITHLR Polynomial Regression POLYNOMIALREGRESSION FORECASTWITHPOLYNOMIALR Logistic Regression LOGISTICREGRESSION FORECASTWITHLOGISTICR 关联规则AssociationApriori APRIORIRULE LITEAPRIORIRULE 预处理PreprocessingBinning BINNING Inter - Quartile Range Test IQRTES。












