-
2019-04-18 15:07:21
转自:https://blog.csdn.net/Abysscarry/article/details/82861425
package com.zjxt.demo.util; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.*; import org.apache.hadoop.hbase.client.*; import org.apache.hadoop.hbase.client.coprocessor.AggregationClient; import org.apache.hadoop.hbase.client.coprocessor.LongColumnInterpreter; import org.apache.hadoop.util.StopWatch; import java.io.IOException; import java.text.ParseException; import java.util.concurrent.TimeUnit; public class HBase { private static Connection connection =null; private static Admin admin =null; private static Configuration conf =null; static { System.setProperty("HADOOP_USER_NAME", "hbase"); conf = HBaseConfiguration.create(); conf.set("hbase.zookeeper.quorum", "xxxx-n1,xxxx-n2,xxxx-n3"); conf.set("hbase.zookeeper.property.clientPort", "2181"); conf.set("zookeeper.znode.parent", "/hbase-unsecure"); try { connection = ConnectionFactory.createConnection(conf); admin = connection.getAdmin(); } catch (Exception e) { e.printStackTrace(); } } public static void rowCountByCoprocessor(String tablename){ try { //提前创建connection和conf Admin admin = connection.getAdmin(); TableName name=TableName.valueOf(tablename); //先disable表,添加协处理器后再enable表 admin.disableTable(name); HTableDescriptor descriptor = admin.getTableDescriptor(name); String coprocessorClass = "org.apache.hadoop.hbase.coprocessor.AggregateImplementation"; if (! descriptor.hasCoprocessor(coprocessorClass)) { descriptor.addCoprocessor(coprocessorClass); } admin.modifyTable(name, descriptor); admin.enableTable(name); //计时 StopWatch stopWatch = new StopWatch(); stopWatch.start(); Scan scan = new Scan(); AggregationClient aggregationClient = new AggregationClient(conf); System.out.println("RowCount: " + aggregationClient.rowCount(name, new LongColumnInterpreter(), scan)); stopWatch.stop(); System.out.println("统计耗时:" +stopWatch.now(TimeUnit.SECONDS)); } catch (Throwable e) { e.printStackTrace(); } } public static void main(String[] args) throws IOException, ParseException { rowCountByCoprocessor("TEST1"); } }
更多相关内容 -
公司人员信息表.xls
2020-12-11 13:55:56带公式的excel表格,详细登记公司人员信息,填写身份证号能够自动计算年纪,自动填充性别,合同到期可自动提醒。 -
西元教学模型点数统计表.x .GIF
2020-06-21 17:58:32西元教学模型点数统计表.x -
人员流动统计表HR必备.xlsx
2021-04-16 13:37:31人员流动统计表HR必备.xlsx -
销售人员月薪统计表(底薪+提成).xlsx
2021-04-16 13:38:35销售人员月薪统计表(底薪+提成).xlsx -
单位人员车辆基本信息表(表格模板、XLS格式).XLS
2021-12-19 02:14:03单位人员车辆基本信息表(表格模板、XLS格式).XLS -
运维信息记录表.xlsx
2020-07-03 11:08:59运维信息记录表:记录项目访问信息、部署情况、服务器资源分配等情况的记录表模板为方便运维记录而设计的模板。适用于大部分运维日常需求。 -
表格模板-统计表.xlsx
2019-09-09 08:04:26表格模板-统计表.xlsx -
IGS全球测站信息excel统计表
2016-12-19 16:33:06excel表格中包括了全球IGS测站的相关位置、接收机类型等相关数据,为测量、导航等专业人员的开发以及教学提供了参考 -
(国外开源访问的EI论文发表统计表)Open Aceess EI.docx
2020-03-29 23:22:01为了应对科研人员对对国外的Open Access EI发表论文提供参考途径,特收集了一些出版社以及刊源名称,以及国籍,杂志名称,出版社、ISBN号,以及来源类型等等信息。 -
angular-performance:angularJS性能统计信息,适用于开发人员的chrome扩展
2021-05-03 04:19:42angularJS性能统计信息,适用于开发人员的chrome扩展 它处于发展的初期。 目标是为Angular开发人员提供更多应用程序的运行时信息。 根据功能,我尝试提供图形。 计数每个摘要周期的脏表 应该与所有角度版本兼容... -
纯css table 样式布局制作人口统计table表格样式代码
2019-11-08 23:03:19纯css table 样式布局制作人口统计table表格样式代码 纯css table 样式布局制作人口统计table表格样式代码 -
总结:如何在excel中制作数据统计表(最简单的excel分类汇总教程)
2021-06-20 00:46:15我们经常使用excel来完成数据统计,尤其是...Excel如何制作数据统计表1、查找和分类小计首先,我们需要知道小计功能的位置。打开Excel,在工具栏的[数据]中,最右边是[小计摘要]。在排序和汇总之前,我们还需要对...我们经常使用excel来完成数据统计,尤其是对于大型和复杂数据。 Excel的分类和摘要可以方便快捷地处理,那么Excel的分类和摘要功能是什么? ?它有什么功能?怎么做?不用担心,今天我将与您分享有关excel分类和摘要的教程!
Excel如何制作数据统计表
1、查找和分类小计
首先,我们需要知道小计功能的位置。
打开Excel,在工具栏的[数据]中,最右边是[小计摘要]。
在排序和汇总之前,我们还需要对数据进行排序,同样在[Data]中,您可以选择升序或降序〜
2、基本汇总方法
单一条件汇总方法是最常用的汇总方法。我给你个栗子例如,如果要分别计算每个部门的销售额,则我们首先对销售额进行排序(在这里选择升序),然后单击小计,在[分类字段]中选择部门,然后在[摘要方法]中选择求和,然后单击确定!
3、多条件汇总方法
多种聚合方法稍微先进一些,但实际上它们并不复杂〜我将举另一个栗子的例子。我想按每个部门在不同日期的销量进行排序,因此我只需要在上述栗子的基础上做同样的事情。排序和汇总日期就足够了。
首先,对日期进行排序,注意,注意! [敲黑板]许忘记对日期进行排序,因此汇总失败。请记住要记住,您可以按什么分类和汇总进行排序。排序后,单击[小计],然后单击[分类字段]选择日期,然后取消[替换当前小计]前面的复选标记,然后单击[确定]进行操作〜
4、取消小计
如果您不想排序和总结,该怎么办?非常简单,点击[小计],然后选择左下角的[全部删除]〜
5、分类别打印
汇总数据后,如果要在页面中打印出来怎么办?
单击[子类别],在下面选中[对每组数据进行分页]选项,以便将每组数据分成页面,然后将其打印出来〜
在这里,编辑器会告诉您一些提示:
1、如果要打印带有标题的每一页,请单击[页面设置]-[打印标题]-[顶部标题]以在每一页上打印标题。
2、排序和汇总时,数据表的左侧有一列,单击此处可更直观,更清楚地查看统计信息!
子汇总实际上很简单吗?如果您想精通,就必须学习和练习!
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shumachanpin/article-319829-1.html
-
年度入职与离职人员表.xlsx
2020-08-28 11:31:13适合人力资源对企业人员的员工信息进行统计,包含离职和在职的统计适合人力资源对企业人员的员工信息进行统计,包含离职和在职的统计 -
7-40 jmu-python-班级人员信息统计 (15 分)
2021-08-12 21:34:317-40 jmu-python-班级人员信息统计 (15 分) 输入a,b班的名单,并进行如下统计。 输入格式: 第1行::a班名单,一串字符串,每个字符代表一个学生,无空格,可能有重复字符。 第2行::b班名单,一串字符串,每个学生...7-40 jmu-python-班级人员信息统计 (15 分)
输入a,b班的名单,并进行如下统计。
输入格式:
第1行::a班名单,一串字符串,每个字符代表一个学生,无空格,可能有重复字符。
第2行::b班名单,一串字符串,每个学生名称以1个或多个空格分隔,可能有重复学生。
第3行::参加acm竞赛的学生,一串字符串,每个学生名称以1个或多个空格分隔。
第4行:参加英语竞赛的学生,一串字符串,每个学生名称以1个或多个空格分隔。
第5行:转学的人(只有1个人)。输出格式
特别注意:输出人员名单的时候需调用sorted函数,如集合为x,则print(sorted(x))
输出两个班级的所有人员数量
输出两个班级中既没有参加ACM,也没有参加English的名单和数量
输出所有参加竞赛的人员的名单和数量
输出既参加了ACM,又参加了英语竞赛的所有人员及数量
输出参加了ACM,未参加英语竞赛的所有人员名单
输出参加英语竞赛,未参加ACM的所有人员名单
输出参加只参加ACM或只参加英语竞赛的人员名单
最后一行:一个同学要转学,首先需要判断该学生在哪个班级,然后更新该班级名单,并输出。如果没有在任何一班级,什么也不做。输入样例:
abcdefghijab 1 2 3 4 5 6 7 8 9 10 1 2 3 a b c 1 5 10 a d e f a 结尾无空行
输出样例:
Total: 20 Not in race: ['4', '6', '7', '8', '9', 'g', 'h', 'i', 'j'], num: 9 All racers: ['1', '10', '2', '3', '5', 'a', 'b', 'c', 'd', 'e', 'f'], num: 11 ACM + English: ['1', 'a'], num: 2 Only ACM: ['2', '3', 'b', 'c'] Only English: ['10', '5', 'd', 'e', 'f'] ACM Or English: ['10', '2', '3', '5', 'b', 'c', 'd', 'e', 'f'] ['b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'] 结尾无空行
我的回答:
# 处理多个空格间隔的函数: def HandleBlock(list): new_list =[] for item in list: if item != "": new_list.append(item) return new_list # 输入 grade_a_str = input() grade_b_original_list = input().split(" ") acm_original_list = input().split(" ") english_original_list = input().split(" ") trans_school = input() # 列表化处理 grade_a_list = [] for item in grade_a_str: grade_a_list.append(item) grade_b_list = HandleBlock(grade_b_original_list) acm_list = HandleBlock(acm_original_list) english_list = HandleBlock(english_original_list) # 去重复处理: ''' # 建立哈希表 check_table = {} for item in grade_a_list + grade_b_list: check_table[item] = 0 # 通过哈希冲突来去重 final_a = [] final_b = [] for item in grade_a_list: if check_table[item] == 0: final_a.append(item) check_table[item] = 1 for item in grade_b_list: if check_table[item] == 0: final_b.append(item) check_table[item] = 1 ''' # 用集合法去重可能更简单: final_a = list(set(grade_a_list)) final_b = list(set(grade_b_list)) # 输出的测试 ''' print(sorted(final_a)) print(sorted(final_b)) print(sorted(acm_list)) print(sorted(english_list)) print(sorted(trans_school)) ''' # 输出处理 print(f'Total: {len(final_a)+len(final_b)}') Not_in_race = [] All_racers = [] ACMandEnglish = [] Only_ACM = [] Only_English = [] ACMorEnglish = [] #只参加了acm或者english中的一项 for item in final_a + final_b: if item in acm_list: All_racers.append(item) if item in english_list: ACMandEnglish.append(item) else: Only_ACM.append(item) elif item in english_list: All_racers.append(item) if item in acm_list: ACMandEnglish.append(item) else: Only_English.append(item) else: Not_in_race.append(item) # 利用集合的补集运算 ACMorEnglish = list(set(Only_ACM)^set(Only_English)) print(f"Not in race: {sorted(Not_in_race)}, num: {len(Not_in_race)}") print(f"All racers: {sorted(All_racers)}, num: {len(All_racers)}") print(f"ACM + English: {sorted(ACMandEnglish)}, num: {len(ACMandEnglish)}") print(f"Only ACM: {sorted(Only_ACM)}") print(f"Only English: {sorted(Only_English)}") print(f"ACM Or English: {sorted(ACMorEnglish)}") if trans_school in final_a: print(sorted(list(set(trans_school) ^ set(final_a)))) elif trans_school in final_b: print(sorted(list(set(trans_school) ^ set(final_b)))) else: pass
能从这道题目里面学习到的知识点:
- 首先是关于以1个或多个空格分隔的处理,我们采用的是:
- 依然先按照空格来进行元素的划分。
- 去除列表中引多个空格分隔而产生的
""
字符。
- 本题当中学到的一个最重要的要点是:
- 以前面对重复元素问题的时候,我采取的通法都是用自建哈希表,通过哈希冲突的解决来解决重复元素的剥离问题。
- 但是这次的解题中,我使用了Python中set的数据结构,天然地运用了集合本身互异性的特点通过把存在重复元素的列表先转化成集合,然后再将集合转回列表的方式,能够实现快速解决这种重复元素的剥离问题。
- 说明在处理不同集合之间的问题的相互关系的时候,要学会考虑去使用set这种数据结构,他们存在天然的优势,并且在集合间关系的讨论的问题中,我们还可以借用集合的运算很直接地处理一些分类问题。
- 最后要注意多了解python本身自带地函数,其中,
sorted()函数
对列表的排序是很好用的功能。
Python的内置函数
- 首先是关于以1个或多个空格分隔的处理,我们采用的是:
-
快速收集人员健康信息、春节去向记录,一张收集表就够了
2020-02-01 15:29:34这几天,孩子幼儿园的老师在做关于疫情的统计,统计现在所在地和有无途经湖北武汉等。老师在微信群里发了个word,让大家按顺序填写。如果大家同时在编辑,发到了群里,这时候就有了冲突,还需要有人做合并操作,统计...这几天,孩子幼儿园的老师在做关于疫情的统计,统计现在所在地和有无途经湖北武汉等。老师在微信群里发了个word,让大家按顺序填写。如果大家同时在编辑,发到了群里,这时候就有了冲突,还需要有人做合并操作,统计过程中,反复有人要撤销合并,效率特别低。那么对于各类信息收集和统计的需求有没有什么好的方法?那就是用可以多人实时在线编辑文档的,如腾讯文档,或者金山文档。两者功能上差不多,今天重点给大家介绍下腾讯文档。访问地址:https://docs.qq.com/。
腾讯文档小程序:
平常工作中用的钉钉,群里支持多人实时去编辑文档的。但对于老师收集信息目前大多数是基于微信做统计的。在没有在线实时协同编辑工具的时候,我们需要每个人填自己的数据,最后在做汇总。现在我们可以借助腾讯文档这种在线实时协同编辑工具同时编辑,减少了汇总的工作,大大的提升工作效率。
快速收集人员健康信息、春节去向记录,一张收集表就够了
每个机构/单位/学校/社区等工作人员,这段时间都需要收集居民、员工、学生等人员及其家属的健康信息和春节去向。1v1 逐个发送文件、保存文件收集方式太落后,也太慢了。腾讯文档提供了两种方式收集信息:
1.在线收集表收集(类似于在线的问卷方式,一是方便敏感信息收集,二填写比较方便)
(1)创建一份收集表
(2)把需要采集的内容填写好
我们可以在已有的模板上去编辑
小程序操作说明
(3)发送到需要填写的微信群/QQ群/个人
填写信息的界面是这样的
方便大家直接用手机填写。
最后,创建者还可以回到收集表,把结果一键汇总成表格。汇总后的表格,可导出。
可以导出到本地。
收集表中收集到的内容可保证仅创建者可见,不用担心信息泄漏的风险。一张收集表能收集7000个人的信息,能应对绝大部分的工作场景了。
2:使用在线表格,适用收集不敏感的信息,创建表格后发送给指定人群填写就可以了。
(1)可以新建,也可以导入表格。
(2)设置协作权限
(3)分享
腾讯出了几个信息收集的模板,方便大家使用。
腾讯文档全体也非常关心疫情动态,我们虽不能抗战在一线,却希望能明辨是非真假,坚持“科技向善”,帮助大家做好疫情相关的信息登记,尽快复工。群策群力,一起为武汉加油!希望这篇文章也能给大家带来一些帮助。 -
人员保证记录表范本
2020-12-18 11:55:00通过统计资料和实时信息分析,小编为大家推荐了这一款人员保证记录表范本,只为给你最全面、最详细的人员...该文档为人员保证记录表范本,是一份很不错的参考资料,具有较高参考价值,感兴趣的可以下载看看 -
调出人员登记表
2020-12-18 12:57:31通过统计资料和实时信息分析,小编为大家推荐了这一款调出人员登记表,只为给你最全面、最详细的调出人员...该文档为调出人员登记表,是一份很不错的参考资料,具有较高参考价值,感兴趣的可以下载看看 -
有一个人员信息表如下
2017-08-10 15:34:28有一个人员信息表user_info(user_id,name,dept_id,amt)、部门信息表dept_info(dept_id,dept_desc),人员功夫表user_kongfu(user_id,kf_id,main_kf_flag)和功夫信息代码表kf_info(kf_id,kf_desc)表中的数据分别如下:... -
2020年国内城市轨道交通概况统计.docx
2021-03-10 15:32:33城市轨道交通最新统计概况,2020年,适用于轨道交通从业人员 -
ORACLE analyse table方式收集表统计信息导致SQL执行计划不准确而性能下降
2018-10-31 21:52:55最近,遇到一客户,反馈业务响应慢,经过分析后最后... 查看数据库顶级等待事件,发现是文件离散读,基本可以锁定是表扫描相关的问题: 查看问题SQL,Order by Elapsed Time,发现一条执执行次数不算多,执行... -
企业管理人员奖金核定表下载
2020-12-18 15:32:10通过统计资料和实时信息分析,小编为大家推荐了这一款企业管理人员奖金核定表下载,只为给你最全面、最详...该文档为企业管理人员奖金核定表下载,是一份很不错的参考资料,具有较高参考价值,感兴趣的可以下载看看 -
数据库性能调优之始: analyze统计信息
2021-01-25 10:12:34摘要:本文简单介绍一下什么是统计信息、统计信息记录了什么、为什么要收集统计信息、怎么收集统计信息以及什么时候收集统计信息。 1 WHY:为什么需要统计信息 1.1 query执行流程 下图描述了GaussDB的SQL引擎从... -
操作人员工作应片表
2020-12-18 16:16:45通过统计资料和实时信息分析,小编为大家推荐了这一款操作人员工作应片表,只为给你最全面、最详细的操作...该文档为操作人员工作应片表,是一份很不错的参考资料,具有较高参考价值,感兴趣的可以下载看看 -
oracle优化器统计信息相关
2021-01-19 22:06:43dba和程序开发人员都应该了解一些统计信息相关知识,这可以使你更好的理解为什么会生成一个你看到的执行计划,知其然且知其所以然。 统计信息存储在数据字典里,可以使用数据字典视图访问这些信息。主要包括... -
用Excel数据透视表的单字段透视功能统计各销售人员的销售总金额
2017-09-12 09:42:36这个问题来自于网友,那么该怎么统计各销售人员的销售总金额呢?本节使用到了Excel的数据透视表,因此本教程适合的人群多为财务、销售、HR等数据统计的办公人士。下面一起看看如何快速统计以找到TOP销售人员是谁。 ... -
flow:dev-flow是一个网站,您可以在其中输入任何人的GitHub用户名来查看任何人的GitHub统计信息和时间表。
2021-02-04 07:06:20:party_popper: 开发人员流程 :party_popper: 什么是开发流程 :red_question_mark: dev-flow是一个网站,您可以在其中输入任何人的GitHub用户名来查看任何人的GitHub统计信息和时间表。 这个怎么运作 :red_question... -
社区网格化服务管理工作手册.doc
2021-05-10 14:58:591、责任区基本情况统计表………………………………第1页 2、社区综合服务站服务范围……………………………第2页 3、社区网格管理员协管员工作职责……………………第3页 4、社区社情民意调查记录表………………... -
员工内部调转表
2020-12-18 18:50:30通过统计资料和实时信息分析,小编为大家推荐了这一款员工内部调转表,只为给你最全面、最详细的员工内部...该文档为员工内部调转表,是一份很不错的参考资料,具有较高参考价值,感兴趣的可以下载看看 -
BUG记录模版(带汇总、统计、分析功能)
2013-08-21 14:28:28BUG模版 BUG记录模版 缺陷模版 缺陷记录模版 BUG统计