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

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

Info

Publication number
CN105739990B
CN105739990B CN201610089370.6A CN201610089370A CN105739990B CN 105739990 B CN105739990 B CN 105739990B CN 201610089370 A CN201610089370 A CN 201610089370A CN 105739990 B CN105739990 B CN 105739990B
Authority
CN
China
Prior art keywords
conversion
kettle
user
client
calls
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.)
Active
Application number
CN201610089370.6A
Other languages
English (en)
Other versions
CN105739990A (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;然后设置IIS admin service属性为允许服务与桌面交互,最后实现调用。
本发明的一种基于C#远程调用kettle的实现方法和现有技术相比,具有以下有益效果:
减少远程桌面访问服务器次数,加强网络安全,简化专业操作,提高工作效率,方便管理员维护转换及作业;能够本地制作转换、作业并测试,可上传至服务器端并执行,减少远程访问服务器的操作,减少管理员工作量,便于作业及转换管理。
具体实施方式
下面结合具体实施例对本发明作进一步说明。
本发明的一种基于C#远程调用kettle的实现方法,其实现过程为:用户通过远程客户端,调用服务器端的kettle作业和转换,并实时查看其执行日志,以简化用户的操作,便于作业及转换的管理。
远程调用的具体实现过程为:
首先设置任务,按照kettle的作业和转换分类,分别设置任务,一个任务有一个作业和多个转换;
上传作业、转换文件:即用户在测试环境中定制自己的转换和作业,测试通过后,通过上传功能上传至服务器kettle安装目录或指定的home路径;
设置参数:kettle参数为作业或转换的变量,利用参数制定可满足客户的场景的作业和转换;
执行并查看其日志:用户在客户端执行任务,远程调用服务器端已定义好的作业和转换,并通过客户端远程查看运行日志。
用户在远程客户端通过C#调用批处理文件的方式实现调用kettle作业和转换,该kettle为java编写的ui程序。
用户远程调用kettle通过C#的webservice技术实现,具体调用时,首先设置IIS其应用程序池的进程模型标识为administrator;然后设置IIS admin service属性为允许服务与桌面交互,最后实现调用。
下面以具体的C#的webservice实例来举例说明本发明的方法:
public string implement(string id)
{
string ifsuccess = "true";
try
{
//连接数据库,从中取出所需字段。
IGSPDatabase GSPDatabase =GSPContext.Current.Database;
DataSet dataset = GSPDatabase.ExecuteDataSet("selectRWLX,ZYWJ,RWCSCODE,RWCSVALUE from IDI_RWZY inner join IDI_RWCS on IDI_RWZY.Code=IDI_RWCS.Code where IDI_RWZY.Code= '" + id + "'");
//判断用kitchen命令还是pan命令
string idicmd = "Pan";
string startlogo = " - 开始运行.";
string stoplogo = " 秒后处理结束.";
for (int i = 0; i < dataset.Tables[0].Rows.Count; i++)
{
if (Convert.ToString(dataset.Tables[0].Rows[i]["RWLX"]) == "1")
{
idicmd = "Kitchen";
startlogo = " - Start of run.";
stoplogo = "seconds.";
break;
}
}
//字符串拼接
string pamvlu = " /file "+fileposition +Convert.ToString(dataset.Tables[0].Rows[0]["ZYWJ"]);
for (int i = 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.Process p = 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);
string a = idicmd + pamvlu;
p.StandardInput.WriteLine(a);
p.StandardInput.AutoFlush = true;
p.StandardInput.WriteLine("exit");
string sOutput = p.StandardOutput.ReadToEnd();
p.Close();
ifsuccess= SaveLog( sOutput, idicmd, startlogo,stoplogo,id);
}
catch (Exception ex)
{
ifsuccess = "false";
}
return ifsuccess;
}
本发明能够自定义参数,为转换或作业提供灵活的参数;能够查看其运行日志,即转换或作业运行完毕后,可在线查看其运行情况的日志。
通过上面具体实施方式,所述技术领域的技术人员可容易的实现本发明。但是应当理解,本发明并不限于上述的具体实施方式。在公开的实施方式的基础上,所述技术领域的技术人员可任意组合不同的技术特征,从而实现不同的技术方案。
除说明书所述的技术特征外,均为本专业技术人员的已知技术。

Claims (1)

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

Families Citing this family (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端运行的集成开发环境

Also Published As

Publication number Publication date
CN105739990A (zh) 2016-07-06

Similar Documents

Publication Publication Date Title
US10122655B2 (en) Personalizing data system components and data sources as chatbots in a group chat session
US10229203B2 (en) Social media bot to representational state transfer (REST) proxy for data systems
US20190155813A1 (en) Interactive social media access to data systems
CN109118347A (zh) 一种自动化协作方法及系统
Murphy et al. API designers in the field: Design practices and challenges for creating usable APIs
US10983824B2 (en) Remotely monitoring and scheduling a data integration job
CN111126781A (zh) Rpa业务流程的创建方法及系统
CN109800262A (zh) 数据共享交换方法及系统
CN105739990B (zh) 一种基于C#远程调用kettle的实现方法
CN112560522A (zh) 一种基于机器人客户端的合同自动录入方法
US11886939B2 (en) System, device, method and datastack for managing applications that manage operation of assets
JP2010128916A (ja) 作業内容分析方法、プログラム及び作業内容分析システム
CN110275811A (zh) 一种移动端h5应用行为监控的方法
US20140123126A1 (en) Automatic topology extraction and plotting with correlation to real time analytic data
CN103809951A (zh) 一种基于flex技术图形化服务编排和管理装置
CN107480189A (zh) 一种多维度实时分析系统及方法
CN111723417A (zh) 基于Revit软件的创建BIM模型过滤器的方法
CN115314535B (zh) 物联网设备的控制方法、装置、存储介质及计算机设备
US11775910B2 (en) Applied computer technology for high efficiency value stream management and mapping and process tracking
US20140173587A1 (en) Managing an application modification process
CN100424640C (zh) 家庭网络中间件开发装置及其代码转换方法
CN117648477B (zh) 基于ai分析的服务信息管理系统及其方法
CN114844765B (zh) 一种网络安全监测方法、终端设备及存储介质
Kawaba et al. Future Trends in Software Technology to Support Digital Innovations
CN115277835A (zh) 信息推送方法、装置、存储介质及电子设备

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