any@data与一般的远程数据拷贝程序和网络应用不同,它通过提供自动化的、可靠的、高效的、以及安全的数据交换服务,并籍此建立一个可扩展的、易管理的数据交换平台,为政府与企业的分布式计算、数据整合和关键业务整合提供有利的基础。
any@data是一个通用的数据交换应用服务器。它通过为客户应用信息系统提供数据传输服务,使应用程序之间进行快速可靠的数据交换,从而实现客户应用系统与数据信息的整合。它通过为应用程序开发人员提供应 用编程接口,使应用系统开发得到大大简化,工期得以缩减。并且,提高了程序的可移植性。
any@data与一般的远程数据拷贝程序和网络应用不同,它通过提供自动化的、可靠的、高效的、以及安全的数据交换服务,并籍此建立一个可扩展的、易管理的数据交换平台,为政府与企业的分布式计算、数据整合和关键业务整合提供有利的基础。 下图显示了采用any@data软件的应用方案。应用系统只要简单地将数据交给由any@data构成的信息交换平台,或从该信息交换平台提取数据,就可以完成分布式应用程序的功能。
版本
OnTeam V1.0产品配置列表如下:
any@data V3.0 for Windows Server 2000/2003
any@data V3.0 for Linuxany@data V3.0 for SCO OpenServerany@data V3.0 for AIX性能
服务器守护进程为7X24运行保证;
经过压缩和加密处理的单个数据包传输时间为4秒;并发传输时,平均单个数据包为0.5秒;平均传输效率 500 KByte/秒。注:上述指标在PC Server和10Mb/s 局域网环境下测试得出。体系结构
any@data的体系结构如下图所示:

功能
1.交换平台的构建与管理
any@data软件允许用户依据业务需求灵活地表示节点(存储业务数据的主机)之间的数据流关系,并有效地完成数据的传输,从而形成能够满足业务需求的、平面或树状结构模式的信息交换平台。 any@data软件具有可扩展性,通过软件的名字解析功能及数据自动复制技术实现平台扩展的分布式管理。any@data软件提供的系统应用功能实现了平台管理的自动化。典型的对等数据交换平台模型如图:

