python flask框架实例_Flask框架的一个小案例

这个案例简单的实现了Flask框架的原理,运用python中的Flask框架从数据库中提取数据,前端页面运用echarts渲染

后端代码:

from flask import Flask,render_template

from flask_sqlalchemy import SQLAlchemy

创建Flask应用对象

__name__表示当前模块的名字

app=Flask(name) #访问静态资源的url前缀 静态文件的目录 默认为static模板文件的目录

class Config(object):

sqlalchemy的配置参数

SQLALCHEMY_DATABASE_URI=”mysql://root:123456@127.0.0.1:3306/sales”

SQLALCHEMY_TRACK_MODIFICATIONS=True

app.config.from_object(Config)

db=SQLAlchemy(app)

class Sales(db.Model):

tablename=”tbl_sales”

days=db.Column(db.String(64),primary_key=True,nullable=True)

e_mail=db.Column(db.Integer,nullable=True)

league=db.Column(db.Integer,nullable=True)

video=db.Column(db.Integer,nullable=True)

visit=db.Column(db.Integer,nullable=True)

search=db.Column(db.Integer,nullable=True)

@app.route(“/”)

def index():

查询数据库

sales_list=Sales.query.all()

return render_template(“sales.html”,sales=sales_list)

if name == ‘main‘:

db.drop_all()

db.create_all()

s1=Sales(days=”周一”,e_mail=120,league=220,video=150,visit=320,search=820)

s2=Sales(days=”周二”,e_mail=132,league=182,video=232,visit=332,search=932)

s3=Sales(days=”周三”,e_mail=101,league=191,video=201,visit=301,search=901)

s4=Sales(days=”周四”,e_mail=134,league=234,video=154,visit=334,search=934)

s5=Sales(days=”周五”,e_mail=90,league=290,video=190,visit=390,search=1290)

s6=Sales(days=”周六”,e_mail=230,league=330,video=330,visit=330,search=1330)

s7=Sales(days=”周日”,e_mail=210,league=310,video=410,visit=320,search=1320)

db.session.add_all([s1,s2,s3,s4,s5,s6,s7])

db.session.commit()

app.run(debug=True)

前端代码:

var dom=document.getElementById(“container”);

var myChart=echarts.init(dom)

var app={};

//存储日期

