作者:史春奇,数据科学家,GE数字集团
如果您还没有Predix试用帐号,请访问https://supportcentral.ge.com/esurvey/GE_survey/takeSurvey.html?form_id=18446744073709715720 申请。请务必准确提供您的信息,我们会以邮件方式通知您注册结果。
我们知道, 很多时候, 一个应用相关的数据, 需要进行分析展示, 而这个分析可以利用AnalyticsFramework来完成。 在创建Analytics服务之前, 需要你有一个App服务了, 同时也一个UAA服务了。
在之前的Analytics Catalog服务中, 我们要分别创建3个服务Catalog Service,Runtime Service 和 UI 。 如今, 全部由Framework取代了。 极大方便了分析服务的部署。
Analytics Framework主要包括Catalog, Runtime, UI 三大子部分。 一般会把自己生成的分析包放到Catalog中, 然后配置好Runtime的输入输出进行调用。有需求的话, 还需要进行Orchestration和Scheduling。
实现一个Analytics服务有两种方式, 一种是通过命令行方式, 另外一种是通过Predix Console。 这里我们主要介绍命令行的方式。
首先要创建一个AnalyticsFramework service, 通过cf creat-service创建服务
cf create-service predix-analytics-framework <plan> <my_framework_instance> -c
'{ "trustedIssuerIds": [ "<uaa_instance_issuerId>" ], "runtimeClientId": "<my_runtime_client_id>", "runtimeClientSecret": "<my_runtime_client_secret>", "predixAssetZoneId": "<my_predix_asset_zone_id>", "predixTimeseriesZoneId": "<my_predix_timeseries_zone_id>", "uiDomainPrefix": "<my_ui_domain_prefix>", "uiClientId": "<my_ui_client_id>", "uiClientSecret": "<my_ui_client_secret>" }'
对应的参数包括UAA, Runtime, 数据(Asset 或者Timeseries)还有UI。
1. trustedIssuerIds: UUA对应的instance
2. runtimeClientId和runtimeClientSecret : 是Scheduler对应UAA client的id和 UAA clientsecret 。
3. predixAssetZoneId和predixTimeseriesZoneId: 是访问的asset或者timeseries对应的zoneid。
4. uiDomainPrefix,uiClientId 和uiClientSecret 是对应的Analytics Library UI对应URL, ID和Secret。
创建完成这个服务之后, 我们就要把这个服务和App绑定起来。
cf bind-service <app_name> <my-framework-instance>
绑定完成之后, 你可以通过
cf env <app_name>
命令来确认”predix-analytics-framewor”, 这样我们可以查看到对应配置
{
"VCAP_SERVICES": {
"predix-analytics-framework": [
{
"credentials": {
"catalog_uri": "<catalog_uri>",
"config_uri": "<config_uri",
"configurations": {
"predix_asset_zone_id": "<my_asset_zone_id>",
"predix_timeseries_zone_id": "<my_timeseries_zone_id>",
"runtime_client_id": "<my_runtime_client_id>",
"trusted_issuer_ids": "<my_trusted_issuer_id>",
"ui_client_id": "<my_ui_client_id>",
"ui_uri": "<my_ui_uri>"
},
"execution_uri": "<execution_uri>",
"monitoring_uri": "<monitoring_uri>",
"scheduler_uri": "<scheduler_uri>",
"zone-http-header-name": "Predix-Zone-Id",
"zone-http-header-value": "<my_predix_zone_id>",
"zone-oauth-scope": "analytics.zones.<my_predix_zone_id>.user"
},
"label": "predix-analytics-framework",
"name": "<my_framework_instance>",
"plan": "Tiered",
"provider": null,
"syslog_drain_url": null,
"tags": [],
"volume_mounts": []
}
]
}
}
这样, 基本完成一个Analytics Service的创建和绑定了。 这里有一个 https://github.com/PredixDev/predix-analytics-sample 的实例, 大家可以试试来着。
最后, 在新的Framework框架下, 专门针对时间序列数据, 还开发了Event Stream Processing 和 Anomaly Detection Service,使得开发更为方便。 希望大家持续关注后续更新。
在使用中您有任何问题,请访问我们的论坛http://bbs.csdn.net/forums/GEPredix
GE数字集团的技术专家们会在线回答您的问题。
也请访问我们在CSDN的Predix专区http://predix.csdn.net 了解更多Predix的内容和相关活动。