紫藤

紫藤 查看完整档案

填写现居城市  |  填写毕业院校  |  填写所在公司/组织填写个人主网站
编辑
_ | |__ _ _ __ _ | '_ \| | | |/ _` | | |_) | |_| | (_| | |_.__/ \__,_|\__, | |___/ 该用户太懒什么也没留下

个人动态

紫藤 关注了问题 · 11月18日

大文件如何通过 Mapreduce 切分存入 hbase

  • 大文件(几百M、几个G)通过 Mapreduce 切分成多个 5mb 的小文件并存入 hbase 这种操作如何实现啊
  • 为啥自定义Mapreduce的driver使用FileInputFormat作为输入总是按行切分,这个怎么搞
  • driver代码
        // 1 获取配置信息
 Configuration conf = new Configuration();
        // 2 设置信息
 conf.set("rowKeyName", String.valueOf(Long.MAX_VALUE - Calendar.getInstance().getTimeInMillis()));
        conf.set("columnFamilyName", "data");
        conf.set("columnPrefixName", "scar_");
        conf.set("hbase.zookeeper.quorum", "zookeeper1:2181,zookeeper2:2181,zookeeper3:2181");
        // 3 获取job对象实例
 Job job = Job.getInstance(conf);
        // 4 指定本程序的jar包所在的本地路径
 job.setJarByClass(Hdfs2HbaseDriver.class);
        // 5 指定本业务job要使用的mapper/Reducer业务类
 job.setMapperClass(Hdfs2HbaseMapper.class);
 // 6 指定mapper输出数据的kv类型
 job.setMapOutputKeyClass(NullWritable.class);
 // 7 设置最小reducer任务数
 job.setNumReduceTasks(0);
 // 8 指定job的输入原始文件所在目录
 FileInputFormat.setMaxInputSplitSize(job, 3145728);
        FileInputFormat.setMinInputSplitSize(job, 3145728);
        FileInputFormat.setInputPaths(job, new Path(args[0]));
        // 9 指定最终输出的数据hbase表名和使用的reducer类
 TableMapReduceUtil.initTableReducerJob("object", null, job);
        TableMapReduceUtil.addDependencyJars(job);
        // 10 提交给yarn运行
 boolean result = job.waitForCompletion(true);
        System.exit(result ? 0 : 1);

关注 1 回答 0

紫藤 提出了问题 · 11月17日

大文件如何通过 Mapreduce 切分存入 hbase

  • 大文件(几百M、几个G)通过 Mapreduce 切分成多个 5mb 的小文件并存入 hbase 这种操作如何实现啊
  • 为啥自定义Mapreduce的driver使用FileInputFormat作为输入总是按行切分,这个怎么搞
  • driver代码
        // 1 获取配置信息
 Configuration conf = new Configuration();
        // 2 设置信息
 conf.set("rowKeyName", String.valueOf(Long.MAX_VALUE - Calendar.getInstance().getTimeInMillis()));
        conf.set("columnFamilyName", "data");
        conf.set("columnPrefixName", "scar_");
        conf.set("hbase.zookeeper.quorum", "zookeeper1:2181,zookeeper2:2181,zookeeper3:2181");
        // 3 获取job对象实例
 Job job = Job.getInstance(conf);
        // 4 指定本程序的jar包所在的本地路径
 job.setJarByClass(Hdfs2HbaseDriver.class);
        // 5 指定本业务job要使用的mapper/Reducer业务类
 job.setMapperClass(Hdfs2HbaseMapper.class);
 // 6 指定mapper输出数据的kv类型
 job.setMapOutputKeyClass(NullWritable.class);
 // 7 设置最小reducer任务数
 job.setNumReduceTasks(0);
 // 8 指定job的输入原始文件所在目录
 FileInputFormat.setMaxInputSplitSize(job, 3145728);
        FileInputFormat.setMinInputSplitSize(job, 3145728);
        FileInputFormat.setInputPaths(job, new Path(args[0]));
        // 9 指定最终输出的数据hbase表名和使用的reducer类
 TableMapReduceUtil.initTableReducerJob("object", null, job);
        TableMapReduceUtil.addDependencyJars(job);
        // 10 提交给yarn运行
 boolean result = job.waitForCompletion(true);
        System.exit(result ? 0 : 1);