3.数据传输优先级
any@data能够按照用户预先对应用数据的分类和定义的优先级对用户数据进行不同优先级别的传输操作。4.数据压缩
应用程序在向队列中提交发送文件时,可通过编程接口函数选择数据压缩功能。5.资源控制
any@data的资源控制功能为用户提供了依据自己所拥有的硬件与网络资源定制传输效率的手段,该功能通过控制进程数和传输数据块大小参数来控制。6.系统监控管理
any@data提供一套完整的监控和管理手段,来保证系统的正常运行和数据传输功能的实现。7.系统进程和任务队列的监控与管理
系统进程的监控包括查看进程是否正在运行、或是处于故障状态。通过lping检测系统进程是否正常工作。当系统进程存在故障时,系统提供管理命令终止和重新启动系统核心进程。任务队列的监控包括检查队列文件本身的状况和队列内容。系统提供检查、修改任务项和删除无效任务的队列管理工具。8.日志记录
any@data提供了完整的日志功能,包括日志信息的采集、查询,以及日志系统的配置与管理。用户通过此功能可以了解文件和消息传输的过程,及时发现数据传输过程中发生的问题。 日志信息由系统进程自动产生,并保存到日志文件中。日志信息分为系统运行日志,数据传输日志,用以记录系统的运行历史状态和数据传输的历史信息。 any@data提供了对日志数据库内容进行分类查询的功能。 any@data提供了日志系统的配置功能,以此控制日志信息采集、日志文件的大小、是否备份等选项。9.应用接口API
应用程序可以通过调用any@data软件提供的应用程序开发接口实现数据传输。开发接口由C语言编写的若干基本函数组成。函数接口简单易用。应用编程接口应用关系示意图如下:
any@data系统管理员完成平台的节点配置工作,包括维护配置文件any_data.conf;维护全局应用配置文件app.conf;维护节点数据目录结构;
any@data系统管理员完成客户端的配置工作,包括维护配置文件any_data.conf;维护全局应用配置文件app.conf;维护节点数据目录结构;普通用户配置,包括定义本地ANYDATALOCAL环境变量,以及目录结构和配置文件;根据接口函数说明编制程序,并在普通用户权限下执行。接口函数说明:
·初始化消息处理参数
void MsgOptInit(MSG_OPT *msg_opt);该函数对于接收节点上的数据提供处理参数的初始化。·日志参数初始化
void LogInit(char progname, char input_flag);该函数初始化系统日志与数据传输日志库表参数。·数据发送接口
int ClientSendFile(MSG_OPT msg_opt, char *filename);该函数根据预先配置,将数据文件发往远端。·数据接收接口
int ClientRcvFile(MSG_OPT msg_opt);该函数显示节点上数据、并能够对其进行提取和删除操作。软件特点
1.安全可靠
any@data从网络安全、主机安全、数据安全三个方面确保了用户数据在整个传输过程的安全。它通过采用PKI(Public Key Infrastructure)公钥基础结构平台的技术和规范来唯一标识网络中的合法计算机,以确保网络安全;它通过采用用户口令验证以及增强目录和文件访问权限的方法,确保主机安全;它通过采用了3DES加密算法对用户数据进行加密,确保数据安全。2.系统效率高
any@data采用多线程、多进程方式处理数据传输,充分利用系统资源来提高系统的运行效率、降低系统资源的占用率,使系统更能适应传输数据量的突变性。3.易管理
any@data安装方便、配置简单、接口简便实用、易维护。4.低差错
any@data采用可靠队列等多种手段来保证数据传输过程中的正确和完整。5.多平台支持
any@data已实现了多平台支持,包括Windows和多个主流UNIX操作系统。配置需求
硬件环境: Intel x86架构PC 服务器,VGA兼容显卡,64内存(推荐128Mb),6G以上硬盘;
服务器操作系统:RedHat Linux 7.1以上版本Microsoft Windows Server 2000/2003SCO OpenServer 5.0.5AIX 4.3.3网络:TCP/IP通讯协议附录
1.系统应用实例
下图表示的系统应用实例,适合于政府行政机构及相关部门的信息化管理系统,以及大型企业的生产和销售网络。安装在各级节点上的any@data软件通过灵活的配置管理,能够很好地表示客户数据的整合关系。例如,数据可以从政府管理部门的基层组织,或是企业的分支机构的业务系统采集,经过三级节点(当地系统)汇总到二级节点(上级主管单位),再由二级节点(各级主管单位)汇总上报到一级节点(总部)。从而为数据的统计、发布,以及更深一步的挖掘提供数据基础。
2.系统应用实例
数据发送程序实例(lsend.c)
#define MAIN
int main()
{char fname[256];MSG_OPT msg_opt;strcpy(fname,"test.dat");
MsgOptInit((MSG_OPT *) &msg_opt);msg_opt.send_request = 1;
msg_opt.data_type = 10030;LogInit("lsend",1);
if( ClientSendFile(msg_opt, fname) != 0 )
{fprintf(stderr,"Failure to send file to node.\n");exit(1);}exit(0);}配置文件实例
app.conf
[10030]DestNum = 1DestUser1 = liepDestNodeID1 = SUN发送数据:$LIEPLOCAL/data/user/10030/output/test.dat注:如果发送目录不存在,则在当前目录寻找test.dat。数据接收程序实例(lrcv.c)#define MAIN
int main()
{MSG_OPT msg_opt;MsgOptInit((MSG_OPT *) &msg_opt);
msg_opt.rcv_request = 1;
msg_opt.del_request = 1;msg_opt.msg_number = 1;/*msg_opt.display = 0;msg_opt.input_flag=0;msg_opt.cat_type = 0;*/LogInit("lrcv",1);/* Get data from LIEP node. */
if( ClientRcvFile(msg_opt) != 0 ){fprintf(stderr," Failure to receive file from node.\n");exit(1);}exit(0);}接收数据:$LIEPLOCAL/data/user/10030/input/test.dat
注:如果接收目录不存在,则在当前目录创建test.dat。 Makefile编译文件实例Makefile文件内容
CC = gccCFLAG =INCLUDE = -I$(LIEPHOME)/includeLIB = -L/usr/lib/mysql -L$(LIEPHOME)/lib -lliep -lmysqlclient -lcrypto -lz -lbsdall: lsend lrcvlsend: lsend.c
$(CC) $(INCLUDE) $(CFLAG) -o lsend lsend.c $(LIB)lrcv: lrcv.c$(CC) $(INCLUDE) $(CFLAG) -o lrcv lrcv.c $(LIB)clean:-rm lsend lrcv>>更多评论