目录

******************************************数据仓库相关问题******************************************************

1.建模方式是什么,有哪些

2.星型模型和雪花模型各自的优缺点是什么

3.维度建模的四个步骤是什么

3.数据仓库里 实体表/维表/事务表的概念,事务表的类型

4.数据仓库里数据规范有哪些

5.数据质量是怎么做的

6.平时了解公司业务吗????

7.捡一个最新的项目整个讲讲,输入输出是什么,怎么做的(恒河水)

9.为什么要用数据仓库?数据仓库和数据库的区别和联系是什么?

10.整个数仓的建设流程是什么样的?

******************************************Spark/Hive相关问题******************************************************

1.如何去调节spark里数据并行度和资源并行度的均衡   -----  动态executor设置

2.日常做过的性能优化的例子

https://blog.csdn.net/u012102306/article/details/51637366/

5.spark为什么快

6.block和partition有什么区别和联系

7.怎么去调优HQL?explain的话,关注什么信息

8.如何去调节spark里数据并行度和资源并行度的均衡   -----  动态executor设置

9.sparksql和HQL的区别是什么?

10.sparksql的执行流程是什么?HQL的执行流程是什么?这俩有什么不同?

******************************************SQL相关问题************************************************************

2.join之后再写where比较好还是先where再写join连接比较好?

3.什么样的情况下会产生笛卡尔积?

4.order by a,b desc

5.hive的行转列函数 和 列转行 函数

6.HQL实现累计求和

7.SQL 找出 有多少对互相关注的  uid,uid_uu 求互相关注的人数?

8.hive中 order by 需要全局排序,不论如何配置有且只会有一个reduce

9.打点停留30MIN的人

******************************************传统数据库相关问题************************************************************

1.什么语句会用到Oracle临时表空间

2.postgresql的Vccume freeze

3.传统数据库SQL优化思路4.传统数据库索引选择思路和优化思路5.Pg的索引膨胀能讲讲吗?6.Datax的channel能讲讲吗?


******************************************数据仓库相关问题******************************************************

Bill Inmon 在 "Build the Data Warehouse" 一书中所提出了数据仓库的定义—— 数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented)、集成的(Integrated)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,用于支持管理决策(Decision Making Support)。

1.建模方式是什么,有哪些

常见的有 范式建模法、维度建模法、(实体建模法)等。

  • 范式建模法

    • 目前关系数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、Boyce-Codd范式(BCNF)、第四范式(4NF)和第五范式(5NF)。
    • 在数据仓库的模型设计中,一般采用第三范式。
    • 一个符合第三范式的关系必须具有以下三个条件 :
      • 每个属性值唯一,不具有多义性 ;
      • 每个非主属性必须完全依赖于整个主键,而非主键的一部分 ;
      • 每个非主属性不能依赖于其他关系中的属性,因为这样的话,这种属性应该归到其他关系中去。
  • 维度建模法
    • 最简单的描述就是按照事实表、维度表来构建数据仓库、数据集市。
    • 维度是描述事实的角度,如日期、客户、供应商等,
    • 事实是要度量的指标,如客户数、销售额等。
    • 星型模型:我们在进行维度建模的时候会建一张事实表,这个事实表就是星型模型的中心,然后会有一堆维度表,这些维度表就是向外发散的星星。

2.星型模型和雪花模型各自的优缺点是什么

  • 星型模型:星型架构是一种非正规化的结构,多维数据集的每一个维度都直接与事实表相连接,不存在渐变维度,所以数据有一定的冗余。(我们在进行维度建模的时候会建一张事实表,这个事实表就是星型模型的中心,然后会有一堆维度表,这些维度表就是向外发散的星星。)
  • 雪花模型:当有一个或多个维表没有直接连接到事实表上,而是通过其他维表连接到事实表上时,其图解就像多个雪花连接在一起,故称雪花模型。雪花模型是对星型模型的扩展。

  • 数据存储方面:星型架构有数据冗余,反范式化,雪花架构没有数据冗余。
  • 雪花模型在ETL操作,加载数据集市的数据是会比较复杂,因为维度表之间还存在关联模型,星型就相对简单很多。
  • 雪花模型在维度表、事实表之间的连接很多,因此性能方面会比较低,而星型模型的性能就会比较高。
  • 雪花模型更加适合维度分析的场景,星型模型更加适合指标分析的场景。

