




已阅读5页,还剩264页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
原语参考手册飞象大数据分析系统原语参考手册地 址:杭州市滨江区滨安路1180号华业高科技产业园3号楼网 址:u 文档信息文档名称飞象大数据分析系统原语参考手册文档编号编制人制作日期2017-11-08文档版本V3.6适用范围技术体系密级公开u 版本历史序号文档版本时间说明修改人1V1.12016-05-04初稿gjw2V1.42016-05-13修订稿llm3V1.52016-05-30重新排版dxm4V3.32016-11-18更新原语ww5V3.42017-01-13更新机器学习原语ww6V3.52017-06-21更新原语ww7V3.62017-11-08更新原语ww目录1基础知识11.1 DataFrame结构11.2 内部结构11.3 引擎访问21.4 OPENFEA界面32基础原语32.1 新建打开工作区use32.2 清除工作区clear42.3 定义define52.4 显示show62.5 数据装载load和存储store82.5.1 CSV/EXCEL/TXT/PKL数据源82.5.2 UDB数据源112.5.3 JDBC数据源142.5.4 NoSQL数据源162.6 过滤filter172.7 排序order192.8 更新update212.9 连接join212.10 合并union242.11 选择列loc252.12 字符串函数处理str252.13 增加列add272.14 分组统计group&agg312.15 更改列名rename342.16 更改列类型alter352.17 去重distinct352.18 别名alias362.19 删除表drop362.20 绘图plot362.21 表达式操作eval402.22 循环加载foreach load422.23 循环运行foreach run432.24 输出dump442.25 脚本运行run442.26 集群运行cluster462.27 设置定时器settimer472.28 清除定时器cleartimer492.29 清除日志 clearlogs492.30 清除历史纪录 clear history492.31 重启引擎kill493SDF函数详解503.1 获取系统时间sys_now513.2 格式化时间format_now523.3 字符串运算sys_str533.4 定义常量sys_define543.5 lambda运算sys_lambda543.6 单值运算sys_eval553.7 判断为真则执行函数sys_if_run563.8 判断为非真则执行函数sys_unif_run573.9 断点管理函数sys_next_bp583.10 满足条件终止任务函数sys_if_break593.11 不满足条件终止任务函数sys_unif_break603.12 查询ssdb的key是否存在函数check_ssdb0_key604UDF函数详解614.1 udf0包624.1.1 新建空表new_empty_df624.1.2 增加行df_append624.1.3 克隆表clone_df644.1.4 单字段分组统计df_agg_count654.1.5 行列互换df_T664.1.6 列类型df_types664.1.7 简要信息df_info674.1.8 简要统计df_desc684.1.9 判断空值df_isna684.1.10 填充空值df_fillna704.1.11 设置索引df_set_index704.1.12 索引排序df_sort_index714.1.13 删除列df_drop_col714.1.14 删除数字列df_drop_icol724.1.15 删除行df_drop_row724.1.16 行范围df_limit734.1.17 重置索引df_reset_index734.1.18 索引转矩阵df_unstack754.1.19 矩阵转索引df_stack774.1.20 数据归一化(最小-最大)df_min_max784.1.21 数据归一化(零均值) df_mean_std794.1.22 数据归一化(小数定标)df_10k824.1.23 时间范围new_df_hourrange834.1.24 日期序列new_df_daterange844.1.25 时间周期函数new_df_timerange844.1.26 整数分割new_df_range854.1.27 随机函数df_random864.1.28 分割为列df_l2cs864.1.29 合并列为list df_cs2l874.1.30 分割为df表df_l2df894.1.31 行处理df_rowl904.1.32 行处理lambda函数df_row_lambda914.1.33 去空函数df_dropna924.1.34 序号替换索引函数df_seq_index934.1.35 格式化列名函数df_cols_fmt944.1.36 增加列名前缀函数df_cols_fix954.1.37 累计和函数df_cumsum964.1.38 多列合并函数df_2one974.1.39 累计最大值函数df_cummax984.1.40 累计最大值函数df_cummin994.1.41 累计乘积函数df_cumprod1004.1.42 数量函数df_count1014.1.43 差分函数df_diff1024.1.44 列名替换函数replace_cols_name1034.1.45 列名替换函数df_set_header1044.1.46 复制索引df_copy_index1064.1.47 模糊查询df_like_query1064.2 udfA包1074.2.1 符号分割split_by_custom1074.2.2 合并列merge_col_without_empty1084.2.3 统计大于0行数row_numbers_unempty1094.2.4 合并表left_join_fill1104.2.5 批量导入用户imp_users1124.3 RS包1134.3.1 http下载load_http1134.3.2 https下载load_https1144.3.3 excel加载load_excel1144.3.4 excel存储store_excel1154.3.5 sqlite3加载load_s31164.3.6 sqlite3存储store_s31164.3.7 sqlite3查看list_s31174.3.8 sqlite3删除表clear_s31174.3.9 sqlite3删除表数据delete_s31184.3.10 sqlite3执行SQL exec_s3_sql1194.3.11 删除文件rm_file1204.3.12 创建目录mk_dir1204.3.13 移动文件mv_file1214.3.14 查看文件list_file1214.3.15 json加载load_json1224.3.16 json存储store_json1234.3.17 hbase加载load_hbase1234.3.18 hbase存储store_hbase1244.3.19 zbus创建create_zbus1244.3.20 zbus存储store_zbus1254.3.21 zbus加载load_zbus1264.3.22 zbus删除remove_zbus1274.3.23 mysql加载表load_mysql_table1284.3.24 mysql加载sql语句load_mysql_sql1284.3.25 mysql执行sql语句exec_mysql_sql1294.3.26 mysql批量执行sql语句foreach_mysql_df1294.3.27 mysql存储store_mysql1304.3.28 mysql数据库初始化init_mtable1304.3.29 mysql建表create_mtable1304.3.30 mysql保存数据save_object_mtable1324.3.31 mysql加载单条数据get_object_mtable1334.3.32 mysql加载多条数据get_mobject_mtable1344.3.33 mysql删除单条数据delete_object_mtable1344.3.34 mysql删除多条数据delete_mobject_mtable1354.3.35 mysql获取下一个索引get_seq_mtable1364.4 NTC包1364.4.1 整表邮件发送send_mail_one1364.4.2 逐条邮件发送send_mail1384.4.3 含附件逐条邮件发送send_mail21394.5 可视化VL包1414.5.1 热力图hotmap1414.5.2 桑基图sankey1424.5.3 关系图rgl1434.5.4 自定义关系图rgl21444.5.5 自定义列宽set_col_width1454.5.6 按均值等宽设置地图热力颜色hotmap_mean1464.5.7 按最大最小值设置地图热力颜色hotmap_max_min1474.5.8 按中位数设置地图热力颜色hotmap_median1494.6 图计算GL包1514.6.1 Df表到图模型df2G1514.6.2 图模型到Df表G2df1514.6.3 有向图闭环分析cycle_A1524.6.4 无向图闭环分析cycle_B1534.6.5 图所有节点all_nodes1534.6.6 添加df表到已有图中add_df2G1544.6.7 无向图转有向图to_A1544.6.8 有向图转无向图to_B1554.6.9 两点间的最短路径short_path21554.7 SQL包1564.7.1 注册表空间df_table1564.7.2 查看表空间show_tables1564.7.3 执行sql语句df_sql1574.7.4 删除临时表drop_table1584.7.5 清空临时表空间clean1584.8 SSDB包1594.8.1 SSDB导出KEY dump_keys1594.8.2 SSDB导出FEA3配置 dump_fea31594.8.3 SSDB导入 load_json1594.8.4 SSDB导入 load_file1604.9 LBS包1604.9.1 计算两点直线距离fixDistance1604.9.2 计算两定点直线距离distance1624.9.3 获取地址坐标geocoder1634.9.4 获取位置信息c_search1644.10 机器学习ML包1654.10.1 数据处理16练习数据加载ML.load16训练测试集划分ML.tts1684.10.2 降维17主成分分析ML.pca17独立主成分分析ML.ica17二维可视化函数ML.tsne17多维尺度分析ML.mds17奇异值分解ML.svd1764.10.3 分类(有监督)17k最近邻分类ML.knn17决策树分类ML.dt17向量机分类ML.svm17朴素贝叶斯分类ML.gnb17随机森林分类ML.rf17迭代决策树分类ML.gbdt17线性判别分析ML.lda180二次方判别分析ML.qda180弱迭代分类ML.adaBoost180逻辑回归分类ML.lr1814.10.4 回归(有监督)18svm回归ML.SVR18线性回归ML.LR18决策树回归ML.DTR18随机森林回归ML.RFR18迭代决策树回归ML.GBDTR1844.10.5 聚类(无监督)18K均值聚类ML.kmeans18均值漂移聚类ML.means18层次聚类ML.ac18传播聚类ML.ap18密度聚类ML.dbscan18综合层次聚类ML.brich18谱聚类ML.sc18离群点检测ML.dpt1904.10.6 关联分析19apriori算法ML.apri19生成树挖掘ML.fp_growth1924.10.7 模型处理19模型打分ML.score19输出决策树ML.dt2dt19保存模型ML.save_model19加载模型ML.load_model19重命名模型ML.rename_to1964.10.8 预测19预测ML.predict19预测概率ML.predict_proba19特征权重ML.gbdt_fw2005Lambda函数详解2005.1 日期函数2025.2 字符串处理函数2046主要原语一览表206原语参考手册1 基础知识1.1 DataFrame结构OPENFEA采用DataFrame结构进行内部计算,DataFrame结构就是我们常用的二维表格结构,每个表格由一个索引列(可以用来竖向取值)和多个数据列组成,这个结构和关系型数据库中的表结构是一致的。所以,我们也将DataFrame简称为“DF表”,这个结构是线性代数中矩阵的结构,便于进行各种矩阵运算。在OPENFEA所有的计算分析都是针对DF表进行的,所以一定要理解这个结构。DF表的结构示例数据装载后会自动建立索引,通过索引就可以竖向检索数据,索引的值是不能更改的,但可以指定其它的列来替代索引。OPENFEA会根据列中的数据来匹配最佳的数据类型,常见的类型有int64、float64、string(string不一定就是字符串,也可能是一个复杂对象,用string来统一表示了)等。注意:DF表的表名只能以字母开头,否则将会造成add原语操作失败。1.2 内部结构OPENFEA采用内存计算的架构,所有的数据装载入内存进行快速实时计算,同时OPENFEA内部又是多引擎的架构,每个引擎是相互独立隔离的,可以根据需要进行并行计算,也可以一个引擎为主进行交互式分析运算。OPENFEA引擎支持多种数据文件,如csv、pkl、excel等,支持直接将数据文件上传装载至内存,支持计算结果导出成数据文件进行下载。OPENFEA引擎内置一个NoSQL数据库,可以用来存储分析的中间和最终结果,可以通过查看器直接浏览结果,方便宜用。OPENFEA引擎通过ESQL接口可以和Elasticsearch集群互联,实现对ES数据的SQL化访问,实现对数据的全文检索和实时分析,两者结合是数据分析处理的绝配。OPENFEA引擎通过FEA-JDBC组件几乎可以和已知的各种关系型数据库如Oracle、DB2、Postgres、Mysql等数据库进行数据交互,也可以和支持jdbc连接的Nosql数据库工具(如Hive、Imapla等)进行数据交互。OPENFEA引擎通过FEA-REST组件可以和行业内各种服务总线进行对接,也可以通过定制接口和HDFS的文件、HBASE等新型文件系统和NoSQL数据库进行数据交互。1.3 引擎访问OPENFEA是多引擎架构,每个引擎相互隔离。1、引擎9999专用于任务分发和连接SSDB数据库。通过引擎专有划分,可以保证OPENFEA出现内存崩溃时,不会影响ssdb数据的发布。2、引擎900*引擎9000,专用于设置定时器和任务调度,引擎9001、900290*,专用于OPENFEA交互界面。3、引擎8998专用于流数据处理的引擎,可实时分析处理流数据。1.4 OPENFEA界面OPENFEA采用了最新的HTML5+CSS3的WEB开发技术,实现了交互分析的视窗效果,无须下载任何控件,就可以像使用windows桌面一样进行数据分析。OPENFEA交互界面采用最新技术开发,在最新版本的浏览器上才能获得最佳的操作体验,推荐使用Firefox 50以上和Chome 60 以上。桌面正中间的是交互分析窗,用来输入原语进行交互分析,数据分析的结果可以直接在数据窗口中显示,也可以在可视化分析窗口显示,窗口支持最大化、最小化、还原设置,最小化则平铺于桌面左侧工作区。桌面右侧工作区为工具视窗,是数据分析时需要用到的各种工具,包括文件管理、NoSQL查看器、ESQL互联、FEA-JDBC管理、正则表达式和控制台等工具。2 基础原语2.1 新建打开工作区use为防止同一个引擎内多人并行分析,而造成DF表名称污染。OPENFEA使用use原语来新建并打开一个工作区,每个用户可以创建自己的工作区,从而防止DF表的交叉污染。不同工作区内的表可以重名。原语格式use 工作区名原语示例1、新建打开my工作区use my2、新建一张空表,在当前工作区a = udf udf0.new_empty_df3、获取当前时间,以当前时间定义工作区mynow = sdf sys_nowuse test$mynow说明1、 系统默认的工作区为public,跨工作区访问时使用“DF表名工作区名”进行访问。2、 系统默认了一张名称为df0的空表在sys工作区,通过“df0sys”语句就可以访问这张表。3、 sys工作区不能使用use,否则,执行原语“use sys”,将输出“执行错误: sys workspace cant use!”的错误提示。4、 示例3中,public工作的系统变量,是可以在其他工作区共享的5、 工作区的名称不能含有符号2.2 清除工作区clear一个任务结束后,可以清除工作区以释放工作区中DF表所占用的内存。原语格式clear 工作区名原语示例1、清除my工作区。clear my2、清除所有工作区。慎用!clear all3、清除由当前时间变量定义的工作区clear test$mynow对应2.1中的示例3说明1、 clear 原语会清除工作区中所有的表,请务必小心使用。2、 sys工作区不能清除,否则,执行原语“clear sys”,将输出“执行错误: sys workspace cant clear!”的错误提示。3、 一定要在public工作区中调用clear test$mynow该fea脚本2.3 定义definedefine原语用来定义各种系统变量,在一个引擎中定义的变量,对同一台机器上所有的引擎都有效。但对不同的机器是无效的,需要重新设置。原语格式define 链接名 as 字符串define 链接名 by 字符串define 链接名 with 字符串参数说明:链接名:所定义对象的标识符。字符串:字符串的格式根据key的需要来设置,多个值时,需要加上引号。as:定义的值,所有用户都可以看到并使用by:定义的值,别人可以看到并使用,但看不到具体的内容,内容采用加密存储和显示。with:定义的值,只有自己能看到并使用,别人看不到也无法使用,内容采用加密存储和显示。原语示例1、定义本地内置的Nosql数据库ssdb的连接define ssdb0 as :88882、定义udb数据库的连接define udb0 as 04:8000 3、定义集群define cluster0 as :9001,:9002, :9001-90054、定义引擎define main_eng as 46:90015、清除定义的对象内容define c1 as “”说明1、目前很多的define语句都是用来定义连接的,所以,define也被称为连接,常用和系统默认的连接见下表。2、定义引擎时,最好定义IP为本地的IP,否则定义了非本地IP之后无法再修改回来。3、用户只能操作自己定义的信息常用和系统默认的连接序号参数含义示例1ssdb0和FEA系统存储数据的本地SSDB数据库的默认连接define ssdb0 as :88882udb0和udb数据库的默认连接define udb0 as 04:80003jdbc0和fea-jdbc组件的默认连接,设置后可以通过jdbc加载各种关系型数据库的数据define jdbc0 as 04:96004cluster0定义集群,在cluster原语中会指定集群来运行任务define c0 as :9001-90035fast_scan定义开启fast scan模式define fast_scan as 16es0定义和ES集群连接的一个节点,配合fast_scan使用define es0 as 46:92007mysql0定义mysql的链接define mysql0 as (host:,port:3306,database:dbtest,user:admin,password:hello)2.4 显示show用于显示OPENFEA内部的各种状态,如表、定时器、连接、任务等。原语格式show 参数参数说明:tables:显示所有的DF表。tasks:显示所有的任务。defines:显示所有的定义和连接。$:显示所有的单值变量。timers:显示所有的定时器。meminfo:显示DF表的内存占用情况。logs:显示最新的日志。history:显示原语历史纪录。others:显示分组、模型等其他非DF表对象。原语示例1、 显示所有的DF表。show tables2、 显示某一工作区的DF表,如显示public工作的DF表。show public3、 显示所有的任务。show tasks显示整个集群所有不带错误信息的任务。show tasks24、 显示集群所有的任务,每个引擎显示2个任务。show all显示整个集群所有不带错误信息的任务show all5、 显示所有的定义和连接。show defines6、 显示所有的单值变量。show $7、 显示所有的定时器。show timers8、 显示DF表的内存占用情况,单位为bit。show meminfo9、 显示最新的日志。show logs10、显示原语历史纪录show history11、显示机器学习模型、图计算的图等其他信息show others12、显示本引擎的错误信息show errors显示整个集群引擎的错误信息show errors13、将show原语的输出保存为df表df = show tables2.5 数据装载load和存储storeOPENFEA不仅支持Hadoop架构的数据源,也支持传统关系型数据库Oracle、Postgres、Mysql等,使得一些不能迁入到大数据平台的数据同样可以使用OPENFEA来进行内存分析。同时,OPENFEA通过REST接口扩展,可以很好的支持其它第三方平台的数据,如阿里云的大数据开放处理平台ODPS和内存数据库ADS等。多种数据源的支持使得OPENFEA能够接入更多类型的数据来进行关联分析,碰撞比对等运算,而不要求用户一定要进行数据的大规模整合,既降低用户的使用成本,又能发挥多数据关联分析的价值。以下将介绍几种常见数据源(CSV/EXCEL/PKL、ESQL、JDBC、NoSQL)的装载原语和存储原语。2.5.1 CSV/EXCEL/TXT/PKL数据源CSV/EXCEL/TXT/PKL文件的装载、存储,由两个步骤组成:首先,上传CSV/EXCEL/TXT/PKL文件;其次,根据需要,执行CSV/EXCEL/TXT/PKL装载、存储原语。一、上传CSV/EXCEL/TXT/PKL文件在OPENFEA主界面右上角,找到工具箱,点击“”图标,打开如下界面:点击“”按钮,在打开界面中,选择要加载的CSV/EXCEL/TXT/PKL文件后,进行上传。上传完成后,返回到OPENFEA主界面,然后再执行CSV/EXCEL/TXT/PKL装载、存储原语。二、CSV/EXCEL/TXT/PKL装载、存储原语原语格式1、装载CSV/EXCEL/TXT文件。load csv by csv文件名及扩展名 with 参数2、存储CSV/EXCEL/TXT文件。store DF表名 to csv by csv文件名及扩展名 with 参数3、装载PKL文件。load pkl by pkl文件名及扩展名with 参数4、存储PKL文件。store log2 to pkl by pkl文件名及扩展名with 参数参数说明sep:分隔符号,默认为“,”,可以设置为其它的符号。如,with (sep= “|”);encoding:文件编码,默认为gbk,可是设置其他的编码,如 with (encoding=”utf8”)header:把装载进来的csv文件的第一行作为fea表中的列名。默认为0,即将csv文件的第一行作为fea表中的列名;如果csv文件第一行不是列名,而是数据,可以设置为-1,以顺序号生成列名。如,with (header=-1);index:True或False。默认为True,在store时导出索引。False,在store时不导出索引。例如,with(index=False)。原语示例1、装载、存储CSV/EXCEL/TXT文件。(1)装载3.csv文件到DF表a中。a = load csv by 3.csv (2)装载4.csv文件到DF表b中,使用|分割符号,设置编码为utf8。b = load csv by 4.csv with ( sep=| ,encoding=”utf8”)(3)装载5.csv文件到DF表b中,使用|分割符号,自动给每列分配列名。b = load csv by 5.csv with (header=-1,sep=| )(4)存储DF表log中的数据到5.csv中。store log to csv by 5.csv2、装载、存储PKL文件。(1)装载2.pkl文件到DF表c中。c = load pkl by 2.pkl(2)装载空的或不存在的pkl文件3.pkl到DF表c中,得到空的DF表。c = load pkl by 3.pkl(3)存储DF表log2到4.pkl中。store log2 to pkl by 4.pkl说明1、 装载、存储CSV和EXCEL的命令相同。但EXCEL,只支持微软2003和2007版本,同时excel文件需另存为csv格式的文件。2、 装载、存储CSV和TXT的命令相同。但TXT文件内容中要有分隔符。3、pkl为FEA内部的二进值格式的文件,常用来开发UDF时进行DF表的调试使用。4、不允许DF表名称以数字开头2.5.2 UDB数据源UDB是杭州合众在ElasticSearch(简称ES)基础上开发的一个分步式全文数据库,可以用来存储处理结构化数据。ESQL是UDB的一个SQL组件,可以通过SQL的语法来对ES的数据进行搜索和分析,大大简化了ES对Query DSL的使用,使得普通熟悉SQL语法的人员,就可以直接用ES进行分析,享受ES实时搜索分析的乐趣。一、数据加载1、少量数据加载OPENFEA可以通过ESQL和ES进行连接,适合于检索条件比较复杂、结果需要排序、数据量(一批次小于1万)不大的数据装载和分析场景。ESQL有两个版本,ESQL2服务端口为8000,ESQL3服务端口为8001,两版本可并行运行。原语格式load udb by连接标识符 query (SQL语句)参数说明:连接标识符:用define定义的ESQL连接符。选择时,需要确认对应的IP地址和端口是否正确,缺省连接标识符为udb0。SQL语句:如果是关系型数据库(比如,ORACLE),输入标准SQL中的select语句;如果是Nosql数据库ES,输入ESQL中的select语句。原语示例1、通过udb0的连接加载people表的数据,没有加任何限止,只加载10条数据a = load udb by udb0 query (select * from people)2、通过udb0的连接加载XM包含张的人员,没加限止,也只加载最符合的10条a = load udb by udb0 query (select * from people where XM=张)3、通过udb0的连接加载XM包含张的人员,前1000条数据a = load udb by udb0 query (select * from people where XM=张limit 1000)4、通过udb0的连接加载XM包含张的人员,前1000条,按age大小排序a = load udb by udb0 query (select * from people where XM=张order by age limit 1000) 说明1、 OPENFEA内置ESQL2引擎,默认通过ESQL2连接ES,可使用es标识符连接即可。2、 若通过ESQL3版本连接ES,则使用udb标识符连接,ESQL3版本的默认端口为8001,还需在原语后加with (用户名/密码),默认为(root/toor)。2、大量数据加载OPENFEA可以用直接和ES连接,适合大批量数据的加载,直接连接ES节点来进行进行快速数据加载,es0即ES集群的一个节点一般端口是9200.原语格式load udb by 连接标识符 scan (scan语句)参数说明连接标识符:用define定义的ES连接符。选择时,需要确认对应的IP地址和端口是否正确,缺省连接标识符为es0scan语句示例:scan * from 表名 where条件 with语句scan语句参数说明:表名:要加载的ES表名。where 条件:选取数据的条件。可选择项,不需要双引号和分号。with语句:用于设置每次加载的routing分片标识数字或size条数。routing分片标识数字:需要加载ES哪个数据分片,就填写数据分片对应的标识数字。routing的设置格式有两种:一种为“routing=分片标识数字”(如,routing=4);另一种为“routing=参数”(如,routing=route)。具体的分片标识数字赋值给es中的变量后,传参到fea。 size条数:用于设置每次装载的条数。原语示例1、通过es0的连接加载people表的所有数据a = load udb by es0 scan (scan * from people)2、通过es0的连接加载XM包含”张”的所有人员a = load udb by es0 scan ( scan * from people where XM=张)3、通过es0的连接,每次加载inx_2015-08表中50条数据a = load udb by es0 scan( scan * from inx_2015-08 with size=50)4、通过es0的连接,加载inx_2015-08表中第4分片上的数据,每100条提交一次。a = load udb by es0 scan(scan * from inx_2015-08 with routing=4 and size=100)5、通过es0的连接,将inx_2015-08表中terminal_id和operate_condition字段的值,加载到 DF表log_34中,每次加载1000条数据log_34 := load udb by es0 scan(scan terminal_id,operate_condition from inx_2015-08 with size=1000)说明1、普通scan模式,通过ESQL加载ES中的数据进行分析,连接使用udb0;fast scan模式,直接从ES节点加载数据,连接使用es0。2、fast scan模式的启动与停止。启动语句: define fast_scan as 1 停止语句: define fast_scan as 0 另外,需要注意的是,2016-05-09以后的FEA版本,默认启动了fast scan模式,不需要手动启动。二、数据存储存储采用的也是OPENFEA内置的ESQL引擎进行解析,直接连接ES节点进行入库,示例如下:原语示例1、将DF表a通过es0的连接存储到people表,默认类型为base,DF表的索引对应UDB中的_id store a to udb by es0 with people2、将DF表log通过es0的连接存储到people表log类型中,DF表的索引对应UDB中的_id store log to udb by es0 with people.log3、将DF表log通过es0的连接存储到people表log类型中,不使用索引_id,使用数据自动分配的_id store log to udb by es0 with people.log.noid说明1、 写入的数据,字段内容不能有空值。2.5.3 JDBC数据源OPENFEA通过JDBC可以和各种关系型数据库如oracle、sqlserver、mysql、portgres等进行连接,也可以和新型的大数据环境的Hive、Imapla和阿里云的ODPS等大数据处理平台进行连接。一、JDBC的连接在OPENFEA主界面,通过运行命令格式“define jdbc0 as ip:port”来进行连接。此处的IP为FEA-JDBC的 IP地址,port默认为9600,如下图所示:在OPENFEA主界面右上角,找到工具箱,点击“”图标,打开如下界面:点击“”图标,在打开界面中,可以添加各种类型的数据库,添加好后可以通过jdbc查询窗口直接输入sql语句,对各库中的表进行装载和存储操作。另外,还支持对各种数据库的修改、删除、导入、导出操作。二、JDBC装载、存储原语原语示例1、装载原语(1)通过jdbc0的连接装载oacle155库HEZH2.FEAJDBCTEST表的数据a = load jdbc by jdbc0 with oracle155 query select * from HEZH2.FEAJDBCTEST(2)通过jdbc0的连接装载udb213库log表people的汇总数据b = load jdbc by jdbc0 with udb213 query select * from log group by people2、存储原语通过jdbc0连接存储DF表a到oracle155库的HEZH2.FEAJDBCTEST表中,主键是ID,对应DF表的索引字段(库名:表名:主键名)store a to jdbc by jdbc0 with oracle155:HEZH2.FEAJDBCTEST:ID说明query后跟随的表达式,可用英文的单引号、双引号或者括号包围2.5.4 NoSQL数据源OPENFEA内置了一个NoSQL数据库ssdb,用来存放中间的结果信息,便于二次分析与即时展现。默认的格式是json格式,从数据库取数据也只支持json格式。如果结果是给别的程序调用的,可以使用hashmap的格式。原语示例1、装载原语示例(1)装载ssdb0中key是people:24h的数据,到DF表a中a = load ssdb by ssdb0 with poeple:24h2、存储原语示例(1)存储DF表24h的数据到ssdb0中,key是people:24h,类型为hashmapstore 24h to ssdb by ssdb0 with poeple:24h_hash as hashmap(2)存储DF表24h的数据到ssdb0中,key是people:24h,默认类型为jsonstore 24h to ssdb by ssdb0 with people:24h(3)存储DF表24h的数据到ssdb0中,key是people:24h,默认类型为json,存活时间为6000秒(适用于存储一些临时性的数据,如一次查询搜索或者统计结果)store 24h to ssdb by ssdb0 with people:24h as 6000说明1、装载ssdb的原语,可兼容query来代替with。2、装载和存储ssdb的最大为128M,超出大小会明确报错。3、存储ssdb的asc参数为-1时,若df表为空表,则不保存。2.6 过滤filterfilter原语是对DF表的行过滤,类似于SQL中的where
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 口腔实操考试题库及答案
- 针灸基础考试题库及答案
- 主管药师考试题库及答案
- 2025年新疆农作物制种项目验收合同协议
- 太原地理结业考试题及答案
- 技术类合同模板和要点解释文档
- 软件面试笔试题目及答案
- 入党笔试考试试题及答案
- 人行法律笔试题库及答案
- 券商暑期笔试题库及答案
- 数据安全国家标准体系(2025 版)
- 潍坊市2026届高三开学调研监测考试物理试题及答案
- 抢救护理记录书写规范与技巧
- 2025至2030中国牙刷丝行业项目调研及市场前景预测评估报告
- 文明礼仪课件高中
- 人教版(2024)八年级上册生物期末复习必考知识点提纲
- DB61-T 5125-2025 绿色生态小区建设评价标准
- 秩序员安全培训完整版
- 感染性休克护理新进展
- 2025年保密教育线上培训考试题及答案
- 不良债权管理办法
评论
0/150
提交评论