前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python量化数据仓库搭建系列1:数据库安装与操作

Python量化数据仓库搭建系列1:数据库安装与操作

原创
作者头像
算法爱好者
修改2021-10-28 09:51:09
7410
修改2021-10-28 09:51:09
举报
文章被收录于专栏:Python量化

Python量化数据仓库搭建系列1:数据库安装与操作

本系列教程为量化开发者,提供本地量化金融数据仓库的搭建教程与全套源代码。我们以恒有数(UDATA)金融数据社区为数据源,将金融基础数据落到本地数据库。教程提供全套源代码,包括历史数据下载与增量数据更新,数据更新任务部署与日常监控等操作。

一、数据仓库

数据仓库(Data Warehouse)简称DW或DWH,数据仓库顾名思义,是一个很大的数据存储集合。是数据库的一种概念上的升级,输入方是各种各样的数据源,最终的输出用于数据分析、量化分析、数据挖掘、数据报表等方向,从逻辑上讲数据仓库和数据库是没有什么区别的。

二、数据库选型

目前常用的开源免费数据库有MySQL、MongoDB 、Postgresql 和 SQLite (Python自带)。在2020-2021年DB-Engines 排行榜前十的见下图,各个数据库有各自的特点和适用场景。具体选用哪一个作为量化投资的数据库,取决于存储的数据特点、性能要求和成本。对于个人来说,硬件水平、技术水平、费用成本和学习时间成本等因素都相当重要。

本系列教程,选用MySQL数据库为例,讲解数据仓库的搭建过程。其他数据库相关教程,也将会陆续推出,敬请期待。

MySQL数据库是当今最流行的开放源码数据库之一,为用户提供了一个相对简单的解决方案,适用于广泛的应用程序部署。MySQL Community Server是MySQL数据库的免费开源版,对个人用户非常友好。

三、数据库安装

1、MySQL Community Server安装包下载

安装包下载网页为:https://dev.mysql.com/downloads/mysql/,选择对应的操作系统,点击下载,例如下图为下载64位Windows系统MySQL Community Server安装包:

2、软件安装

A、双击安装包,进行安装;

B、Choosing a Setup Type页面,选择Developer Default,点击next进入下一步;

C、Path Conflicts页面,确认安装路径与数据存放路径,点击next进入下一步;

D、Check Requirements页面,检查安装条件,直接点击next进入下一步;

E、Installation页面,点击execute执行(此处等待时间较久),执行完后点击next进入下一步;

F、Product Configuration页面,点击next进入下一步;

G、Type and Networking页面,点击next进入下一步;

H、Authentication Method页面,点击next进入下一步;

I、Accounts and Roles页面,设置Root密码,点击next进入下一步;

J、Windows Service页面,点击next进入下一步;

K、Apply Configuration页面,点击execute执行,点击Finish;

L、Product Configuration页面,点击next进入下一步;

M、MySQL Router Configuration页面,点击Finish;

N、Product Configuration页面,点击next进入下一步;

O、Connect To Server页面,填写并check一下root密码,点击next进入下一步;、

P、Apply Configuration页面,点击execute执行,点击Finish;

Q、Product Configuration页面,点击next进入下一步;

R、Installation Complete页面,点击Finish;

完成上述步骤,即可完成安装。

四、MySQL基本使用教程

1、创建数据库

create database <数据库名>;

在MySQL Workbench界面中,建库操作如下图:

2、删除库

drop database <数据库名>;

3、创建表

create table table_name(column_name column_type);

以股票列表为例,建表代码如下:

代码语言:sql
复制
/*
参数名         类型     长度   说明        备注
secu_code      String   20     证券代码
hs_code        String   20     HS代码
secu_abbr      String   20     证券简称
chi_name       String   20     中文名称
secu_market    String   20     证券市场
listed_state   String   20     上市状态
listed_sector  String   20     上市板块
*/
CREATE TABLE udata.TB_Stock_List (
                        secu_code CHAR(20),
                        hs_code CHAR(20),
                        secu_abbr CHAR(20),
                        chi_name CHAR(40),
                        secu_market CHAR(20), 
                        listed_state CHAR(20),
                        listed_sector CHAR(20),
                        updatetime CHAR(20));
4、删除表

drop table table_name;

5、修改表名

alter table old_name rename to new_name或rename table old_name to new_name;

6、增加字段

alter table table_name add column_name column_type;

7、修改字段

alter table table_name change column_name new_column_name new_column_name_type;

8、删除字段

alter table table_name drop column_name;

9、插入数据
代码语言:sql
复制
INSERT INTO table_name ( field1, field2,...fieldN )
						VALUES
                       ( value1, value2,...valueN );
10、查询数据
代码语言:sql
复制
SELECT column_name1,column_name2
FROM table_name
[WHERE Clause]
[LIMIT N]

A、查询语句中,可以使用一个或者多个表,表之间使用逗号分割,并使用WHERE语句来设定查询条件;

B、SELECT 命令可以读取一条或者多条记录;

C、可以使用星号(*)来代替其他字段,SELECT语句会返回表的所有字段数据;

D、可以使用 WHERE 语句来包含任何条件;

E、可以使用 LIMIT 属性来设定返回的记录数

11、WHERE用法
代码语言:sql
复制
SELECT field1, field2,...fieldN FROM table_name1, table_name2
WHERE condition1 AND condition2

A、使用 AND 或者 OR 指定一个或多个条件;

B、WHERE 子句也可以运用于 SQL 的 DELETE 或者 UPDATE 命令;

C、WHERE 子句类似于程序语言中的 if 条件;

12、UPDATE用法
代码语言:sql
复制
UPDATE table_name SET field1=new-value1, field2=new-value2
[WHERE Clause]

A、可以同时更新一个或多个字段;

13、DELETE用法
代码语言:sql
复制
DELETE FROM table_name [WHERE Clause]

A、如果没有指定 WHERE 子句,MySQL 表中的所有记录将被删除;

14、排序
代码语言:sql
复制
SELECT field1, field2,...fieldN FROM table_name1, table_name2...
ORDER BY field1 [ASC [DESC][默认 ASC]], [field2...] [ASC [DESC][默认 ASC]]

A、可以设定多个字段来排序;

B、可以使用 ASC 或 DESC 关键字来设置查询结果是按升序或降序排列。 默认情况下,它是按升序排列;

15、其他

UNION、LIKE、GROUP BY、JOIN、NULL、索引、临时表等等,更多用法可参考专业教程系统学习。

下一节《Python量化数据仓库搭建系列2:Python操作数据库》

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Python量化数据仓库搭建系列1:数据库安装与操作
  • 一、数据仓库
  • 二、数据库选型
  • 三、数据库安装
    • 1、MySQL Community Server安装包下载
    • 四、MySQL基本使用教程
      • 1、创建数据库
        • 2、删除库
          • 3、创建表
            • 4、删除表
              • 5、修改表名
                • 6、增加字段
                  • 7、修改字段
                    • 8、删除字段
                      • 9、插入数据
                        • 10、查询数据
                          • 11、WHERE用法
                            • 12、UPDATE用法
                              • 13、DELETE用法
                                • 14、排序
                                  • 15、其他
                                  相关产品与服务
                                  云数据库 SQL Server
                                  腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
                                  领券
                                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档