CN105739990A - 一种基于C#远程调用kettle的实现方法 - Google Patents

一种基于C#远程调用kettle的实现方法 Download PDF

Info

Publication number
CN105739990A
CN105739990A CN201610089370.6A CN201610089370A CN105739990A CN 105739990 A CN105739990 A CN 105739990A CN 201610089370 A CN201610089370 A CN 201610089370A CN 105739990 A CN105739990 A CN 105739990A
Authority
CN
China
Prior art keywords
kettle
conversion
user
far call
client
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201610089370.6A
Other languages
English (en)
Other versions
CN105739990B (zh
Inventor
臧德波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur General Software Co Ltd
Original Assignee
Inspur General Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur General Software Co Ltd filed Critical Inspur General Software Co Ltd
Priority to CN201610089370.6A priority Critical patent/CN105739990B/zh
Publication of CN105739990A publication Critical patent/CN105739990A/zh
Application granted granted Critical
Publication of CN105739990B publication Critical patent/CN105739990B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4416Network booting; Remote initial program loading [RIPL]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种基于C#远程调用kettle的实现方法,其实现过程为:用户通过远程客户端,调用服务器端的kettle作业和转换,并实时查看其执行日志,以简化用户的操作,便于作业及转换的管理。本发明的一种基于C#远程调用kettle的实现方法与现有技术相比,减少远程桌面访问服务器次数,加强网络安全,简化专业操作,提高工作效率,方便管理员维护转换及作业。

Description

一种基于C#远程调用kettle的实现方法
技术领域
本发明涉及一种计算机技术领域,具体地说是一种基于C#远程调用kettle的实现方法。
背景技术
企业日益发展,机构越来越大,存在一套或多套业务系统,每天产生大量的结构化及非结构化数据,这些数据分布在多个存储系统,长时间后查找困难,特别是查询这些海量非结构化数据的速度较慢,在排序方面也存在非常严重的问题。而kettle等etl抽取工具可从中抽取可用关键信息,是建立数据仓库必备工具,因此建立大量转换及作业,由于数量大,管理人员对转换、作业管理难度大,且如今etl等大数据相关产品基本为java编写,C#大数据产品寥寥无几,一些以C#为主的软件公司,为了满足用户的需求,适应变化的市场,必须提供集成java大数据产品的管理解决方案。基于此,现提供一种基于C#远程调用kettle的实现方法。
发明内容
本发明的技术任务是针对以上不足之处,提供一种基于C#远程调用kettle的实现方法。
本发明提供一种基于C#远程调用kettle的实现方法,其实现过程为:用户通过远程客户端,调用服务器端的kettle作业和转换,并实时查看其执行日志,以简化用户的操作,便于作业及转换的管理。
远程调用的具体实现过程为:
首先设置任务,按照kettle的作业和转换分类,分别设置任务,一个任务有一个作业和多个转换;
上传作业、转换文件:即用户在测试环境中定制自己的转换和作业,测试通过后,通过上传功能上传至服务器kettle安装目录或指定的home路径;
设置参数:kettle参数为作业或转换的变量,利用参数制定可满足客户的场景的作业和转换;
执行并查看其日志:用户在客户端执行任务,远程调用服务器端已定义好的作业和转换,并通过客户端远程查看运行日志。
用户在远程客户端通过C#调用批处理文件的方式实现调用kettle作业和转换,该kettle为java编写的ui程序。
用户远程调用kettle通过C#的webservice技术实现,具体调用时,首先设置IIS其应用程序池的进程模型标识为administrator;然后设置IISadminservice属性为允许服务与桌面交互,最后实现调用。
本发明的一种基于C#远程调用kettle的实现方法和现有技术相比,具有以下有益效果:
减少远程桌面访问服务器次数,加强网络安全,简化专业操作,提高工作效率,方便管理员维护转换及作业;能够本地制作转换、作业并测试,可上传至服务器端并执行,减少远程访问服务器的操作,减少管理员工作量,便于作业及转换管理。
具体实施方式
下面结合具体实施例对本发明作进一步说明。
本发明的一种基于C#远程调用kettle的实现方法,其实现过程为:用户通过远程客户端,调用服务器端的kettle作业和转换,并实时查看其执行日志,以简化用户的操作,便于作业及转换的管理。
远程调用的具体实现过程为:
首先设置任务,按照kettle的作业和转换分类,分别设置任务,一个任务有一个作业和多个转换;
上传作业、转换文件:即用户在测试环境中定制自己的转换和作业,测试通过后,通过上传功能上传至服务器kettle安装目录或指定的home路径;
设置参数:kettle参数为作业或转换的变量,利用参数制定可满足客户的场景的作业和转换;
执行并查看其日志:用户在客户端执行任务,远程调用服务器端已定义好的作业和转换,并通过客户端远程查看运行日志。
用户在远程客户端通过C#调用批处理文件的方式实现调用kettle作业和转换,该kettle为java编写的ui程序。
用户远程调用kettle通过C#的webservice技术实现,具体调用时,首先设置IIS其应用程序池的进程模型标识为administrator;然后设置IISadminservice属性为允许服务与桌面交互,最后实现调用。
下面以具体的C#的webservice实例来举例说明本发明的方法:
publicstringimplement(stringid)
{
stringifsuccess="true";
try
{
//连接数据库,从中取出所需字段。
IGSPDatabaseGSPDatabase=GSPContext.Current.Database;
DataSetdataset=GSPDatabase.ExecuteDataSet("selectRWLX,ZYWJ,RWCSCODE,RWCSVALUEfromIDI_RWZYinnerjoinIDI_RWCSonIDI_RWZY.Code=IDI_RWCS.CodewhereIDI_RWZY.Code='"+id+"'");
//判断用kitchen命令还是pan命令
stringidicmd="Pan";
stringstartlogo="-开始运行.";
stringstoplogo="秒后处理结束.";
for(inti=0;i<dataset.Tables[0].Rows.Count;i++)
{
if(Convert.ToString(dataset.Tables[0].Rows[i]["RWLX"])=="1")
{
idicmd="Kitchen";
startlogo="-Startofrun.";
stoplogo="seconds.";
break;
}
}
//字符串拼接
stringpamvlu="/file"+fileposition+Convert.ToString(dataset.Tables[0].Rows[0]["ZYWJ"]);
for(inti=0;i<dataset.Tables[0].Rows.Count;i++)
{
pamvlu+=""+string.Format("\"-param:{0}={1}\"",dataset.Tables[0].Rows[i]["RWCSCODE"],dataset.Tables[0].Rows[i]["RWCSVALUE"]);
}
System.Diagnostics.Processp=newSystem.Diagnostics.Process();
p.StartInfo.FileName="cmd.exe";
p.StartInfo.UseShellExecute=false;
p.StartInfo.RedirectStandardInput=true;//可能接受来自调用程序的输入信息
p.StartInfo.RedirectStandardOutput=true;//由调用程序获取输出信息
p.StartInfo.RedirectStandardError=true;//重定向标准错误输出
p.StartInfo.CreateNoWindow=true;//不显示程序窗口
p.Start();//启动程序
//向CMD窗口发送输入信息:
p.StandardInput.WriteLine("D:");
p.StandardInput.WriteLine("cd"+idiposition);
stringa=idicmd+pamvlu;
p.StandardInput.WriteLine(a);
p.StandardInput.AutoFlush=true;
p.StandardInput.WriteLine("exit");
stringsOutput=p.StandardOutput.ReadToEnd();
p.Close();
ifsuccess=SaveLog(sOutput,idicmd,startlogo,stoplogo,id);
}
catch(Exceptionex)
{
ifsuccess="false";
}
returnifsuccess;
}
本发明能够自定义参数,为转换或作业提供灵活的参数;能够查看其运行日志,即转换或作业运行完毕后,可在线查看其运行情况的日志。
通过上面具体实施方式,所述技术领域的技术人员可容易的实现本发明。但是应当理解,本发明并不限于上述的具体实施方式。在公开的实施方式的基础上,所述技术领域的技术人员可任意组合不同的技术特征,从而实现不同的技术方案。
除说明书所述的技术特征外,均为本专业技术人员的已知技术。

Claims (4)

1.一种基于C#远程调用kettle的实现方法,其特征在于,其实现过程为:用户通过远程客户端,调用服务器端的kettle作业和转换,并实时查看其执行日志,以简化用户的操作,便于作业及转换的管理。
2.根据权利要求1所述的一种基于C#远程调用kettle的实现方法,其特征在于,远程调用的具体实现过程为:
首先设置任务,按照kettle的作业和转换分类,分别设置任务,一个任务有一个作业和多个转换;
上传作业、转换文件,即用户在测试环境中定制自己的转换和作业,测试通过后,通过上传功能上传至服务器kettle安装目录或指定的home路径;
设置参数,kettle参数为作业或转换的变量,利用参数制定可满足客户的场景的作业和转换;
执行并查看其日志,用户在客户端执行任务,远程调用服务器端已定义好的作业和转换,并通过客户端远程查看运行日志。
3.根据权利要求1所述的一种基于C#远程调用kettle的实现方法,其特征在于,用户在远程客户端通过C#调用批处理文件的方式实现调用kettle作业和转换,该kettle为java编写的ui程序。
4.根据权利要求3所述的一种基于C#远程调用kettle的实现方法,其特征在于,用户远程调用kettle通过C#的webservice技术实现,具体调用时,首先设置IIS其应用程序池的进程模型标识为administrator;然后设置IISadminservice属性为允许服务与桌面交互,最后实现调用。
CN201610089370.6A 2016-02-17 2016-02-17 一种基于C#远程调用kettle的实现方法 Active CN105739990B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610089370.6A CN105739990B (zh) 2016-02-17 2016-02-17 一种基于C#远程调用kettle的实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610089370.6A CN105739990B (zh) 2016-02-17 2016-02-17 一种基于C#远程调用kettle的实现方法

Publications (2)

Publication Number Publication Date
CN105739990A true CN105739990A (zh) 2016-07-06
CN105739990B CN105739990B (zh) 2018-11-02

Family

ID=56245288

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610089370.6A Active CN105739990B (zh) 2016-02-17 2016-02-17 一种基于C#远程调用kettle的实现方法

Country Status (1)

Country Link
CN (1) CN105739990B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108040128A (zh) * 2018-01-12 2018-05-15 国网福建省电力有限公司 一种基于kettle实现档案数据自动上传同步的方法
CN111625581A (zh) * 2020-04-28 2020-09-04 四川省金科成地理信息技术有限公司 采用Kettle启动服务的系统数据处理方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102271121A (zh) * 2010-06-01 2011-12-07 铜陵玉成软件科技有限责任公司 面向业务模型的云计算开发平台实现方法
CN103530401A (zh) * 2013-10-23 2014-01-22 山东大学 一种基于webservice的数据获取及绘图方法
CN103647795A (zh) * 2014-01-02 2014-03-19 浙江大学城市学院 一种实现widget远程服务调用的调试方法
CN104516963A (zh) * 2014-12-22 2015-04-15 云南大学 一种Excel数据服务器及其应用
CN104951297A (zh) * 2015-03-13 2015-09-30 朱起文 一种在Web端运行的集成开发环境

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102271121A (zh) * 2010-06-01 2011-12-07 铜陵玉成软件科技有限责任公司 面向业务模型的云计算开发平台实现方法
CN103530401A (zh) * 2013-10-23 2014-01-22 山东大学 一种基于webservice的数据获取及绘图方法
CN103647795A (zh) * 2014-01-02 2014-03-19 浙江大学城市学院 一种实现widget远程服务调用的调试方法
CN104516963A (zh) * 2014-12-22 2015-04-15 云南大学 一种Excel数据服务器及其应用
CN104951297A (zh) * 2015-03-13 2015-09-30 朱起文 一种在Web端运行的集成开发环境

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108040128A (zh) * 2018-01-12 2018-05-15 国网福建省电力有限公司 一种基于kettle实现档案数据自动上传同步的方法
CN111625581A (zh) * 2020-04-28 2020-09-04 四川省金科成地理信息技术有限公司 采用Kettle启动服务的系统数据处理方法

Also Published As

Publication number Publication date
CN105739990B (zh) 2018-11-02

Similar Documents

Publication Publication Date Title
US11683221B1 (en) Automatic generation of template for provisioning services in a hosted computing environment
CN109997126B (zh) 事件驱动提取、变换、加载(etl)处理
US11775501B2 (en) Trace and span sampling and analysis for instrumented software
CN102375731B (zh) 一种免编码集成应用软件平台系统
US11423041B2 (en) Maintaining data lineage to detect data events
US9317392B2 (en) Methods and automated systems for testing, optimization, and analysis that preserve continuity in identities and status of users who access remote information from different contexts
CA2754422C (en) Electronic process-driven collaboration system
US11657582B1 (en) Precise plane detection and placement of virtual objects in an augmented reality environment
US20150169392A1 (en) System and method for providing an application programming interface intermediary for hypertext transfer protocol web services
CN106534242B (zh) 一种分布式系统中请求的处理方法以及装置
CN109213824B (zh) 数据抓取系统、方法和装置
EP4046016A1 (en) System, device, method and datastack for managing applications that manage operation of assets
US10951540B1 (en) Capture and execution of provider network tasks
CN111435326B (zh) 一种分析崩溃日志的方法和装置
CN105739990A (zh) 一种基于C#远程调用kettle的实现方法
JP7305641B2 (ja) リモートデバイスからのアプリケーションアクティビティデータをトラッキングし、リモートデバイスのための修正動作データ構造を生成するための方法およびシステム
CN104967667A (zh) 一种基于云服务的软件稳定性测试远程监控系统
WO2020108493A1 (zh) 一种自动实现api应用的方法、装置、设备及介质
CN111176982A (zh) 一种测试界面生成方法和装置
CN111435350A (zh) 海量数据的实时监控方法、系统、设备及存储介质
US10795925B2 (en) Method, device and arrangement for measurement of app usage based on visual characteristics
CN108449343B (zh) Ssh协议文本数据采集方法、采集器及计算机设备
CN107066538A (zh) 一种数据统计的方法及装置
CN115658131A (zh) 一种路径分析方法、装置、设备及存储介质
Ran et al. Research on Data Acquisition Strategy and Its Application in Web Usage Mining

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant