partition

Seeing “partition doesn't exist” warnings/failures after kafka using kafka partition re-assignment tool

非 Y 不嫁゛ 提交于 2019-12-05 10:29:15
I am using kafka 0.8.1.1. I have a 3 node kafka cluster with some topics having around 5 partitions. I planned to increase the number of nodes to 5 in cluster and moving some partitions from existing topics to the new brokers. Previous partition state: broker1 : topic1 { partition 0 } broker2 : topic1 { partition 1,2} broker3 : topic1 { partition 3,4} New intended state: broker1 : topic1 { partition 0} broker2 : topic1 { partition 1} broker3 : topic1 { partition 3} broker4 : topic1 { partition 4} broker5 : topic1 { partition 2} command which I used: bin/kafka-reassign-partitions.sh -

PostgreSQL从继承到分区(三)

天涯浪子 提交于 2019-12-05 06:54:10
三、Pg_partman 3.1 介绍 pg_partman是基于PostgreSQL分区开发的一个分区表管理工具,通过多个引入函数实现了对分区表的管理,相比手工创建分区表、触发器函数、触发器显得更加快捷方便,同时提供了对分区表的日常维护与管理功能。 其实现原理是将约束、函数、触发器、分区表的创建以及基础管理命令均写入函数,通过函数的调用即可方便创建与维护,并且避免了手工创建引入错误。 3.2 安装 下载地址: https://github.com/keithf4/pg_partman 编译安装: [postgres@localhost ~]$ cd pg_partman-master [postgres@localhost pg_partman-master]$ make [postgres@localhost pg_partman-master]$ make install 创建partman使用的空间: postgres=# create schema partman; CREATE SCHEMA 引入扩展模块pg_partman: postgres=# create extension pg_partman with schema partman ; CREATE EXTENSION postgres=# \dx List of installed extensions

【中间件】Kafka 学习 01

妖精的绣舞 提交于 2019-12-05 06:46:01
KafKa 博客教程-1 博客教程-2 kafka简介 kafka起源 Kafka是由LinkedIn开发并开源的分布式消息系统,2012年捐赠给Apache基金会,采用Scala语言,运行在JVM中,最新版本2.0.1 下载地址 kafka设计目标 Kafka是一种分布式的,基于发布/订阅的消息系统 设计目标: 以时间复杂度O(1)的方式提供消息持久化能力,对TB级别的数据也能保证常数时间复杂度的访问性能; 高吞吐率。在低配机器上也能保证每秒10万条以上消息的传输; 支持kafka server间的消息分区,分布式消费,同时保证每个Partition内消息的顺序传输; 支持离线数据和实时数据处理 scale out,支持在线水平扩展,无需停机即可扩展机器 使用消息系统的好处 解耦,冗余,扩展性,灵活性&峰值处理能力,可恢复性,顺序保证,缓冲,异步通信 对比常用消息中间件 ActiveMQ RabbitMQ Kafka produce容错,是否丢失数据 有ack模型,也有事务模型,保证至少不会丢失数据。ack模型可能会有重复消息,事务模型保证完全一致 批量形式下可能会丢失数据;非批量形式下:1.使用同步模式可能会有重复数据,2.使用异步模式可能会丢失数据 consumer容错,是否丢失数据 有ack模型,数据不会丢失,但可能会有重复数据 批量形式下可能会丢数据。非批量形式下

Hive备份语句以及分区插入