感悟:

雪花模型在应用系统的表设计(关系型数据库)中涉及的会比较多,分析系统偏向于(大数据系统的数据库hadoop)星型模型

雪花模型的耦合度比较高

3.维度建模的四个步骤是什么

1.选择业务过程

业务过程是组织完成的操作型活动。(后面我们还会知道,事实表不仅仅可以描述业务操作,还可以是定义某些人参与了某些活动、某些人在某些公司工作过这类维度之间的关联关系,称无事实的事实表)

2.声明粒度

1)粒度用来确定某事实表中的每行表示什么,等价于物理表中的主键。比如超市销售事实表每行记录一个购物单中的一种产品,对应主键(购物单号,产品);

2)原子粒度是最低级别的粒度;

3)针对不同事实表粒度,要建立不同的事实表。

3.确认维度

围绕业务过程的5W1H:who,when,where,what,why,how

4.确认事实

1)对业务过程事件的度量,与申明粒度保持一致;

2)常用于计算、汇总

3.数据仓库里 实体表/维表/事务表的概念,事务表的类型

实体表,维度表,事务型快照事实表,周期型快照事实表、累积型事实表实体表,维度表,事务型快照事实表,周期型快照事实表、累积型事实表。

订单表(order_info)(周期型事实表)         订单详情表(order_detail)(事务型事实表)

支付流水表(事务型实体表)

商品表(实体表)                                                用户表(实体表)

商品一级分类表(维度表)             商品二级分类表(维度表)                商品三级分类表(维度表)

事实表 

事实表是包含大量数据值的一种结构。事实数据表可能代表某次银行交易,包含一个顾客的来访次数,并且这些数字信息可以汇总,以提供给有关单位作为历史的数据。

每个数据仓库都包含一个或者多个事实数据表。事实数据表只能包含数字度量字段和使事实表与维度表中对应项的相关索引字段.,该索引包含作为外键的所有相关性维度表的主键。

事实数据表中的“度量值”有两中:一种是可以累计的度量值,另一种是非累计的度量值。用户可以通过累计度量值获得汇总信息。

维度表

用来描述事实表的某个重要方面,维度表中包含事实表中事实记录的特性:有些特性提供描述性信息,有些特性指定如何汇总事实数据表数据,以便为分析者提供有用的信息,维度表包含帮助汇总数据的特性的层次结构

缓慢变化维:在实际情况下,维度的属性并不是静态的,它会随着时间的流失发生缓慢的变化。

处理方法: 1新信息直接覆盖旧信息,2,保存多条记录,并添加字段加以区分(用y,n;0,1,2或用时间来区别新旧记录)

3.保存多条记录,并添加字段加以区分4.另外建表保存历史记录.5混合模式

退化维

般来说事实表中的外键都对应一个维表,维的信息主要存放在维表中。但是退化维仅仅是事实表中的一列,这个维的相关信息都在这一列中,没有维表与之相关联。比如:发票号,序列号等等。 
那么退化维有什么作用呢? 
1、退化维具有普通维的各种操作,比如:上卷,切片,切块等

(上卷汇总,下钻明细;切片,切块:对二维数据进行切片,三维数据进行切块,,可得到所需要的数据) 
2、如果存在退化维,那么在ETL的过程将会变得容易。 
3、它可以让group by等操作变得更快

4.数据仓库里数据规范有哪些

5.数据质量是怎么做的

数据质量监控工具-Apache Griffin
https://blog.csdn.net/An342647823/article/details/86543432

精确度:度量数据是否与指定的目标值匹配,如金额的校验,校验成功的记录与总记录数的比值。
完整性:度量数据是否缺失,包括记录数缺失、字段缺失,属性缺失。
及时性:度量数据达到指定目标的时效性。
唯一性:度量数据记录是否重复,属性是否重复;常见度量为hive表主键值是否重复。
有效性:度量数据是否符合约定的类型、格式和数据范围等规则。
一致性:度量数据是否符合业务逻辑,针对记录间的逻辑的校验,如:pv一定是大于uv的,订单金额加上各种优惠之后的价格一定是大于等于0的。

