8 database
我们作为数据分析师有必要和数据库打交道吗?实际工作中,数据量达到一定的程度,当你开始需要使用 Excel PowerPivot 做数据透视表13时,你就必须开始和数据库打交道,因为这时数据源超过Excel上限了,已经没办法承接。
现实中的数据大部分都是脏数据,我们需要从数据库获取数据并清洗,再使用R、 Excel 、Power BI、tebleau等工具连接使用。那我们使用什么工具完成ETL14呢?经过实践发现,使用R语言完成该过程对我们个人用户来说足够使用。
即使你暂时没有接触使用数据库,也建议你未来用数据库存储数据,尤其是当有一定数据量时;在我最开始接触数据时,数据一般保存在Excel中,那时候数据量大概在50万行左右,当表格中sumifs等公式较多时,Excel表格将会很卡顿,甚至发送崩溃。当需要大批量vlookup时,在Excel中操作也是一件很痛苦的事情。
目前工作中打交道数据库主要是MSSQL,Oracle,MySQL等,R中与数据库交互的包主要有odbc,DBI,RODBC,RMySQL,ROracle等包。本文主要从以上数据库介绍记录“R与数据库的连接交互”,主要分为:
安装 SQL Server 数据库
odbc 包介绍
DBI 包介绍
其它R包介绍
与数据库交互常见问题
dbplyr 包介绍
参考资料
DBI库在查询或上传工作中效率比RODBC高,特别数据量较大时,上传效率差异巨大,具体差异请点击查看详情。所以建议采用DBI包,但是RODBC对中文支持友好,在练习阶段可以尝试使用,加深印象。
RSQLite是练习使用R中的数据库的最简单方法,因为程序包本身包含SQLite,无需任何外部软件。