
面试
文章平均质量分 70
nayun123
没有玩不转的数据
展开
-
mysql面试之ORM
先回顾下之前操作数据库的方式,用的是jdbc连接数据库,(操作java代码来操作数据库)jdbc就是一个接口,用它可以来访问数据库,操作数据库。jbbc操作mysql数据库步骤:因为用statement有sql注入的危险,后来使用的是preparedStatement。详情自行复习。jdbc如果有大量的连接怎么办,每次连接都要向数据库要求一个connection,这样会造成数据库的很多系统资源,甚至会导致系统崩溃,后来就有了连接池来解决这个问题。数据库连接池的基本思想就是为数据库连接建立原创 2021-07-27 10:29:03 · 168 阅读 · 0 评论 -
数据工程师面试常见题目汇总
1、为什么UNIONALL比UNION快? 答:因为在使用UNION的时候,需要删除重复的记录,但是使用UNION ALL的时候不用删除。所以如果在知道需要UNION的查询不可能出现重复数据的时候,一定要使用UNIONALL。2、什么是唯一索引? 答:唯一索引可以确保索引列不包含重复的值。在多列唯一索引的情况下,该索引可以确保索引列中每个值组合都是唯一的。聚集索引和非聚集索引都可以是唯一的。因此,只要列中的数据是唯一的,就可以在同一个表上创建一个唯一的聚集索引和多个...原创 2021-07-22 10:12:48 · 6189 阅读 · 1 评论 -
橙心优选-数据仓库高级工程师面试
自我介绍正常介绍就好。报下大名,经历公司与参与项目,负责事项与业绩产出。思想和方法论数据仓库理解:架构、分层 数据仓库理解:主题域、好处 范式建模和维度建模区别,混合使用 场景举例 两种建模的解释和理解 区别 雪花模型 星型模型 解释理解 实体建模和维度建模区别 ER模型图理解解释 模型会随着业务进行迭代优化手段 拉链表理解解释 场景举例,全量拉链vs增量拉链 数据质量如何保证的 讲一下数据治理 如何做元数据管理,实践 怎么理解数据中台与OneData思想Hive...原创 2021-07-16 10:26:29 · 359 阅读 · 0 评论 -
MySQL 元数据
所谓元数据,就是表示数据本身或关系的数据,这些数据会有点奇怪,一般来说,只要不是我们存储到数据库里的数据,大多都可以理解为元数据。描述数据库的任何数据—作为数据库内容的对立面—是元数据。因此,列名、数据库名、用户名、版本名以及从SHOW语句得到的结果中的大部分字符串是元数据。还包括INFORMATION_SCHEMA数据库中的表中的内容,因为定义的那些表存储关于数据库对象的信息。获取查询语句影响的记录数PERL 实例在 DBI 脚本中, 语句影响的记录数通过函数 do( ) 或 execut原创 2021-07-12 10:15:35 · 212 阅读 · 1 评论 -
sql面试:sql中的行转列和列转行
SQL是IT行业很多岗位都要求具备的一项能力,对于数据岗位而言更是如此,甚至说扎实的SQL基础也往往是入职这些岗位的必备技能。而在SQL面试中,一道出镜频率很高的题目就是行转列和列转行的问题,可以说这也是一道经典的SQL题目,本文就这一问题做以介绍分享。给定如下模拟数据集,这也是SQL领域经典的学生成绩表问题。两张期望的数据表分别如下:1)长表:2)宽表:考察的问题就是通过SQL语句实现在这两种形态间转换,其中长表转为宽表即行转列,宽表转为长表即列转行。01 行转列:sum+i.原创 2021-07-09 10:26:05 · 355 阅读 · 1 评论 -
SQL面试:如何快速定位消耗CPU最高的sql语句
如何快速定位消耗 CPU 最高的 sql 语句?看看下面的介绍。概述如果是Oracle数据库我们可以很容易通过sql来定位到当前数据库中哪些消耗CPU高的语句,而mysql数据库可以怎么定位呢?这里用一个简单例子说明下…主要是了解如何定位的思路,具体看官网介绍..参考:https://www.percona.com/blog/2020/04/23/a-simple-approach-to-troubleshooting-high-cpu-in-mysql/主要意思是针对定位CPU的.原创 2021-07-02 10:18:50 · 210 阅读 · 1 评论 -
【数据库教程】MySQL 临时表
当工作在非常大的表上时,你可能偶尔需要运行很多查询获得一个大量数据的小的子集,不是对整个表运行这些查询,而是让MySQL每次找出所需的少数记录,将记录选择到一个临时表可能更快些,然后在这些表运行查询临时表只在当前连接可见,当关闭连接时,Mysql会自动删除表并释放所有空间。如果你使用PHP脚本来创建MySQL临时表,那每当PHP脚本执行完成后,该临时表也会自动销毁。实例以下展示了使用MySQL 临时表的简单实例,以下的SQL代码可以适用于PHP脚本的mysql_query()函数。mysq转载 2021-07-01 10:35:20 · 155 阅读 · 1 评论 -
数据科学家V.S数据分析师面试全对比
Medium网站上有很多用户都在找数据科学家或数据分析师的职位,所以他们对这两种职位的面试过程都很感兴趣。树懒君来就这个问题说一些自己的看法。一、数据科学家面试数据科学家们有望在自己的公司实现人工流程的自动化。通过使用sklearn和TensorFlow等库里的机器学习包,他们可以提取数据、清理数据、训练和评估模型,并为终端用户提出建议或预测。在这一过程中,一部分侧重于编程和算法,而另一部分侧重于软技能,比如开发商务问题、向终端用户解释结果等。你还会用到jupiter Notebook之类的工具,以转载 2021-06-30 09:51:28 · 181 阅读 · 0 评论 -
mysql查看版本的方法
在日常项目开发过程中,我们经常要连接自己的数据库,此时不知道数据库的版本是万万不可的。今天小树懒来给大家总结一下查看mysql版本的方法。MySQL查看版本的方法主要有以下四种方法1:没有连接到MySQL终端下直接使用mysql命令。打开cmd,切换至 MySQL的bin目录,运行以下命令:[root@localhost lib]# mysql -Vmysql Ver 15.1 Distrib 5.5.47-MariaDB, for Linux (x86_64) using readl原创 2021-06-29 08:31:28 · 89059 阅读 · 1 评论 -
【数据库教程】MySQL 索引
在MySQL的性能优化中,索引是非常重要的一块,好的索引逻辑可以大大提高MySQL的效率。正如google、百度一样,索引也是期数据查询中重要的一个因素。索引分单列索引和组合索引。单列索引,即一个索引只包含单个列,一个表可以有多个单列索引,但这不是组合索引。组合索引,即一个索引包含多个列。创建索引时,你需要确保该索引是应用在 SQL 查询语句的条件(一般作为 WHERE 子句的条件)。实际上,索引也是一张表,该表保存了主键与索引字段,并指向实体表的记录。上面都在说使用索引的好处,但过多的使用转载 2021-06-28 10:50:22 · 186 阅读 · 1 评论 -
美团面试题:MySql批量插入时,如何不插入重复的数据?
业务很简单:需要批量插入一些数据,数据来源可能是其他数据库的表,也可能是一个外部excel的导入那么问题来了,是不是每次插入之前都要查一遍,看看重不重复,在代码里筛选一下数据,重复的就过滤掉呢?向大数据数据库中插入值时,还要判断插入是否重复,然后插入。如何提高效率看来这个问题不止我一个人苦恼过。解决的办法有很多种,不同的场景解决方案也不一样,数据量很小的情况下,怎么搞都行,但是数据量很大的时候,这就不是一个简单的问题了。几百万的数据,不可能查出来,做去重处理说一下我Google到的解决方转载 2021-06-25 09:38:45 · 164 阅读 · 1 评论 -
MySQL事务处理特性的实现原理
事务这个词来自于英语中的transactional这个词的翻译,这个词的含义更多的是指 “交易”。在数据库系统或者软件系统中我们通常 称 transactional 为事务。数据库事务的四个特性 ACID:分别是 原子性、一致性、隔离性、持久性。数据库事务的这四大特性来源于 ISO标准的 ISO/IEC 10026-1:1992/COR 1:1996,它定义了事务需要具备以上四个特性。那么在InnoDB中是如何实现这些特征的呢?下面内容我们讨论 MySQL (下指InnoDB引擎)对事务特性的支持是怎么原创 2021-06-24 15:46:01 · 163 阅读 · 1 评论 -
「数据库教程」MySQL 事务
MySQL 事务主要用于处理操作量大,复杂度高的数据。比如说,在人员管理系统中,你删除一个人员,你既需要删除人员的基本资料,也要删除和该人员相关的信息,如信箱,文章等等,这样,这些数据库操作语句就构成一个事务!在 MySQL 中只有使用了 Innodb 数据库引擎的数据库或表才支持事务。事务处理可以用来维护数据库的完整性,保证成批的 SQL 语句要么全部执行,要么全部不执行。事务用来管理 insert,update,delete 语句事务必须满足的4个条件(ACID):原子性:一个事务(t转载 2021-06-23 10:37:05 · 188 阅读 · 1 评论 -
MySQL面试题:日志录入格式
接上篇《两道常见的MySQL面试题》,今天小树懒来给大家讲另一道面试题,关于MySQL binlog的几种日志录入格式。一、MySQL BinLog日志的录入格式以及区别Statement:将修改数据的所有sql都记录在binlog中。好处:无需记录每行的变化,减少了binlog日志数量,节省了IO,提高了性能。(相对于row可以节省多少性能和日志数量,这取决于SQL应用程序的情况,通常同一记录修改或插入row格式所产生的日志数量比Statement所产生的日志数量少,但考虑到如果有条件的upd原创 2021-06-22 16:08:47 · 290 阅读 · 1 评论 -
MySQL 单机双机主从同步复制备份配置
双机主从备份数据库版本:MySQL 5.6.27操作系统 :CentOS 7.4Linux 环境下 MySQL 的配置文件的位置是在/etc/my.cnfMaster 的配置如下:log-bin=mysql-binserver-id=1 :用于标识唯一的数据库binlog-ignore-db=information_schemabinlog-ignore-db=performance_schemabinlog-ignore-db=sysbinlog-ignore-db=m.原创 2021-06-21 10:57:48 · 254 阅读 · 2 评论 -
【数据库教程】MySQL 正则表达式
在前面的章节我们已经了解到MySQL可以通过 LIKE …% 来进行模糊匹配。MySQL 同样也支持其他正则表达式的匹配, MySQL中使用 REGEXP 操作符来进行正则表达式匹配。如果您了解PHP或Perl,那么操作起来就非常简单,因为MySQL的正则表达式匹配与这些脚本的类似。下表中的正则模式可应用于 REGEXP 操作符中。...原创 2021-06-17 14:12:59 · 152 阅读 · 1 评论 -
两道常见的MySQL面试题
数据库相关的题目频频出现在各大公司的技术岗位面试中,而且内容变化多端,让面试的小伙伴措手不及,但是问法再多,却万变不离其宗,掌握好内容的本质,才是最重要的。今天小树懒来给大家总结了两道最近被问到的MySQL面试题,如果有更好的理解,可以留言补充哦。一、MySQL查询字段是否要区分大小写?答案是不区分的那么该如何解决需要区分英文大小写的场景1.设置“COLLATE”属性值为“utf8_bin”或者“utf8_gerneral_cs”,utf8_bin表示二进制比较,同时也支持区分大小写;在M.原创 2021-06-16 14:41:14 · 111 阅读 · 1 评论