建立规则库,定时运行调用规则,查看告警

6.平时了解公司业务吗????

7.捡一个最新的项目整个讲讲,输入输出是什么,怎么做的(恒河水)

ADS层 TA_FTTH_FAULT_ANAL_D  业务故障处理情况日报

需要 dws层的

TS_WID_SUBS_INFO_D 订户基础信息日表  for  CIRCLE_CD,CIRCLE_NAME,SSA_CD,SSA_NAME,FTTH总连接数

和 TS_SRV_TT_INFO_D   投诉故障单汇总宽表日表

for  总提出故障数,总登记投诉数,总故障数,ROT误报数,当天故障处理数,当天故障处理率,SUB,OFF环节故障处理数,ID环节故障处理数,OD环节故障处理数,CCNA环节故障处理数,总故障处理数,等待处理0天内故障数,等待处理1天内故障数,等待处理2-3天内故障数,等待处理4-7天内故障数,等待处理8-15天内故障数,等待处理16-30天内故障数,总等待处理故障数,

TS_SRV_TT_INFO_D   投诉故障单汇总宽表日表

需要 dwd层的  TD_SRV_CLEARED_INFO_D   故障单处理情况明细日表

是对故障情况的打标记录,DWS是对它的汇总

比如DWS层的 TS_WID_SUBS_INFO_D   订户基础信息宽表日表

需要 dwd层的

TD_PRD_SUBS_INFO_D                订户基础信息日表

TD_PRD_BIND_RELA_D            订户绑定关系明细日表 for  EXT_ACC_NBR_CNT分机号码数量

TD_EVT_CHG_INFO_D                   订户信息变更明细日表 for "是否变更套餐"

TD_PRD_OFFER_INST_D              Offer实例日表   for 停机保号生效时间,停机保号失效时间,停机保号状态,停机保号状态日期

TD_SRV_INSTALL_INFO_D            安装信息明细日表 for OSS侧施工安装时间,OSS侧施工完成时间,安装地址,设备获得方式,设备是否回收,Modem设备类型(光猫、铜猫),设备的型号,设备序列号,Piller设备型号,订户发展的岗位信息,订户发展的岗位信息,订户发展的岗位信息,订户发展的岗位信息,订户发展的岗位信息,订户发展的岗位信息,工程师工号,工程师名称,安装师傅工号,安装师傅名称,安装师傅工作组,销售主管工号,销售主管名称,销售经理工号,销售经理名称

TD_PRD_ADD_USAGE_D               当日累计使用指标日表  for 是否当日使用活跃,订户沉默天数

8.是否根据需求去建过模型?这项工作的背景是什么?(MCCM建模过程和如何去确定建模方法和整个数据仓库设计模型的步骤)

9.为什么要用数据仓库?数据仓库和数据库的区别和联系是什么?

1.数据是面向事务处的,数据是由日常的业务产生的,常更新;数据仓库是面向主题的,数据来源于数据库或文件,经过一定的规则转换得到,用来分析的。

2.数据库一般是用来存储当前交易数据,数据仓库存储一般存储的是历史数据。

3.数据库的设计一般是符合三范式的,有最大的精确度和最小的冗余度,有利于数据的插入; .数据仓库的设计一般是星型的,有利于查询。

10.整个数仓的建设流程是什么样的?

一、 确定主题

即确定数据分析或前端展现的主题(例:某年某月某地区的啤酒销售情况)。主题要体现出某一方面的各分析角度(维度)和统计数值型数据(量度)之间的关系,确定主题时要综合考虑.

二、 确定量度

确定主题后,需要考虑分析的技术指标(例:年销售额等等)。它们一般为数据值型数据,其中有些度量值不可以汇总;些可以汇总起来,以便为分析者提供有用的信息。量度是要统计的指标,必须事先选择恰当,基于不同的量度可以进行复杂关键性指标(KPI)的设计和计算。

三、 确定事实数据粒度

