数仓相关常考面试题 5、什么是事实表和维度表。矩阵的行是一个个业务过程,矩阵的列是一个个的维度,行列的交点表示业务过程与维度的关系。事务型事实表可用于分析与各业务过程相关的各项统计指标,由于其保存了最细粒度的记录,可以提供最大限度的灵活性,可以支持无法预期的各种细节层次的统计需求。例如 用户信息会发生变化,但是每天变化的比例不高的维度,因此如果数据量有一定的规模,按照每日全量的的方式保存效率很低。所谓的粒度:一条记录所表达的含义,如果是笼统的,粒度就比较粗,如果是详细的,粒度比较细。
复习RDD & 讲下不常见的算子的使用 在 Spark 的 parallelize 方法中,如果给定的集合是一个开区间( [1, 100)),则生成的 RDD 只包含起始元素(1)但不包含结束元素( 100)具体来说,它将传入的函数应用于每个键值对的值,然后返回一个新的 RDD 或 DataFrame,其中键保持不变,值经过函数转换。在 Spark 中,mapValues 可以用来对 RDD 或 DataFrame 的每个键值对的值进行操作,而不改变键的值。算子:也可以看做是方法,运算符,但是人家的数据是分布式的,计算也是分布式的。
Python 大数据常考知识点汇总(不看答案绝对不会系列) MySQL 中的存储引擎层主要负责数据的写入和读取,与底层的文件进行交互。MySQL 中的存储引擎是插件式的,它根据MySQL AB公司提供的文件访问层的一个抽象接口来定义一种文件访问机制,这种访问机制就叫做存储引擎。服务器中的查询执行引擎通过相关的接口与存储引擎进行通信,同时,接口屏蔽了不同存储引擎之间的差异。
kafka超高频面试题(2) 生产者将数据发送给kafka,kafka将数据交给Linux内核,Linux内核将数据放入自身操作系统的页缓存中,然后到一定值写入磁盘,假如消费者过来消费,直接从页缓存中,通过网卡发送给消费者,根本就没有去kafka的业务系统中获取数据,所以速度比较快。压缩后的offset可能是不连续的,比如上图中没有6,当从这些offset消费消息时,将会拿到比这个offset大的offset对应的消息,实际上会拿到offset为7的消息,并从这个位置开始消费。形成一个消费者组的条件,使所有消费者的groupid相同。
Kafka 高频面试题(1) 自定义分区策略 跟DefaultPartitioner实现方式一样。spring.kafka.producer.properties.partitioner.class=配置类全路径@Component@Override}else {@Override@Override。
Spark相关知识(2) 1、MR不支持DAG【有向无环图】,计算过程是固定,一个MR 只有1个Map和1个Reduce构成。一个Map和Reduce是一个过程,和另一个Map和Reduce是不一样的。从落地到磁盘的那一刻,上一个过程已经结束了,下一个过程和上一个过程没有关系了。2、MR是一个基于磁盘的计算框架,读写效率比较低3、MR的Task计算是进程级别的,每次运行一个Task都需要启动一个进程,然后运行结束还是释放进程,比较慢。【一个进程可以包含多个线程,比如qq是一个进程,发消息,传文件是一个个线程】
关于调用pyspark 中的jieba模块 出现的No module named ‘jieba‘问题 后来反复测试 反复在黑窗口将此模块安装卸载,甚至更换啦python interpreter 也还是不行。这就很奇怪,明明是在一个文件下的demo啊.后来我试着把 黑窗口terminal 中的base环境退出。.在外部环境也安装了"jieba" pip install jieba 模块后.果然是可以正常执行了。有意思的是 这个不包含环境路径的测试程序是没有问题的。进入到外部 看看有没有安装 jieba模块.结果是。
手动关闭 pycharm 中的 auotomatic upload. 使用在win 本机的环境下的 pycharm 运行spark程序时 一直提示 Auotomatic upload的问题 一般情况下,Auotomatic upload 是我们想在服务器集群上跑spark任务时 运行任务时自动上传代码的到远程服务器,但是我们把interpreter改为win的环境下时 运行任务 auotomatic upload自动上传仍在执行只不过会上传失败.如果你的也是一直报进度条,需要手动关闭。
将mysql数据导入使用sqoop导入到hive出现的问题以及解决方案 第一个问题 :提示Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hive.conf.HiveConf。又考虑是jar包的问题 把hive_lib下的 hive-common-3.1.2.jar拷贝到sqoop_lib 问题解决。解决方案: 将hive中的一个jar包(commons-lang-2.6.jar)导入到sqoop中。应该是环境问题 先是在sqoop的中 sqoop-env.sh加入。
使用Kettle将mysql数据导入到Hive 遇到的: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.... 024/09/11 23:10:06 - 表输出.0 - Error while processing statement: FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.StatsTask。这两天使用kettle将mysql中的数据导入到hive中遇到的问题。建议运行好任务后 将数据改回来 以免造成其他的程序错误。关于这个问题查阅了大量的资料 普遍的解决方案是。
Kafka 基础理论概述 假如有两个服务 A 和 B。B 服务每秒只能处理 100 个消息,但 A 服务却每秒发出 200 个消息,B 服务哪里顶得住,分分钟被压垮。那么问题就来了,有没有办法让 B 在不被压垮的同时,还能处理掉 A 的消息?当然有,
DolphinScheduler (海豚调度器)单机模式(稳定版) 安装部署 全流程 以及错误避坑 采用分布式无中心设计理念,MasterServer主要负责 DAG 任务切分、任务提交、任务监控,并同时监听其它MasterServer和WorkerServer的健康状态。也采用分布式无中心设计理念,WorkerServer主要负责任务的执行和提供日志服务。,系统中的MasterServer和WorkerServer节点都通过ZooKeeper来进行集群管理和容错。,提供告警相关服务。,主要负责处理前端UI层的请求。系统的前端页面,提供系统的各种可视化操作界面。
大数据常用工具的/datax/azkaban/sqoop/flume细碎知识点 两个进程 web进程、exec进程 http://bigdata01:9527/index.html。hadoop 、hive、sqoop、flume工具、storm、Oozie等。2、datax-web这个服务,启动后有几个进程?如何启动,访问路径是什么?5、sqoop是一个什么工具,常见的命令有哪些?7、flume是一个什么工具?1、比较好用的datax的图形化界面推荐,这个工具有什么用处?3、azkaban是一个什么工具,类似的工具你还听过哪个?6、sqoop和datax各有什么优缺点?
DolphinScheduler 在web端上传文件失败的问题Internal Server Error: upload resource: datax.py file: datax.py faile 这意味着文件所有者、文件所属组和其他用户都将获得读(4)、写(2)和执行(1)的权限(7 = 4 + 2 + 1)。文件最终是要上传到HDFS端 端口也是没问题的。将原来 hdfs dfs -chmod 777 / 改为。及其下所有文件和目录的权限更改为。
创建sqoop job 实现增量倒入 遇见的 Cannot create job jjoobb: it already exists(已存在)的问题 注意:sqoop job的 执行命令都要以 sqoop job 为前缀。只需删除即可: sqoop job --delete jjoobb。这是因为之前曾创建过 jjoobb的 sqoop job。sqoop job --create jod的名字。sqoop job --delete job的名字。sqoop job --exec job的名字。再次创建 然后执行sqoop job 命令。
Spool +File + HDFS 用flume将本地文件夹中所有数据抽取到hdfs问题解决 背景,第一次抽取,本地文件夹下有许多细小文件,只抽取了4个到hdfs,再次抽取就报错。还是不行,想到 应该是只能抽取一次,抽取过后的文件都变成了COMPLETED。于是将原来的文件夹 又拷了一份到另一个文件夹下,并修改了路径。考虑是编码问题 于是加了一行。
hive导入数据报错Error while compiling statement: FAILED: RuntimeException java.io.FileNotFoundException: / 请注意,修改系统配置文件可能需要管理员权限。如果您无法修改系统配置文件,或者修改后问题仍然存在,建议联系系统管理员或技术支持人员进行进一步的解决方案。如果返回的值较低(比如默认的1024),您可以通过修改系统配置文件来提高限制。具体的方法会因操作系统的不同而有所差异。这个错误是由于打开的文件数量过多导致的。可能是由于系统资源不足或者配置文件中定义的文件打开数量超过了系统限制。检查系统的文件打开限制。如果您使用的是Mac OS X系统,可以编辑。如果您使用的是Linux系统,可以编辑。