关注 1 回答 0

紫藤 关注了问题 · 10月17日

VMWare虚拟机搭建Docker swarm集群,挂起虚拟机遇到的问题

  • 使用VMWare虚拟机搭建了三个Ubuntu20系统,其中各自跑了docker服务,为了测试swarm集群
  • 在docker中跑了zookeeper实例,一共3个,在没有挂起虚拟机的时候是正常的,也可以远程连接zookeeper,但是如果挂起虚拟机,然后在重新运行虚拟机,就会出现zookeeper连不上其他实例的情况,然后截取了挂起前后的网卡配置情况,发现docker0和docker swarm默认创建的docker-gwbridge的ip地址没有了,各位大佬有没有什么解决方法呢?
  • 挂起前
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:50:56:37:f4:94 brd ff:ff:ff:ff:ff:ff
    inet 192.168.7.41/24 brd 192.168.7.255 scope global ens32
       valid_lft forever preferred_lft forever
    inet6 fe80::250:56ff:fe37:f494/64 scope link 
       valid_lft forever preferred_lft forever
3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default 
    link/ether 02:42:25:50:ec:63 brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
       valid_lft forever preferred_lft forever
4: docker_gwbridge: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default 
    link/ether 02:42:b8:64:0c:ff brd ff:ff:ff:ff:ff:ff
    inet 172.18.0.1/16 brd 172.18.255.255 scope global docker_gwbridge
       valid_lft forever preferred_lft forever
    inet6 fe80::42:b8ff:fe64:cff/64 scope link 
       valid_lft forever preferred_lft forever
  • 挂起后:
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:50:56:37:f4:94 brd ff:ff:ff:ff:ff:ff
    inet 192.168.7.41/24 brd 192.168.7.255 scope global ens32
       valid_lft forever preferred_lft forever
    inet6 fe80::250:56ff:fe37:f494/64 scope link 
       valid_lft forever preferred_lft forever
3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default 
    link/ether 02:42:25:50:ec:63 brd ff:ff:ff:ff:ff:ff
4: docker_gwbridge: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default 
    link/ether 02:42:b8:64:0c:ff brd ff:ff:ff:ff:ff:ff
    inet6 fe80::42:b8ff:fe64:cff/64 scope link 
       valid_lft forever preferred_lft forever

关注 0 回答 0

紫藤 提出了问题 · 10月17日

VMWare虚拟机搭建Docker swarm集群,挂起虚拟机遇到的问题

  • 使用VMWare虚拟机搭建了三个Ubuntu20系统,其中各自跑了docker服务,为了测试swarm集群
  • 在docker中跑了zookeeper实例,一共3个,在没有挂起虚拟机的时候是正常的,也可以远程连接zookeeper,但是如果挂起虚拟机,然后在重新运行虚拟机,就会出现zookeeper连不上其他实例的情况,然后截取了挂起前后的网卡配置情况,发现docker0和docker swarm默认创建的docker-gwbridge的ip地址没有了,各位大佬有没有什么解决方法呢?
  • 挂起前
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:50:56:37:f4:94 brd ff:ff:ff:ff:ff:ff
    inet 192.168.7.41/24 brd 192.168.7.255 scope global ens32
       valid_lft forever preferred_lft forever
    inet6 fe80::250:56ff:fe37:f494/64 scope link 
       valid_lft forever preferred_lft forever
3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default 
    link/ether 02:42:25:50:ec:63 brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
       valid_lft forever preferred_lft forever