确定量度之后,需要考虑该量度的汇总情况和不同维度下量度的聚合情况.例如在业务系统中数据最小记录到秒,而在将来分析需求中,时间只要精确到天就可以了,在ETL处理过程中,按天来汇总数据,些时数据仓库中量度的粒度就是”天”。如果不能确认将来的分析需求中是否要精确的秒,那么,我们要遵循”最小粒度原则”,在数据仓库中的事实表中保留每一秒的数据,从而在后续建立多维分析模型(CUBE)的时候,会对数据提前进行汇总,保障产生分析结果的效率。

四、 确定维度

维度是分析的各个角度.例:我们希望按照时间,或者按照地区,或者按照产品进行分析。那么这里的时间,地区,产品就是相应的维度。基于不同的维度,可以看到各个量度汇总的情况,也可以基于所有的维度进行交叉分析。

维度的层次(Hierarchy)和级别(Level)。例:在时间维度上,按照”度-季度-月”形成了一个层次,其中”年” ,”季度” ,”月”成为了这个层次的3个级别。我们可以将“产品大类-产品子类-产品”划为一个层次,其中包含“产品大类”、“产品子类”、“产品”三个级别。

我们可以将3个级别设置成一张数据表中的3个字段,比如时间维度;我们也可以使用三张表,分别保存产品大类,产品子类,产品三部分数据,比如产品维度。

建立维度表时要充分使用代理键.代理键是数据值型的ID号码(每张表的第一个字段),它唯一标识了第一维度成员。在聚合时,数值型字段的匹配和比较,join效率高。同时代理键在缓慢变化维中,起到了对新数据与历史数据的标识作用。

五、 创建事实表

在确定好事实数据和维度后,将考虑加载事实表。业务系统的的一笔笔生产,交易记录就是将要建立的事实表的原始数据.

我们的做法是将原始表与维度表进行关联,生成事实表。关联时有为空的数据时(数据源脏),需要使用外连接,连接后将各维度的代理键取出放于事实表中,事实表除了各维度代理键外,还有各度量数据,不应该存在描述性信息。

事实表中的记录条数据都比较多,要为其设置复合主键各蛇引,以实现数据的完整性和基于数据仓库的查询性能优化。

******************************************Spark/Hive相关问题******************************************************

1.如何去调节spark里数据并行度和资源并行度的均衡   -----  动态executor设置

数据并行度是资源并行度的2-3倍

2.日常做过的性能优化的例子

Spark性能优化:资源调优篇_spark 资源配置 优化shuffle性能_铭霏的博客-CSDN博客

好在有Spark的存在!我们只要把数据计算程序交给Spark,它会机智地进行数据切分、算法复制、分布执行、结果合并。

好在有Spark的存在!我们只要把数据计算程序交给Spark,它会机智地进行数据切分、算法复制、分布执行、结果合并。

executor-memory  20G

num-executors    20

executor-cores    4 那么num-executors * executor-cores不要超过队列总CPU core的1/3~1/2左右比较合适,也是避免影响其他同学的作业运行。

driver-memory    2G

spark.default.parallelism   200  设置每个stage的默认task数量。这个参数极为重要,如果不设置可能会直接影响你的Spark作业性能。不去设置这个参数,那么此时就会导致Spark自己根据底层HDFS的block数量来设置task的数量,默认是一个HDFS block对应一个task。通常来说,Spark默认设置的数量是偏少的(比如就几十个task),如果task数量偏少的话,就会导致你前面设置好的Executor的参数都前功尽弃。设置该参数为num-executors * executor-cores的2~3倍较为合适,比如Executor的总CPU core数量为300个,那么设置1000个task是可以的

spark.storage.memoryFraction  用于设置RDD持久化数据在Executor内存中能占的比例,默认是0.6。也就是说,默认Executor 60%的内存,可以用来保存持久化的RDD数据。根据你选择的不同的持久化策略,如果内存不够时,可能数据就不会持久化,或者数据会写入磁盘。参数调优建议:如果Spark作业中,有较多的RDD持久化操作,该参数的值可以适当提高一些,保证持久化的数据能够容纳在内存中。避免内存不够缓存所有的数据,导致数据只能写入磁盘中,降低了性能。但是如果Spark作业中的shuffle类操作比较多,而持久化操作比较少,那么这个参数的值适当降低一些比较合适。

4.为什么要用spark?它解决了行业什么样的瓶颈