var data1=[{% for item in sales %}'{{item.days}}’,{% endfor %}];

//邮件直销的数量

var data2=[{% for item in sales %}{{item.e_mail}},{% endfor %}];

//联盟广告数量

var data3=[{% for item in sales %}{{item.league}},{% endfor %}];

//视频广告数量

var data4=[{% for item in sales %}{{item.video}},{% endfor %}];

//直接访问数量

var data5=[{% for item in sales %}{{item.visit}},{% endfor %}];

//搜索引擎数量

var data6=[{% for item in sales %}{{item.search}},{% endfor %}];

option=null;

option={

title:{

text:’折线图堆叠’

tooltip:{

trigger:’axis’

legend:{

data:[‘邮件营销’,’联盟广告’,’视频广告’,’直接访问’,’搜索引擎’]

grid:{

left:’3%’,

right:’4%’,

bottom:’3%’,

containLabel:true

toolbox:{

feature:{

saveAsImage:{}

xAxis:{

type:’category’,

boundaryGap:false,

data:data1

yAxis:{

type:’value’

series:[{

name:’邮件营销’,

type:’line’,

stack:’总量’,

data:data2

},{

name:’联盟广告’,

type:’line’,

stack:’总量’,

data:data3

},{

name:’视频广告’,

type:’line’,

stack:’总量’,

data:data4

},{

name:’直接访问’,

type:’line’,

stack:’总量’,

data:data5

},{

name:’搜索引擎’,

type:’line’,

stack:’总量’,

data:data6

};;

if(option && typeof option ===”object”){

myChart.setOption(option)

效果如下:

Original: https://blog.csdn.net/weixin_29239661/article/details/114361815
Author: Project Moto
Title: python flask框架实例_Flask框架的一个小案例



相关阅读

Title: 【大数据技术Hadoop+Spark】Spark架构、原理、优势、生态系统等讲解(图文解释)

一、Spark概述

Spark最初由美国加州伯克利大学(UCBerkeley)的AMP(Algorithms, Machines and People)实验室于2009年开发,是基于内存计算的大数据并行计算框架,可用于构建大型的、低延迟的数据分析应用程序。Spark在诞生之初属于研究性项目,其诸多核心理念均源自学术研究论文。2013年,Spark加入Apache孵化器项目后,开始获得迅猛的发展,如今已成为Apache软件基金会最重要的三大分布式计算系统开源项目之一(即Hadoop、Spark、Storm)

二、Spark的特点

Spark计算框架在处理数据时,所有的中间数据都保存在内存中,从而减少磁盘读写操作,提高框架计算效率。同时Spark还兼容HDFS、Hive,可以很好地与Hadoop系统融合,从而弥补MapReduce高延迟的性能缺点。所以说,Spark是一个更加快速、高效的大数据计算平台。

特点可以概括为以下四点

1:运行速度快
2:容易使用
3:通用性
4:运行模式多样

Spark支持使用Scala Java Python和R语言编程,由于Spark采用Scala语言进行开发,因此建议采用Scala语言进行Spark应用程序的编写,采用Scala语言编写Spark应用程序,可以获得最好的性能,和其他语言相比,Scala主要有以下三个方面的优势

1:Java代码比较繁琐
2:Python语言并发性能不好
3:Scala兼容Java

三、Spark生态系统

Spark在2013年加入Apache孵化器项目,之后获得迅猛的发展,并于2014年正式成为Apache软件基金会的顶级项目。Spark生态系统已经发展成为一个可应用于大规模数据处理的统一分析引擎,它是基于内存计算的大数据并行计算框架,适用于各种各样的分布式平台的系统。在Spark生态圈中包含了Spark SQL、Spark Streaming、GraphX、MLlib等组件。

python flask框架实例_Flask框架的一个小案例

Spark Core:Spark核心组件,实现了Spark的基本功能,包含任务调度、内存管理、错误恢复、与存储系统交互等模块。Spark Core中还包含对弹性分布式数据集的API定义。

Spark SQL:用来操作结构化数据的核心组件,通过Spark SQL可直接查询Hive、HBase等多种外部数据源中的数据。Spark SQL的重要特点是能够统一处理关系表和RDD。

Spark Streaming:Spark提供的流式计算框架,支持高吞吐量、可容错处理的实时流式数据处理,其核心原理是将流数据分解成一系列短小的批处理作业。

MLlib:Spark提供的关于机器学习功能的算法程序库,包括分类、回归、聚类、协同过滤算法等,还提供了模型评估、数据导入等额外的功能。

GraphX:Spark提供的分布式图处理框架,拥有对图计算和图挖掘算法的API接口及丰富的功能和运算符,便于对分布式图处理的需求,能在海量数据上运行复杂的图算法。

独立调度器、Yarn、Mesos:集群管理器,负责Spark框架高效地在一个到数千个节点之间进行伸缩计算的资源管理。

四、Spark与Hadoop对比

1:编程方式

Hadoop的MapReduce计算数据时,要转化为Map和Reduce两个过程,从而难以描述复杂的数据处理过程;而Spark的计算模型不局限于Map和Reduce操作,还提供了多种数据集的操作类型,编程模型比MapReduce更加灵活。

2:数据存储

Hadoop的MapReduce进行计算时,每次产生的中间结果都存储在本地磁盘中;而Spark在计算时产生的中间结果存储在内存中。

3:数据处理

Hadoop在每次执行数据处理时,都要从磁盘中加载数据,导致磁盘IO开销较大;而Spark在执行数据处理时,要将数据加载到内存中,直接在内存中加载中间结果数据集,减少了磁盘的IO开销。

4:数据容错

MapReduce计算的中间结果数据,保存在磁盘中,Hadoop底层实现了备份机制,从而保证了数据容错;Spark RDD实现了基于Lineage的容错机制和设置检查点方式的容错机制,弥补数据在内存处理时,因断电导致数据丢失的问题。

五、Spark的部署方式

python flask框架实例_Flask框架的一个小案例

1:Standalone模式

Standalone模式被称为集群单机模式。

该模式下,Spark集群架构为主从模式,即一台Master节点与多台Slave节点,Slave节点启动的进程名称为Worker,存在单点故障的问题。

2:Mesos模式

Mesos模式被称为Spark on Mesos模式。

Mesos是一款资源调度管理系统,为Spark提供服务,由于Spark与Mesos存在密切的关系,因此在设计Spark框架时充分考虑到对Mesos的集成。

3:Yarn模式

Yarn模式被称为Spark on Yarn模式,即把Spark作为一个客户端,将作业提交给Yarn服务。

由于在生产环境中,很多时候都要与Hadoop使用同一个集群,因此采用Yarn来管理资源调度,可以提高资源利用率。

六、Spark运行架构与原理

Spark运行架构主要由SparkContext、Cluster Manager和Worker组成,其中Cluster Manager负责整个集群的统一资源管理,Worker节点中的Executor是应用执行的主要进程,内部含有多个Task线程以及内存空间,

python flask框架实例_Flask框架的一个小案例

七、Spark运行基本流程

Spark应用在集群上作为独立的进程组来运行,具体运行流程如下所示。

python flask框架实例_Flask框架的一个小案例

1)当一个Spark应用被提交时,根据提交参数创建Driver进程,为应用构建起基本的运行环境,即由Driver创建一个SparkContext进行资源的申请、任务的分配和监控。

2)SparkContext根据RDD的依赖关系构建DAG图,DAG图提交给DAGScheduler解析成Stage,然后把一个个TaskSet提交给底层调度器Task Scheduler处理。

3)资源管理器Cluster Manager为Executor分配资源,并启动Executor进程

4)Executor向SparkContext申请Task,TaskScheduler将Task发放给Executor运行并提供应用程序代码。

5)Task在Executor上运行把执行结果反馈给TaskScheduler,然后反馈给DAGScheduler,运行完毕后写入数据并释放所有资源。

创作不易 觉得有帮助请点赞关注收藏~~~

Original: https://blog.csdn.net/jiebaoshayebuhui/article/details/128356487
Author: showswoller
Title: 【大数据技术Hadoop+Spark】Spark架构、原理、优势、生态系统等讲解(图文解释)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/309866/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 生成对抗网络(GAN)详解与实例

    GAN介绍 理解GAN的直观方法是从博弈论的角度来理解它。GAN由两个参与者组成,即一个生成器和一个判别器,它们都试图击败对方。生成备从分巾中狄取一些随机噪声,并试图从中生成一些类…

    Python 2022年12月23日
    041
  • 如何用安卓手机运行Python代码

    1. 写在前面的话 天天都在PC端运行Python代码的我,今天突然灵光一现,想着是不是能够在移动端运行Python代码呢?如果能够实现的话,家里的废旧手机就有用武之地了。 ; 2…

    2022年8月28日
    0153
  • 08_Linux基础-vim-tmux-字符编码

    08_Linux基础-vim-tmux-字符编码 一. vim 文本编辑器-vim(编辑文本) Windows:记事本、word、sublime、pycharm能编辑音乐、视频、图…

    Python 2022年11月10日
    081
  • cnn+lstm+attention对时序数据进行预测

    1、摘要 本文主要讲解:bilstm-cnn-attention对时序数据进行预测主要思路: 对时序数据进行分块,生成三维时序数据块 建立模型,卷积层-bilstm层-attent…

    Python 2022年12月23日
    067
  • 现在转行计算机如49年入国军?

    阿里,腾讯等互联网大厂最近不太安宁,裁员消息频出,无风不起浪,裁员年年有,今年特别多。于是不少打算入行或者已经入行计算机的同学开始担忧,如今入行计算机,怎么有点49年入国军的赶脚?…

    Python 2023年1月19日
    024
  • 搭配实战细讲Pytest–为后续UI测试封装打基础–值得收藏

    pytest是一个非常好用的测试框架,并且这个框架已经非常成熟了。 它简单灵活,容易上手,支持参数化,也能够支持简单的单元测试和复杂的功能测试。也是自动化测试的利器。 我们先来看看…

    Python 2023年1月17日
    026
  • Python的Flask框架的学习笔记(前后端变量传送,文件上传,网页返回)内含实战:实现一个简单的登录页面

    Flask框架的学习笔记 * – 写在前面 – 配置环境 – 创建项目文件 – Hello Flask – 请求方式GE…

    Python 2023年1月2日
    042
  • 面试问题-接口方面

    1.说说你对接口的理解 接口是服务,是功能点实现,是数据传递的通道,也是服务器端的一个实现了某种协议(比如http协议…)和映射机制(当访问一个url时就会通过服务器端…

    Python 2023年1月6日
    044
  • Python基础学习四

    元组的基本概念 在 python 里,元组和列表几乎没什么不同,主要是元组不能改变(这叫没有什么区别?),就是说,不能添加、修改或删除元组里的元素。元组使用小括号 ( ),列表使用…

    Python 2023年2月5日
    015
  • Django框架详解

    一、MVC框架 1、MVC框架核心思想: 分工和解耦 2、web MVC举例: 以通过浏览器注册用户信息为例: M:Model,模型, 和数据库进行交互。 V:View,视图, 产…

    Python 2022年12月27日
    049
  • python贪吃蛇小游戏代码_python 贪吃蛇小游戏代码

    !/usr/bin/python –– coding: UTF-8 –– 作者:黄哥 链接:https://www.zhihu.co…

    Python 2023年1月21日
    023
  • 搞AI开发,你不得不会的PyCharm技术

    摘要:PyCharm在AI项目开发提供了优秀的代码编辑、调试、远程连接和同步能力,在开发者中广受欢迎。 使用PyCharm插件配合ModelArts: 一键帮助用户配置远程Mode…

    Python 2023年2月1日
    012
  • numpy学习记录

    numpy教程 SciPy(Scientific Python):功能:插值matplotlib(绘图库) 在 Win10上安装numpy 在anaconda上安装记录:输入命令行…

    Python 2023年1月13日
    025
  • flask-migrate:数据库界的git操作

    最近在跟着b站一位老师做全栈项目,也算是为自己的毕设搭一个基本框架,这个框架呢主要是利用flask进行网页的开发,其中在前后端交互中老师用到了migrate这个管理工具,很新奇,作…

    Python 2023年1月4日
    063
  • Django 05 :管理员操作 + 用户认证【 中间件 +图片验证码 + Cookie 与 Session】

    文章目录 1、管理员操作 * 1.1、创建表 1.2、前端基础效果 1.3、新建管理员(确定密码) 1.4、编辑 1.5、删除和重置密码 – 1.5.1、删除 1.5….

    Python 2022年12月28日
    048
  • Flask 之一蓝图Blueprint详解

    一、蓝图概述 蓝图:是flask提供的一种应用程序组织化的方法,类似的django的app,把不同功能分到不同文件,最后将这些文件汇总起来。 本质:将不同处理功能的代码分开放,再将…

    Python 2023年1月3日
    065
最近整理资源【免费获取】:   👉 程序员最新必读书单  | 👏 互联网各方向面试题下载 | ✌️计算机核心资源汇总