如何将大数据保存到 MySql 数据库
1. 什么是大数据
1. 所谓大数据, 就是大的字节数据,或大的字符数据.
2. 标准 SQL 中提供了如下类型来保存大数据类型:
- 字节数据类型:
tinyblob(256B), blob(64K), mediumblob(16M), longblob(4G) - 字符数据类型:
tinyclob(256B), clob(64K), mediumclob(16M), longclob(4G)
3. MySql 中处理字符的数据类型名称与 SQL 标准不同:
- 字符数据类型:
tinytext(256B), text(64K), mediumtext(16M), longtext(4G)
// 示例: 把 mp3 保存到数据库中
// 需要在 MySql 配置文件中添加如下配置: `max_allowed_packet=10485760`
// 因为 MySql 默认不允许数据包传输过大
public class Demo{
// 将 mp3 文件保存到数据库中
public void fun1(){
// 获取连接对象
Connection con = JdbcUtils.getConnection();
// 提供 sql 模板, 获取 PreparedStatement 对象
String sql = "INSERT INTO tab_bin VALUES(?,?,?)";
PreparedStatement pstmt = con.prepareStatement(sql);
// 设置 sql 模板参数
pstmt.setInt(1,001);
pstmt.setString(2,"hello.mp3");
// mp3 保存为 blob 类型的数据
// 通过 commons-io 工具类, 将 mp3 转换成 byte[]
Byte[] bytes = IOUtils.toByteArray(new FileInputStream("/Users/姓名/Desktop/hello.mp3"));
// 使用 bytes, 创建 Blob 对象
Blob blob = new SerialBlob(bytes);
pstmt.setBlob(3,blob);
// 发送 sql 语句
pstmt.executeUpdate();
}
// 从数据库中获取 mp3 数据
public void fun2(){
// 获取连接对象
Connection con = JdbcUtils.getConnection();
// 获取 PreparedStatement 对象
String sql = "SELECT * FROM tab_bin";
PreparedStatement pstmt = con.prepareStatement(sql);
// 发送 sql 语句, 返回 ResultSet 对象
ResultSet rs = pstmt.executeQuery();
// 将 rs 中名为 data 列的数据
if(rs.next()){
Blob blob = rs.getBlob("data");
// 把 blob 转换成硬盘上的 mp3 文件
// 1. 通过 blob 得到输入流对象
// 2. 自己创建输出流对象
// 3. 把输入流的数据写入到输出流中
InputStream in = blob.getBinaryStream();
OutputStream out = new FileOutputStream("/Users/姓名/Document/world.mp3");
// 使用工具类中的方法
IOUtils.copy(in,out);
}
}
}
参考资料:
如何将大数据保存到 MySql 数据库的更多相关文章
- Python scrapy爬虫数据保存到MySQL数据库
除将爬取到的信息写入文件中之外,程序也可通过修改 Pipeline 文件将数据保存到数据库中.为了使用数据库来保存爬取到的信息,在 MySQL 的 python 数据库中执行如下 SQL 语句来创建 ...
- python之scrapy爬取数据保存到mysql数据库
1.创建工程 scrapy startproject tencent 2.创建项目 scrapy genspider mahuateng 3.既然保存到数据库,自然要安装pymsql pip inst ...
- 爬取网贷之家平台数据保存到mysql数据库
# coding utf-8 import requests import json import datetime import pymysql user_agent = 'User-Agent: ...
- node 爬虫 --- 将爬取到的数据,保存到 mysql 数据库中
步骤一:安装必要模块 (1)cheerio模块 ,一个类似jQuery的选择器模块,分析HTML利器. (2)request模块,让http请求变的更加简单 (3)mysql模块,node连接mysq ...
- php将图片以二进制保存到mysql数据库并显示
一.存储图片的数据表结构: -- -- 表的结构 `image` -- CREATE TABLE IF NOT EXISTS `image` ( `id` int(3) NOT NULL AUTO_I ...
- 将爬取的数据保存到mysql中
为了把数据保存到mysql费了很多周折,早上再来折腾,终于折腾好了 安装数据库 1.pip install pymysql(根据版本来装) 2.创建数据 打开终端 键入mysql -u root -p ...
- Python实现将图片以二进制格式保存到MySQL数据库中,以及取出:
创建数据库表格式: CREATE TABLE photo ( photo_no int(6) unsigned NOT NULL auto_increment, image MEDIUMBLOB, P ...
- 信息技术手册可视化进度报告 基于BeautifulSoup框架的python3爬取数据并连接保存到MySQL数据库
老师给我们提供了一个word文档,里面是一份信息行业热词解释手册,要求我们把里面的文字存进数据库里面,然后在前台展示出来. 首先面临的问题是怎么把数据导进MySQL数据库,大家都有自己的方法,我采用了 ...
- 使用官方组件下载图片,保存到MySQL数据库,保存到MongoDB数据库
需要学习的地方,使用官方组件下载图片的用法,保存item到MySQL数据库 需要提前创建好MySQL数据库,根据item.py文件中的字段信息创建相应的数据表 1.items.py文件 from sc ...
随机推荐
- Atitit.常用语言的常用内部api 以及API兼容性对源码级别可移植的重要性 总结
Atitit.常用语言的常用内部api 以及API兼容性对源码级别可移植的重要性 总结 1.1. 要兼容的重要语言api1 1.2. 常用基础api分类 core api1 1.3. 比较常用的扩展库 ...
- Atitit.一些公司的开源项目 重大知名开源项目attilax总结
Atitit.一些公司的开源项目 重大知名开源项目attilax总结 1. Twitter--Bootstrap:1 2. Google2 2.1. Gson2 2.2. Angular.Js2 2. ...
- 27. Remove Element【easy】
27. Remove Element[easy] Given an array and a value, remove all instances of that value in place and ...
- 怎样正确写网站title、keywords、description比较标准。
一.title title,也就是标题,是在浏览器上面显示出来的,方便用户了解这个页面的内容;特别是搜索引擎判断你网页内容的主要根据.搜索引擎就很大部分是依靠网站title来判断你网站是关于什么内容的 ...
- 【转载】使用SoapUI 测试Web Service
转载地址:使用SoapUI 测试Web Service 如何测试写好的Webservice?你当然可以写代码来测试,但还是太麻烦,你得花时间去学习各语言的关于Webservice调用的相关API. ...
- BZOJ 1798 AHOI2009 Seq 维护序列 线段树
题目大意:维护一个序列,提供三种操作: 1.将区间中每个点的权值乘上一个数 2.将区间中每个点的权值加上一个数 3.求一段区间的和对p取模的值 2631的超^n级弱化版.写2631之前能够拿这个练练手 ...
- Struts1标签
Struts1 标签库 说明 Struts提供了五个标签库,即:HTML.Bean.Logic.Template和Nested. HTML 标签 : 用来创建能够和Struts 框架和其他相应的HT ...
- Hibernate无主键配置文件编写
1. 环境:jdk1.4+hibernate2.0+weblogic8 一般情况下,我们建的表都会有主键,然后根据hibernate的配置文件编写条件 有一个主键key,剩下的是Prope ...
- 第一百六十五节,jQuery,过滤选择器
jQuery,过滤选择器 学习要点: 1.基本过滤器 2.内容过滤器 3.可见性过滤器 4.子元素过滤器 5.其他方法 过滤选择器简称:过滤器.它其实也是一种选择器,而这种选择器类似与 CSS3 (h ...
- Spring MVC可参数化的视图控制器
以下示例显示如何使用Spring Web MVC框架来实现多动作控制器的可参数化视图控制器.可参数化视图允许将请求映射到网页. 所下所示配置 - import javax.servlet.http.H ...