4: docker_gwbridge: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default 
    link/ether 02:42:b8:64:0c:ff brd ff:ff:ff:ff:ff:ff
    inet 172.18.0.1/16 brd 172.18.255.255 scope global docker_gwbridge
       valid_lft forever preferred_lft forever
    inet6 fe80::42:b8ff:fe64:cff/64 scope link 
       valid_lft forever preferred_lft forever
  • 挂起后:
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:50:56:37:f4:94 brd ff:ff:ff:ff:ff:ff
    inet 192.168.7.41/24 brd 192.168.7.255 scope global ens32
       valid_lft forever preferred_lft forever
    inet6 fe80::250:56ff:fe37:f494/64 scope link 
       valid_lft forever preferred_lft forever
3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default 
    link/ether 02:42:25:50:ec:63 brd ff:ff:ff:ff:ff:ff
4: docker_gwbridge: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default 
    link/ether 02:42:b8:64:0c:ff brd ff:ff:ff:ff:ff:ff
    inet6 fe80::42:b8ff:fe64:cff/64 scope link 
       valid_lft forever preferred_lft forever

关注 0 回答 0

紫藤 关注了用户 · 8月4日

铂赛东 @bosaidong_5c495684bcf4b

开源作者&内容创作者,专注于架构,开源,微服务,分布式等领域的技术研究和原创分享

欢迎关注公众号:「元人部落」,你能第一时间获取到我的原创内容

关注 2657

紫藤 关注了专栏 · 8月4日

SegmentFault 社区访谈

面向社区用户的访谈栏目,如果你愿意和我们分享你的故事,可以私信联系专栏入驻作者。

关注 2688

紫藤 关注了专栏 · 8月4日

全栈修仙之路

聚焦全栈,专注分享 Angular、TypeScript、Node.js/Java 、Spring 技术栈等全栈干货。 欢迎小伙伴们关注公众号全栈修仙之路,一起升级打怪。

关注 6948

紫藤 关注了用户 · 8月4日

Pseudo @pseudo_weilai

关注 203

紫藤 关注了用户 · 8月4日

乌柏木 @wubomu

曾在阿里巴巴跑龙套,现在自己公司打酱油。

关注 932

紫藤 关注了用户 · 8月4日

江南一点雨 @lenve

《Spring Boot+Vue全栈开发实战》作者
公众号:江南一点雨
微信:a_java_boy
专注于Spring Boot、Spring Cloud、前端Vue等技术

关注 2764

紫藤 关注了专栏 · 8月4日

SegmentFault 行业快讯

第一时间为开发者提供行业相关的实时热点资讯

关注 27792

紫藤 关注了标签 · 8月4日

linux

Linux是一种自由和开放源代码的类Unix计算机操作系统。目前存在着许多不同的Linux,但它们全都使用了Linux内核。Linux可安装在各种各样的计算机硬件设备,从手机、平板电脑、路由器和视频游戏控制台,到台式计算机,大型机和超级计算机。

Linux家族家谱图,很全很强大!! 图中可以清楚的看出各个Linux发行版的血缘关系。无水印原图:http://url.cn/5ONhQb

关注 66623

紫藤 关注了标签 · 8月4日

mysql

MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被Sun公司收购。而2009年,SUN又被Oracle收购。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内。这样就增加了速度并提高了灵活性。MySQL的SQL“结构化查询语言”。SQL是用于访问数据库的最常用标准化语言。MySQL软件采用了GPL(GNU通用公共许可证)。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

关注 64267

紫藤 关注了标签 · 8月4日

关注 84998

紫藤 关注了标签 · 8月4日

程序员

一种近几十年来出现的新物种,是工业革命的产物。英文(Programmer Monkey)是一种非常特殊的、可以从事程序开发、维护的动物。一般分为程序设计猿和程序编码猿,但两者的界限并不非常清楚,都可以进行开发、维护工作,特别是在中国,而且最重要的一点,二者都是一种非常悲剧的存在。

国外的程序员节

国外的程序员节,(英语:Programmer Day,俄语:День программи́ста)是一个俄罗斯官方节日,日期是每年的第 256(0x100) 天,也就是平年的 9 月 13 日和闰年的 9 月 12 日,选择 256 是因为它是 2 的 8 次方,比 365 少的 2 的最大幂。

1024程序员节,中国程序员节