好在有Spark的存在!我们只要把数据计算程序交给Spark,它会机智地进行数据切分、算法复制、分布执行、结果合并。

Spark 屏蔽了分布并行计算的细节,让我们可以快速开发分布并行应用!

mapreduce和spark都是分布式计算框架,相对于传统分布式计算来说,两者给程序员提供了方便的分布式计算环境,我们不需要考虑底层怎么并行计算,怎么协调同步,怎么容错,我们只需考虑我们的业务就可以完成分布式计算。
而两者的侧重点也不同,mr适合批处理,对时效性要求不高的离线计算等等,因为它在计算的时候会将计算中间结果溢写到磁盘上,io消耗比较大,而spark是基于内存的计算框架,直接在内存中完成计算,从这点来说它的计算速度是很好的,spark有很多模块比如实时计算,图计算,sparkSQL等等,从编程上来说如果用Scala会非常方便。

5.spark为什么快

  • 基于内存计算,减少低效的磁盘交互,消除了冗余的HDFS读写

    • Hadoop每次shuffle操作后,必须写到磁盘,而Spark在shuffle后不一定落盘,可以cache到内存中,以便迭代时使用。如果操作复杂,很多的shufle操作,那么Hadoop的读写IO时间会大大增加。
  • 容错机制 Leanage血缘关系,遇到宽依赖才划分stage。消除了冗余的MapReduce阶段
    • Hadoop的shuffle操作一定连着完整的MapReduce操作,冗余繁琐。而Spark基于RDD提供了丰富的算子操作,且reduce操作产生shuffle数据,可以缓存在内存中。
  • JVM的优化
    • Hadoop每次MapReduce操作,启动一个Task便会启动一次JVM,基于进程的操作。而Spark每次MapReduce操作是基于线程的,只在启动Executor是启动一次JVM,内存的Task操作是在线程复用的。

6.block和partition有什么区别和联系

7.怎么去调优HQL?explain的话,关注什么信息

8.如何去调节spark里数据并行度和资源并行度的均衡   -----  动态executor设置

9.sparksql和HQL的区别是什么?

sparksql需要sparkConext,HQL需要hiveContext。

sparksql的底层是翻译为RDD,HQL底层是翻译为 Mapreduce。

Spark支持sparksql也支持hql,Hive只支持HQL。

Sparksql的元数据可有可无,HQL的元数据必须存在,一般由mysql管理,开启metastore服务。

Spark SQL核心——Catalyst查询编译器,它将用户程序中的SQL/Dataset/DataFrame经过一系列操作,最终转化为Spark系统中执行的RDD。

10.sparksql的执行流程是什么?HQL的执行流程是什么?这俩有什么不同?

Hive是如何将SQL转化为MapReduce任务的,整个编译过程分为六个阶段:

Antlr定义SQL的语法规则,完成SQL词法,语法解析,将SQL转化为抽象语法树AST Tree
遍历AST Tree,抽象出查询的基本组成单元QueryBlock
遍历QueryBlock,翻译为执行操作树OperatorTree
逻辑层优化器进行OperatorTree变换,合并不必要的ReduceSinkOperator,减少shuffle数据量
遍历OperatorTree,翻译为MapReduce任务
物理层优化器进行MapReduce任务的变换,生成最终的执行计划
Sparksql执行流程:

SQL语句首先通过Parser模块被解析为语法树,此棵树称为Unresolved Logical Plan;

Unresolved Logical Plan通过Analyzer模块借助于Catalog中的表信息解析为Logical Plan(利用目录(Catalog)中的信息,对Parser中生成的树进行解析。Analyzer有一系列规则(Rule)组成,每个规则负责某项检查或者转换操作,如解析SQL中的表名、列名,同时判断它们是否存在。通过Analyzer,我们可以得到解析后的逻辑计划。);

此时,Optimizer再通过各种基于规则的优化策略进行深入优化,得到Optimized Logical Plan;

优化后的逻辑执行计划依然是逻辑的,并不能被Spark系统理解,此时需要在Planner阶段将此逻辑执行计划转换为物理执行计划Physical Plan。由一系列的策略(Strategy)组成,每个策略将某个逻辑算子转化成对应的物理执行算子,并最终变成RDD的具体操作。注意在转化过程中,一个逻辑算子可能对应多个物理算子的实现,如join可以实现成SortMergeJoin或者BroadcastHashJoin,这时候需要基于成本模型(Cost Model)来选择较优的算子。上面提到的基于成本的优化器在这个选择过程中也能起到关键的作用。

