- 博客(24)
- 收藏
- 关注
原创 Qt报错:qt.qpa.plugin: Could not find the Qt platform plugin “windows“ in ““
1.安装pyside2pip install -U pyside2 -i https://pypi.doubanio.com/simple2.在环境变量中添加变量名:QT_QPA_PLATFORM_PLUGIN_PATH变量值:D:\Anaconda3\Lib\site-packages\PySide2\plugins3.注销重新登录windows系统4.打开相关编译器的cmdwin键+scd /d 你的exe所在目录windeployqt xxxxxxx.exe重新运行即可
2020-08-29 11:36:02 3739
转载 解决 Qt 对象跨线程调用问题
Qt有很多IO相关的类,比如说QTcpSocket、QFile,总的来说,在Qt的框架内使用,还是非常方便的。但是用过其他框架IO类的人,可能有一个很不习惯,就是Qt的所有IO类,都不推荐或者不可以跨线程操作,不然就会报错,比如说操作QTcpSocket跨线程调用write接口,就会报错:socket notifiers cannot be enabled from another thread要解决这个问题,直观的说就是不要跨线程操作,网上也有很多类似的说明。这也是有道理的,很多时候真的是设计问
2020-08-25 10:09:57 6387
原创 Kafka 基础入门
消息队列的两种模式(1)点对点模式(一对一,消费者主动拉取数据,消息收到后消息清除)消息生产者生产消息发送到Queue中,然后消息消费者从Queue中取出并且消费消息。消息被消费以后,queue中不再有存储,所以消息消费者不可能消费到已经被消费的消息。Queue支持存在多个消费者,但是对一个消息而言,只会有一个消费者可以消费。(2)发布/订阅模式(一对多,消费者消费数据之后不会清除消息)消息生产者(发布)将消息发布到topic中,同时有多个消息消费者(订阅)消费该消息。和点对点方式不同,发布到t
2020-08-24 10:57:40 149
原创 JAVA 操作 Kafka
IDEAPom文件<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache
2020-08-23 14:17:17 104
原创 集群分发脚本
scp(secure copy)安全拷贝(1)scp定义:scp可以实现服务器与服务器之间的数据拷贝。(from server1 to server2)(2)基本语法scp -r $pdir/$fname $user@hadoop$host:$pdir/$fname命令 递归 要拷贝的文件路径/名称 目的用户@主机:目的路径/名称注意:如果目标目录不存在,直接将源test放到opt目录下scp -r test/ root@hadoop
2020-08-21 11:32:55 276
原创 Hadoop HA 高可用
HA概述所谓HA(High Available),即高可用(7*24小时不中断服务)。实现高可用最关键的策略是消除单点故障。HA严格来说应该分成各个组件的HA机制:HDFS的HA和YARN的HA。Hadoop2.0之前,在HDFS集群中NameNode存在单点故障(SPOF)。NameNode主要在以下两个方面影响HDFS集群(1)NameNode机器发生意外,如宕机,集群将无法使用,直到管理员重启(2)NameNode机器需要升级,包括软件、硬件升级,此时集群也将无法使用HDFS HA功能
2020-08-20 10:43:11 194
原创 ZooKeeper 入门
特点数据结构把节点看做是一个目录应用场景提供的服务包括:统一命名服务、统一配置管理、统一集群管理、服务器节点动态上下线、软负载均衡等。本地安装部署1.安装JDK2.下载Zookeeper安装包,解压到指定目录下3.配置修改(1)将/opt/module/zookeeper-3.4.10/conf这个路径下的zoo_sample.cfg修改为zoo.cfgmv zoo_sample.cfg zoo.cfg(2)修改dataDirdataDir=/opt/module/zookee
2020-08-17 22:29:23 402
原创 Qt中使用MSVC编译器通过调用QProcess来执行python代码时This application failed to start because it could not find......
说明现在做的Qt项目(用C++写)中需要调用Python文件,所以通过QProcess来调用。之前是使用MinGW编译器编译程序的,通过QProcess来调用.py文件没问题。今天有特殊需要,要换成msvc2017编译器,在调用Python文件的时候提示:解决办法pip install PyQt5 -i https://pypi.tuna.tsinghua.edu.cn/simple/pip install pyqt5-tools -i https://pypi.tuna.tsinghua.e
2020-08-13 13:57:05 300
转载 Windows使用MSVC编译Mongodb C/C++ Driver
C语言版驱动https://www.cnblogs.com/music-liang/p/12779013.htmlC++语言版驱动https://www.cnblogs.com/music-liang/p/12780094.html
2020-08-12 17:19:06 224
原创 Windows使用MinGW编译Mongodb C/C++ Driver
准备工作1.下载mongo-c-driver,地址:https://github.com/mongodb/mongo-c-driver/releases。我选择的是1.15.3版本的。2.下载mongo-cxx-driver,地址: https://github.com/mongodb/mongo-cxx-driver/releases。我选择的是r3.5.0版本的。3.下载安装msys2,地址:msys2.github.io。选择x86_64 版本, 非 i686.4.进入msys2的安装目录
2020-08-12 17:11:29 837
原创 MapReduce - 计数器 与 数据清洗
计数器数据清洗一般是在map阶段,对输入的数据进行一些合法性检查。对于不合法的数据,在map函数中直接return,合法的才继续走下去。
2020-08-09 18:10:23 90
原创 MapReduce - Map Join 案例
数据基于https://blog.csdn.net/u012321968/article/details/107863294使用场景Map Join适用于一张表十分小、一张表很大的场景。优点思考:在Reduce端处理过多的表,非常容易产生数据倾斜。怎么办?在Map端缓存多张表,提前处理业务逻辑,这样增加Map端业务,减少Reduce端数据的压力,尽可能的减少数据倾斜。具体办法:采用DistributedCache(1)在Mapper的setup阶段,将文件读取到缓存集合中。(2)在驱动函数中
2020-08-09 15:15:22 150
原创 MapReduce - Reduce Join 案例
Reduce Join工作原理Reduce Join案例实操2.需求分析通过将关联条件作为Map输出的key,将两表满足Join条件的数据并携带数据所来源的文件信息,发往同一个ReduceTask,在Reduce中进行数据的串联相关代码TableBean.javapackage MapReduceJoin;import org.apache.hadoop.io.Writable;import org.apache.hadoop.io.WritableComparator;impo
2020-08-07 15:30:45 531 1
原创 MapReduce自定义OutputFormat
3.驱动类中job.setOutputFormatClass(MyOutputFormat.class);注意自定义了OutputFormat,那么在Driver中也要FileOutputFormat.setOutputPath指定输出路径,因为MapReduce本身还要输出一些额外的文件,如crc文件相关代码(以WordCount为例)MyOutputFormat.javapackage MapReduceCustomOutputFormat;import org.apache.hadoo.
2020-08-07 11:12:54 246
原创 MapReduce中一次reduce方法的调用中key的值不断变化分析及源码解析
结合GroupingComparator的例子来说明输入源数据从左到右依次为订单id,商品编号和商品价格需求:输出每个订单中价格最高的商品思路:1.在map之前的排序规则:订单号不同时按字典排序,订单号相同时按价格降序2.在reduce分组排序时,只要订单号相同就认为是相同的key,遍历迭代器的时候只取第一个相关代码OrderBean.javapackage MapReduceGroupComparator;import org.apache.hadoop.io.WritableCo
2020-08-07 10:44:37 488
原创 MapReduce自定义排序案例
数据来源基于Hadoop序列化小例子[统计手机的上行流量,下行流量,总流量]MapReduce排序在Shuffle阶段,在分区之后,排序时根据key值默认按字典顺序进行排序,排序方法为快速排序。基于上述案例的自定义排序原理FlowBean对象做为key传输,需要实现WritableComparable接口重写compareTo方法,就可以实现排序。相关代码FlowBean.javapackage MapReduceFlow;import org.apache.hadoop.io.Wri
2020-08-06 00:04:45 335
原创 MapReduce自定义分区
分区分区的工作发生在Shuffle阶段,即map之后reduce之前。自定义分区步骤相关代码package MapReduceFlow;import org.apache.hadoop.io.Text;import org.apache.hadoop.mapreduce.Partitioner;public class MyPartitioner extends Partitioner<Text,FlowBean> { @Override public in
2020-08-05 23:30:57 538
原创 MapReduce自定义InputFormat小例子
模拟小需求对多个小文件进行读取,设置不可切片,传给map方法得key为小文件的完整路径,value为整个小文件的内容。输出的时候合并成一个SequenceFile文件(SequenceFile文件是Hadoop用来存储二进制形式的key-value对的文件格式),SequenceFile里面存储着多个文件,存储的形式为文件路径+名称为key,文件内容为value。自定义步骤RecordReader是在map之前调用,负责给map函数传key和value值相关代码CustomInputForma
2020-08-05 22:36:08 211
原创 初探MapReduce切片
MapTask并行度决定机制数据块:Block是HDFS物理上把数据分成一块一块。数据切片:数据切片只是在逻辑上对输入进行分片,并不会在磁盘上将其切分成片进行存储。数据切片与MapTask并行度决定机制注意第4小点:切片时是逐个针对每一个文件单独切片Job提交流程FileInputFormat源码分析FileInputFormat切片机制CombineTextInputFormat1、应用场景:CombineTextInputFormat用于小文件过多的场景,它可以将多个小文件从
2020-08-05 22:28:24 491
原创 Hadoop序列化小例子[统计手机的上行流量,下行流量,总流量]
原始数据随便生成的模拟数据flowbean.txt手机号 IP地址 上行流量 下行流量 网络代码13345734563 192.168.1.1 1116 3452 20013545734556 192.168.1.1 1126 252 20013545734345 192.168.1.1 34516 3362 20013575734574 192.168.1.1 1886 3642 20018945734596 192.168.1
2020-08-05 14:26:38 577
原创 在Hadoop集群中运行自己写的JAVA代码
将JAVA源代码生成jar包1.maven的pom文件中加入以下依赖<build> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>2.3.2</version> <configu
2020-08-05 10:49:09 788
原创 PLSQL编程语言学习笔记
变量的定义1.先从小例子入门:declare i number(2) := 10; s varchar(10) := 'Guapi';begin dbms_output.put_line(i); dbms_output.put_line(s);end;体会一下方法的声明,变量的定义和初始化,如何打印输出2.直接引用某个表中的字段类型:表名.字段名%type,为引用变量,如ena = emp.ename%type;3.另外一种给变量赋值的方法:在select的时候使用in
2020-08-03 11:18:40 316
原创 初识Oracle Goldengate源数据库和目标数据库配置
说明源端和目标端都是运行在Centos7上的Oracle11准备工作1.安装好Oracle 11 g2.下载goldengate网址1:http://www.oracle.com/technetwork/middleware/goldengate/downloads/index.html网址2:edelivery.oracle.com3.下载goldengate后解压,我解压到/home/oracle/goldengate11.2.1.0.3/ogg打开数据库最小附加日志SQL>se
2020-08-03 00:11:34 1085
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人