云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

轻量服务器_数据库销售管理系统_安全稳定

小七 141 0

我还没有见过太多使用SAP技术的Covid仪表盘,更没有看到来自英国或英国的详细数据,因此用SAP Analytics Cloud测试HANA Cloud似乎是一个理想的用例。在这篇博文中,我将描述我所面临的挑战和经历,并分享一些可视化效果。

我使用的数据源是来自英国或英国的最详细的公开可用数据。我的代码在Github上,因此您应该能够克隆并构建HANA WebIDE项目。你可以在结尾处找到这个项目的链接。

在英国,我们有独立的负责实体,负责许多职能。这意味着英格兰、苏格兰,威尔士和北爱尔兰在某些情况下可以独立行动并报告不同的数据。因此,我使用的一些数据集仅包含英格兰的数据。

图1:SAC随时间推移的案件热图,包括深入调查

数据采集

我遇到的所有英国和英格兰数据源都是基于文件的。CSV和Excel是主要的文件类型。人们认为它们是"简单"的格式,但实际上它们相当笨拙。这些数据源大多每天更新,除了国家统计局(ONS)每周更新一次。

开始我像任何人一样手动下载数据,然而,这很快就变成了一种负担和乏味。因此,我决定对数据采集进行自动化/脚本化,我使用了一些python代码来实现这一点,大多数源代码都使用了类似的框架。同时,我为HANA和Python设置了Visual Studio代码作为我的开发环境,然后将最新的文件直接下载到我的项目中。

图2:使用Git和VS代码通过Python下载数据

数据质量

数据质量一如既往地重要。完美的数据存在吗?在这种情况下,我集成的数据源越多,遇到的数据质量问题就越多。每天都会带来新的和旧的数据质量问题,这些官方的"可靠"数据源。我详细阐述了遇到的几个数据质量问题。

我用HANA计算视图逻辑解决了大多数问题。

数据列错误

这在CSV文件中并不少见,但在Excel中,你不会想到这一点。

图3:错误列中的数据

图4:更多可疑数据,"the"不是日期

当此类问题发生时,第一反应是验证您的ETL或ELT逻辑。一旦我们知道数据不可靠,我们可以将这些检查构建到我们的数据加载中。

数据不一致

"不可用",而不是数字字段中显示的空白或空。数字数据部分记录出现千位分隔符

图5:不可用数据。数字字段千位分隔符

数据集中最终记录无效/为空

图6:可疑最终记录

数据类型改变,e、 g.数字(人)获得小数点

日期格式改变

表名改变

字段结尾的空格

数据结尾的空格

现在可以原谅其中一些,我想人们正在幕后努力制作这些数字,物联网应用技术是什么,但是它告诉我们有多少不同类型的问题出现在他们的外部数据上。一些问题消失了,重新出现在其他问题仍然存在的地方。

开发-WebIDE、VSCode、Git和Python

在观看了Thomas Jung优秀的ABAP Freak Show,包括Visual Studio中本地HANA开发之后,我决定自己试试。从Thomas的github项目中,我花了一点时间理解了一些hanacli命令,但是安装之后我变得非常高效。

对我来说,git集成是将HDI和WebIDE与hanacloud或hana2.x结合使用的最大优势。简单地说,git负责版本控制、备份和代码同步甚至多开发人员并行工作流。

我现在有我的项目的多个副本,一个在VSCode本地,永久免费的云服务器,另一个在WebIDE。我可以进行更改,添加新文件,物联网技术应用,更新数据,然后轻松地与git同步,不忘提交和推送!

经过一些实验后,我决定如果我也将所有数据本身保存在WebIDE项目中,那么它将是最干净和最简单的。这使得项目完全独立,可以轻松地并行部署到多个环境中。

图7:Visual Studio中的HDI开发

HANA Cloud与HANA OnPremise 2.00.x

我将我的WebIDE项目移动到HANA 2.0.46和HANA Cloud之间,迁移和使项目在两种环境中共同部署很容易,只需要很小的改动。需要注意的三个方面

删除对列存储数据类型的任何引用。例如,如果我有一个列定义为

"DOWNLOAD\u DATE"DATE CS\u DAYDATE

我刚刚在表定义中删除了CS\u DAYDATE,那么对于CS\u INT、CS\u DOUBLE以及在现有表定义中可能遇到的任何其他CS类型也是如此。这种没有指定列存储数据类型的语法在这两种环境下都能工作。

在prem和HANA Cloud上的.hdiconfig似乎有一点不同。此文件控制WebIDE的行为和支持的文件类型。

在文件顶部的本地HANA 2.0.46我看到

"plugin\u version":"2.0.46.0",

其中HANA Cloud显示

"minimum\u feature\u version":"1000",

用正确的条目替换此行,并检查您是否使用任何不支持的文件类型在那个平台上解决了这个问题。

我所要求的最终更改与npm hdi deployer版本有关

针对SAP HANA的内部部署WebIDE我看到了一个特定版本

"@SAP/hdi deploy":"3.10.0"

其中作为HANA Cloud/WebIDE完整堆栈作为更通用的表达式

"@SAP/hdi deploy":"^3.*"

切换到HANA Cloud/WebIDE完整堆栈语法("^3.*")适用于这两种环境。

物理与虚拟与浏览器(后端优于前端)

在SAP工具集中,我们有多种选择可以连接(集成)我们的数据。所有这些技术在技术上都可以使用。

SAC数据混合–(基于浏览器)HANA计算视图–(虚拟化)智能数据集成流程图(持久)

选择的方式,何时何地集成数据是好的,因为实施情况不尽相同。