HQL和Sparksql的区别

Sql由SQLContext处理,HQL由HiveContext处理。二者使用不同的parser进行解析。

Spark SQL核心——Catalyst查询编译器;HQL 主要依靠开源语法分析器antrl实现解析。

在Hive源码中能看到一些.g后缀的文件,这些文件就是用于描述文法的,antrl将根据这些文件对输入进行词法语法分析生成抽象语法树(AST)。

无论Sql还是Hql,在经过解析后生成的AST都是相同的,后续的analyze,optimize和execute流程都是相同的。

******************************************SQL相关问题************************************************************

1.left join 后面加where条件 解析
过滤条件放在:
where后面:是先连接然生成临时查询结果,然后再筛选
on后面:先根据条件过滤筛选,再连 生成临时查询结果

2.join之后再写where比较好还是先where再写join连接比较好?

3.什么样的情况下会产生笛卡尔积?

连接查询时,当连接没有on条件时,会出现笛卡尔积(全部笛卡尔积)
当连接on条件是非唯一字段时,会出现局部笛卡尔积
当连接条件是唯一字段时,则不会出现笛卡尔积

4.order by a,b desc

是指先按照a升序,然后按照b降序的顺序输出结果

5.hive的行转列函数 和 列转行 函数

collect_set:合成数组
concat_ws:拆解数组
行转列:
select col1,col2,concat_ws(',',collect_set(col3))
from tmp_jiangzl_test 
group by col1,col2;
列转行:
select col1, col2, col5
from tmp_jiangzl_test a
lateral view explode(split(col3,','))  b AS col5

6.HQL实现累计求和

将表进行自连接,从上一步的结果中进行分组查询,分组的字段是a.username a.month,求月累计值: 将b.month <= a.month的所有b.salary求和即可
select A.username,A.month,max(A.count) ,sum(B.count)   
from   
(select username,month,sum(count) as count from t_accessgroup by username,month) A   
inner join   
(select username,month,sum(count) as count from t_access group by username,month) B  
on  
A.username=B.username  
where B.month <= A.month  
group by A.username,A.month  
order by A.username,A.month;

7.SQL 找出 有多少对互相关注的  uid,uid_uu 求互相关注的人数?

select count(1) from tst t1
inner join tst t2
on t1.uid = t2.uuid and t1.uuid = t2.uid;

------不用join的方法---------
select c1,c2 from(
select a c1,b c2 from table
union all 
select b c1,a c2 from table 
) t
group by c1,c2
having count(1) > 1

8.hive中 order by 需要全局排序,不论如何配置有且只会有一个reduce

9.打点停留30MIN的人

******************************************传统数据库相关问题************************************************************

1.什么语句会用到Oracle临时表空间

2.postgresql的Vccume freeze

3.传统数据库SQL优化思路
4.传统数据库索引选择思路和优化思路
5.Pg的索引膨胀能讲讲吗?
6.Datax的channel能讲讲吗?