1024是2的十次方,二进制计数的基本计量单位之一。程序员(英文Programmer)是从事程序开发、维护的专业人员。程序员就像是一个个1024,以最低调、踏实、核心的功能模块搭建起这个科技世界。1GB=1024M,而1GB与1级谐音,也有一级棒的意思。

从2012年,SegmentFault 创办开始我们就从网络上引导社区的开发者,发展成中国程序员的节日 :) 计划以后每年10月24日定义为程序员节。以一个节日的形式,向通过Coding 改变世界,也以实际行动在浮躁的世界里,固执地坚持自己对于知识、技术和创新追求的程序员们表示致敬。并于之后的最为临近的周末为程序员们举行了一个盛大的狂欢派对。

2015的10月24日,我们SegmentFault 也在5个城市同时举办黑客马拉松这个特殊的形式,聚集开发者开一个编程大爬梯。

特别推荐:

【SF 黑客马拉松】:http://segmentfault.com/hacka...
【1024程序员闯关秀】小游戏,欢迎来挑战 http://segmentfault.com/game/

  • SF 开发者交流群:206236214
  • 黑客马拉松交流群:280915731
  • 开源硬件交流群:372308136
  • Android 开发者交流群:207895295
  • iOS 开发者交流群:372279630
  • 前端开发者群:174851511

欢迎开发者加入~

交流群信息


程序员相关问题集锦:

  1. 《程序员如何选择自己的第二语言》
  2. 《如何成为一名专业的程序员?》
  3. 《如何用各种编程语言书写hello world》
  4. 《程序员们最常说的谎话是什么?》
  5. 《怎么加入一个开源项目?》
  6. 《是要精于单挑,还是要善于合作?》
  7. 《来秀一下你屎一般的代码...》
  8. 《如何区分 IT 青年的“普通/文艺/二逼”属性?》
  9. 程序员必读书籍有哪些?
  10. 你经常访问的技术社区或者技术博客(IT类)有哪些?
  11. 如何一行代码弄崩你的程序?我先来一发
  12. 编程基础指的是什么?
  13. 后端零起步:学哪一种比较好?
  14. 大家都用什么键盘写代码的?

爱因斯坦

程序猿崛起

关注 113939

紫藤 关注了问题 · 6月18日

wireshark遇到了奇怪的TCP三次握手信息

这个是测试环境,第4个包比较奇怪,有遇到这个问题的老哥吗?
image.png
这个是客户发来的,服务端窗口大小只有80感觉很奇怪,是不是防火墙阻挡了入口导致的?
image.png

关注 2 回答 1

紫藤 提出了问题 · 6月18日

wireshark遇到了奇怪的TCP三次握手信息

这个是测试环境,第4个包比较奇怪,有遇到这个问题的老哥吗?
image.png
这个是客户发来的,服务端窗口大小只有80感觉很奇怪,是不是防火墙阻挡了入口导致的?
image.png

关注 2 回答 1

紫藤 提出了问题 · 2019-01-30

如何修改记录并返回记录内容和查询记录的同时修改记录?

如何修改记录并返回记录内容和查询记录的同时修改记录,这其实是一个问题的两个方面,不过不能当成一个问题;

  1. 修改一条记录后,如何获得修改后的记录的值?
  2. 有一个表其中一列是时间戳,更新时自动设置值,目前使用了两条语句,现在想查询的时候就让其自动更新值,或者就如1所说,修改的同时返回字段值,如何实现呢?

关注 2 回答 1

紫藤 提出了问题 · 2019-01-30

如何修改记录并返回记录内容和查询记录的同时修改记录?

如何修改记录并返回记录内容和查询记录的同时修改记录,这其实是一个问题的两个方面,不过不能当成一个问题;

  1. 修改一条记录后,如何获得修改后的记录的值?
  2. 有一个表其中一列是时间戳,更新时自动设置值,目前使用了两条语句,现在想查询的时候就让其自动更新值,或者就如1所说,修改的同时返回字段值,如何实现呢?

关注 2 回答 1