当前位置: 首页 > news >正文

什么网站教你做早点集团网站建设新闻

什么网站教你做早点,集团网站建设新闻,网址大全123上网导航网址123,114黄页企业信息查询【背景】 明道云优势在于上传和企业内部流程的系统化#xff0c;换句话说#xff0c;是产生数据的部分。 SmartBi优势在于生成报表和即席查询等#xff0c;是使用沉淀数据的部分。 如果能将这两部分的数据打通#xff0c;可以大大扩展企业数字化框架的覆盖范围。让这两套平…【背景】 明道云优势在于上传和企业内部流程的系统化换句话说是产生数据的部分。 SmartBi优势在于生成报表和即席查询等是使用沉淀数据的部分。 如果能将这两部分的数据打通可以大大扩展企业数字化框架的覆盖范围。让这两套平台协同发挥11远大于2的作用。 【分析】 目前总共有两种方法一种是SmartBi提供的官方接口。一种是我自研的方法。 官方接口建立的连接严格来说只是批量。制定一个时间段间隔去跑抽取程序将指定明道云APP的数据抽取到SmartBi的高速缓存。 我的自研方法是在明道云上传时将数据同步到自己的企业内数据库我用的MySQLSmartBi直连MySQL数据库从而实现联通。 两种方法前者好在不用自己写服务弱点在于无法获得实时的最新数据对数据的预处理可能也不方便。 后者由于已经写了通用服务如果大家直接用我的源码也是不用重复开发的。弱点在于上传后记得点一下同步按钮优点在于自主自由可以在MySQL中以视图、存储过程等方式做前置的预处理获得实时数据的时点也不受抽取批量执行时间间隔的限制。 【同步功能源码】 我的同步源码是用python flask写的视图函数。这是一套通用源码任何APP都可以利用此套服务将APP内的表一键同步到自有MySQL数据库中。无须重复开发。 同步源码 from flask import Flask, request import requests as rq import pandas as pd from sqlalchemy import create_engine,exc import jsonapp Flask(__name__)app.route(/Mindao_cloud_common_upload, methods[POST, GET]) def Mindao_cloud_common_upload():appKey request.args.get(appKey)sign request.args.get(sign)result syncDB(appKey, sign)return resultdef syncDB(appKey, sign):try:result_list []table_id_list getAppTables(appKey, sign)if len(table_id_list) 0:return No table exist in current app!else:for table_id in table_id_list:result fetchTableRows(appKey, sign, table_id)result_list.append(result)return str(result_list)except Exception as e:return edef getAppTables(appKey, sign):try:result rq.get(urlfhttp://明道云服务IP地址/api/v1/open/app/get?appKey{appKey}sign{sign})result_dict result.json()table_dict result_dict[data][sections][0][items]table_id_list []for table_item in table_dict:if table_item[type] 0:table_id_list.append(table_item[alias])return table_id_listexcept Exception as e:return edef fetchTableRows(appKey, sign, table_id):try:ini_index 0row_num 1000page_size 1000total_df pd.DataFrame()while row_num page_size:ini_index ini_index 1params {appKey: appKey,sign: sign,worksheetId: table_id,viewId: ,pageSize: page_size,pageIndex: ini_index,sortId: ,isAsc: }result rq.post(urlhttp://明道云服务IP地址/api/v2/open/worksheet/getFilterRows, jsonparams)result_dict result.json()if result_dict[data][total] 0:rows result_dict[data][rows]row_num len(rows)rows_list []for row in rows:sorted_items sorted(row.items())sorted_keys, sorted_values zip(*sorted_items)rows_list.append(sorted_values)rows_df pd.DataFrame(rows_list,columnssorted_keys)total_df pd.concat([total_df, rows_df], ignore_indexTrue)result insert_into_table(total_df, table_id)else:result f{table_id} no records!breakexcept Exception as e:result ereturn resultdef insert_into_table(dataframe, table_name):try:database_url mysql://root:x5127.0.0.1:3306/mingdaocloud# 创建数据库连接引擎engine create_engine(database_url)# 写入数据到数据库表try:dataframe.to_sql(nametable_name, conengine, if_existsreplace, indexFalse)except exc.IntegrityError as e:# 处理数据库完整性错误例如违反主键约束return (f数据库完整性错误: {e})except exc.OperationalError as e:# 处理数据库操作错误例如表不存在return (f数据库操作错误: {e})# 在这里创建新表table_name.__table__.create(bindengine)return (已创建新表。)except Exception as e:# 处理其他类型的异常return (f发生了其他类型的错误: {e})finally:engine.dispose()return f{table_name}全量同步已完成except Exception as e:return eif __name__ __main__:app.run(debugTrue, host0.0.0.0, port5050) 【源码用法】 搭建Flask服务配合tornado运行上面的源码。明道云方面在自定义界面新建一个按钮操作选择打开链接配置链接和目标传参。参数这里只要两个就是本App的sign和appKey。链接就是你服务所在服务器地址视图函数这里是http://服务器IP:5050/Mindao_cloud_common_upload。 在MySQL数据库后台要先创建好一个名为mingdaocloud的数据库。为了让自动创建的表和字段的名字有意义强烈建议第一次同步前先去APP内部API设置部分将表的别名和字段别名都设置好。不然创建的表和字段名称都会是明道云内部给的表编号和字段编号不易于后续使用。 【源码说明】 这个源码具体做的事情就是先获得当前APP所有表接着再去拿到每张表的所有数据这里存在一个分页的问题也处理了一些错位的可能性。原理上就是把所有数据塞进一个Dataframe然后再全量更新到MySQL数据库中。 如果有一些自己的需求可以在此基础上修改。这套代码的通用性等我在自己的应用中都做过测试。
http://www.zqtcl.cn/news/679291/

相关文章:

  • 江苏省住房和城乡建设局网站首页北京大型网站制作公司
  • 网站改版工作方案网站设计技能培训
  • 佳木斯市网站建设淄博网站开发招聘
  • 学习软件的网站先备案先建网站
  • 建立网站 知乎常州网站制作机构
  • 洛阳建设网站上海高端室内设计事务所
  • 做高清图的网站wordpress分类自定义文字
  • 创建站点如何做网站如何利用分类信息网站做推广
  • wordpress 拍卖插件找文网优化的技术团队
  • 建站素材网自助餐火锅网站建设
  • 企业型网站建设方案农村电商网站设计与发展现状
  • 建站快车凡科企业网站建设合同(一)
  • 阜平网站建设在广州做seo找哪家公司
  • 怎么做农家乐联盟网站六安建设机械网站
  • 网站开发行业标准江苏网站开发公司
  • 服装技术支持东莞网站建设如何加强企业网站建设论文
  • 中英双语网站怎么做深圳勘察设计协会
  • 用dw做网站维护教程梧州网站建设制作
  • 网站代运营公司有哪些深圳小区封闭最新通知
  • 江西网站设计服务网站开发所需费用明细
  • 深圳网站建设公司jm3q编程网站免费中文版
  • 泉州专门制作网站如何在小红书上做推广
  • 网站改版活动微网站开发一般费用多少钱
  • 网站关键词挖掘顺德网站制作案例价位
  • 广广东网站建设企业网站无锡
  • 广州网站备案号wordpress模板专题页
  • 西安做网站哪里价格低综合查询
  • 电商需要多少投入沈阳网站关键词优化
  • 速拓科技是做网站百度推广登陆入口官网
  • 十大高端网站设计网站开发培训达内