数据仓库和数据库面试综合问题相关推荐

  1. [数据仓库]数据仓库和数据库的区别

    数据仓库和数据库 数据仓库是面向主题的.集成的.稳定的,反映历史变化数据集合,用于分析场景,支持管理决策过程等. 面向主题:在较高层次对企业的数据进行综合归并而进行的抽象概念.数据仓库都是基于某个明确 ...

  2. 走进大数据丨 数据仓库和数据库的区别

    一.数据仓库 1. 什么是数据仓库? 数据仓库(Data Warehouse),可简写为DW或DWH,数据仓库,是为了企业所有级别的决策制定计划过程,提供所有类型数据类型的战略集合.它出于分析性报告和 ...

  3. 一文搞懂什么是数据仓库(Data Warehouse)数据仓库与数据库区别有哪些?什么是元数据?

    大家早上好,本人姓吴,如果觉得文章写得还行的话也可以叫我吴老师.欢迎大家跟我一起走进数据分析的世界,一起学习! 感兴趣的朋友可以关注我或者我的数据分析专栏,里面有许多优质的文章跟大家分享哦. 前期回顾 ...

  4. 数据库面试 - 分库分表

    数据库面试 - 分库分表 面试题 为什么要分库分表(设计高并发系统的时候,数据库层面该如何设计)?用过哪些分库分表中间件?不同的分库分表中间件都有什么优点和缺点?你们具体是如何对数据库如何进行垂直拆分 ...

  5. 数据库面试 - 如何设计才可以让系统从未分库分表动态切换到分库分表上?

    数据库面试 - 如何设计才可以让系统从未分库分表动态切换到分库分表上? 面试题 现在有一个未分库分表的系统,未来要分库分表,如何设计才可以让系统从未分库分表动态切换到分库分表上? 面试官心理分析 你看 ...

  6. 数据库面试 - 分库分表之后,id 主键如何处理?

    数据库面试 - 分库分表之后,id 主键如何处理? 面试题 分库分表之后,id 主键如何处理? 面试官心理分析 其实这是分库分表之后你必然要面对的一个问题,就是 id 咋生成?因为要是分成多个表之后, ...

  7. 数据库面试 - 如何设计可以动态扩容缩容的分库分表方案?

    数据库面试 - 如何设计可以动态扩容缩容的分库分表方案? 面试题 如何设计可以动态扩容缩容的分库分表方案? 面试官心理分析 对于分库分表来说,主要是面对以下问题: 选择一个数据库中间件,调研.学习.测 ...

  8. 缓存数据库面试 - redis 的线程模型是什么?为什么 redis 单线程却能支撑高并发?

    缓存数据库面试 - redis 的线程模型是什么?为什么 redis 单线程却能支撑高并发? 面试题 redis 和 memcached 有什么区别?redis 的线程模型是什么?为什么 redis ...

  9. android单选控件spinner与数据库结合综合实例

    本示例说明: 1.实现单选按钮与后台数据绑定,通过Id绑定. 2.实现显示时默认选中项控制. 3.实现修改后保存,根据id保存. 4.数据库处理使用AHibernate1.1,详见: http://b ...

最新文章

  1. Spring 下,关于动态数据源的事务问题的探讨
  2. GBDT和GNN结合,结果怎么样?
  3. Forefront Client Security部署及配置
  4. python用户注册(基于django)
  5. 哈佛的凌晨4点。。。
  6. autocad2014 第二次打开闪退_cad2014闪退的原因和解决方法
  7. 华为最新开源框架mindspore学习
  8. 关于selecteditem.value和selecteditem.text
  9. prompt set feedback set define的详解
  10. IE8中伪元素动态作用样式不重绘bug记录
  11. 程序竞赛中常用的C字符串函数
  12. springboot 2.0 Redis command timed out的解决
  13. SpringBoot整合MyBatis后台分页前端BootstrapTable添加删除查看编辑搜索数据(一)
  14. [android开发IDE]adt-bundle-windows-x86的一个bug:无法解析.rs文件--------rs_core.rsh file not found...
  15. vijos1053 用spfa判断是否存在负环
  16. MS coco数据集介绍及下载
  17. Brocade 光纤交换机配置命令
  18. js/typescript websocket gzip数据解压(亲测可用)
  19. 迁移学习 Transfer Learning(可能是目前最全的迁移学习资料库?)
  20. mysql双机热备份windows_window下使用mysql双机热备份

热门文章

  1. 歌 特 金 属 (Gothic Metal)
  2. MySQL汇总笔记(巨详细)
  3. 创基Type-C分线器用的就是新颖
  4. 如何使用PS制作一张白底一寸证件照?
  5. 教你怎么用59秒就能打动客户,想快速赚钱一定来
  6. react native报错:undefined Unable to resolve module 'Dimensions' from 'App.js
  7. 工业品MRO采购网站有哪些优势?一文带你读懂
  8. buff/cache内存占用过多
  9. 图形学笔记(十七)相机,棱镜 ——FOV、焦距、曝光、F-Stop、ISO、薄透镜公式、Circle of Confusion Size、景深、理想薄透镜光线追踪
  10. 线性代数之——对角化和伪逆