狂风中的少年 提交于 2019-12-05 06:37:45
insert overwrite table backup.epg_wiki_info select * from tvlog.epg_wiki_info; insert overwrite table backup.wiki select * from tvlog.wiki; insert overwrite table backup.device_info select * from tvlog.device_info; set hive.exec.dynamic.partition=true; set hive.exec.dynamic.partition.mode=nonstrict; set hive.exec.max.dynamic.partitions.pernode=1000; insert overwrite table backup.tvlog_tcl partition (year, month, day) select * from tvlog.tvlog_tcl; select count(userid) as total, dt, channelname from tvlog.tvlog_tcl where channelname = $P{channelname} and (unix_timestamp(endtime) - unix

SQL Concatenate multiple rows

北战南征 提交于 2019-12-05 06:30:27
I'm using Teradata, I have a table like this ID String 123 Jim 123 John 123 Jane 321 Jill 321 Janine 321 Johan I want to query the table so I get ID String 123 Jim, John, Jane 321 Jill, Janine, Johan I tried partition but there can be many names. How do I get this result. Even, to point me in the right direction would be great. Unfortunately there's no PIVOT in Teradata (only a TD_UNPIVOT in 14.10). If you got luck there's an aggregate UDF at your site to do a group concat (probably low possibility). Otherwise there are two options: recursion or aggregation. If the maximum number of rows per

spark-on-yarn 学习

ⅰ亾dé卋堺 提交于 2019-12-05 06:30:22
1. hdfs存文件的时候会把文件切割成block,block分布在不同节点上,目前设置replicate=3,每个block会出现在3个节点上。 2. Spark以RDD概念为中心运行,RDD代表抽象数据集。以代码为例: sc.textFile(“abc.log”) textFile()函数会创建一个RDD对象,可以认为这个RDD对象代表”abc.log”文件数据,通过操作RDD对象完成对文件数据的操作。 3. RDD包含1个或多个partition分区,每个分区对应文件数据的一部分。在spark读取hdfs的场景下,spark把hdfs的block读到内存就会抽象为spark的partition。所以,RDD对应文件,而partition对应文件的block,partition的个数等于block的个数,这么做的目的是为了并行操作文件数据。 由于block是分布在不同节点上的,所以对partition的操作也是分散在不同节点。 4. RDD是只读的,不可变数据集,所以每次对RDD操作都会产生一个新的RDD对象。同样,partition也是只读的。 sc.textFile("abc.log").map() 代码中textFile()会构建出一个NewHadoopRDD,map()函数运行后会构建出一个MapPartitionsRDD。 这里的map()函数已经是一个分布式操作

windows系统转linux系统后磁盘的处理

心不动则不痛 提交于 2019-12-05 06:26:46
背景: 原服务器是windows操作系统的。在没有进行格式化的情况下,重新安装了linux系统。比如centos7后,磁盘该怎么格式化?以下是演示过程。 1. 查看磁盘情况: # fdisk -l 2. 分析目前分区情况 /dev/sdb1 * 4096 629153791 314574848 7 HPFS/NTFS/exFAT /dev/sdb2 629153792 1953523711 662184960 f W95 Ext'd (LBA) /dev/sdb5 629157888 1291862015 331352064 7 HPFS/NTFS/exFAT /dev/sdb6 1291866112 1953523711 330828800 7 HPFS/NTFS/exFAT HPFS/NTFS/exFAT:属于windows支持的文件系统。在使用u盘安装centos操作系统的时候,留下的文件: centos7.0开始默认文件系统是xfs。xfs是一种非常优秀的日志文件系统,它是SGI公司设计的。xfs被称为业界最先进的、最具可升级性的文件系统技术。xfs是一个64位文件系统,最大支持8EB减1字节的单个文件系统,实际部署时取决于宿主操作系统的最大块限制。对于一个32位Linux系统,文件和文件系统的大小会被限制在16TB。xfs在很多方面确实做的比ext4好

Kafka生产过程分析-悟空智慧教育

六眼飞鱼酱① 提交于 2019-12-05 06:23:30
3.1 .1 写入方式 producer 采用 推(push) 模式将消息发布到 broker ,每条消息都被 追加(append) 到 分区(patition) 中,属于顺序写磁盘(顺序写磁盘效率比随机写内存要高,保障 kafka 吞吐率)。 3.1.2 分区 ( Partition ) 消息发送时都被发送到一个 topic ,其本质就是一个目录,而 topic 是由一些 Partition 我们可以看到,每个 Partition 中的消息都是 有序 的,生产的消息被不断追加到 Partition log 上,其中的每一个消息都被赋予了一个唯一的 offset 值 。 1 )分区的 原因 ( 1 ) 方便在集群中扩展,每个 Partition 可以通过调整以适应它所在的机器,而一个 topic 又可以有多个 Partition 组成,因此整个集群就可以适应任意大小的数据了; ( 2 ) 可以提高并发,因为可以以 Partition 为单位读写了。 2) 分区的原则 ( 1 ) 指定了 patition ,则直接使用; ( 2 ) 未指定 patition 但指定 key ,通过对 key 的 value 进行 hash 出一个 patition ( 3 ) patition 和 key 都未指定,使用轮询选出一个 patition 。 DefaultPartitioner 类

MySQL数据库分区的一些应用

断了今生、忘了曾经 提交于 2019-12-05 05:05:57
http://hi.baidu.com/jxvip/item/d6084ea5094229258919d30c http://lehsyh.iteye.com/blog/732719 mysql的表分区 MySQL数据库分区的一些应用 分区的一些优点: 1)与单个磁盘或文件系统分区相比,可以存储更多的数据。 2)对于那些已经失去保存意义的数据,通常可以通过删除与那些数据有关的分区,很容易地删除那些数据。相反地,在某些情况下,添加新数据的过程又可以通过为那些新数据专门增加一个新的分区来很方便地实现。 3)一些查询可以得到极大的优化,这主要是借助于满足一个给定where 语句的数据可以只保存在一个或多个分区内,这样在查找时就不用查找其他剩余的分区。因为分区可以在创建了分区表后进行修改,所以在第一次配置分区方案时还 不曾这么做时,可以重新组织数据,来提高那些常用查询的效率。 4)涉及到例如sum() 和 count()这样聚合函数的查询,可以很容易地进行并行处理。这种查询的一个简单例子如 “select salesperson_id, count(orders) as order_total from sales group by salesperson_id;”。通过“并行”, 这意味着该查询可以在每个分区上同时进行,最终结果只需通过总计所有分区得到的结果。 5

Kafka

杀马特。学长 韩版系。学妹 提交于 2019-12-05 03:16:39
转载: https://blog.csdn.net/henlf/article/details/82085685 https://blog.csdn.net/uniquecapo/article/details/79292965 https://blog.csdn.net/yuan_xw/article/details/51210954 1 kafka 是什么 Apache kafka is a distributed streaming platform,即官方定义 kafka 是一个分布式流式计算平台。而在大部分企业开发人员中,都是把 kafka 当成消息系统使用,即它是一个分布式消息队列,很少会使用 kafka 的流式计算。它有四个关键概念: topic kafka 把收到的消息按 topic 进行分类,因此可以理解为 topic 是一种类别 producer 往 kafka 发送消息的用户 consumer 接收 kafka 消息的用户 borker kafka 集群可以由多个 kafka 实例组成,每个实例(server)称为 broker 无论是 kafka broker 本身,还是 producer 或者 consumer,都依赖于 zookeeper 集群保存一些 meta 信息,保证系统可用性,以及使用 zookeeper 的选举机制。 2 消息队列实现原理