From user-zh-return-112-archive-asf-public=cust-asf.ponee.io@flink.apache.org Wed Mar 6 03:58:52 2019 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx-eu-01.ponee.io (Postfix) with SMTP id 5E361180648 for ; Wed, 6 Mar 2019 04:58:52 +0100 (CET) Received: (qmail 59784 invoked by uid 500); 6 Mar 2019 03:58:51 -0000 Mailing-List: contact user-zh-help@flink.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user-zh@flink.apache.org Delivered-To: mailing list user-zh@flink.apache.org Received: (qmail 59773 invoked by uid 99); 6 Mar 2019 03:58:50 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 06 Mar 2019 03:58:50 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id CB2DCC045F for ; Wed, 6 Mar 2019 03:58:49 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 4.177 X-Spam-Level: **** X-Spam-Status: No, score=4.177 tagged_above=-999 required=6.31 tests=[HTML_MESSAGE=2, INVALID_MSGID=1.167, KAM_LAZY_DOMAIN_SECURITY=1, RCVD_IN_DNSWL_NONE=-0.0001, T_SPF_HELO_TEMPERROR=0.01] autolearn=disabled Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id 2RW0agfpw7JL for ; Wed, 6 Mar 2019 03:58:45 +0000 (UTC) Received: from smtpbgau1.qq.com (smtpbgau1.qq.com [54.206.16.166]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTPS id E60E060E0F for ; Wed, 6 Mar 2019 03:52:21 +0000 (UTC) X-QQ-mid: bizesmtp3t1551844333tpny2blsk Received: from [127.0.0.1] (unknown [123.127.41.165]) by esmtp4.qq.com (ESMTP) with id ; Wed, 06 Mar 2019 11:52:12 +0800 (CST) X-QQ-SSF: 00400000002000E0JF40B00A0000000 X-QQ-FEAT: y3iK4Lsvf4A247XXe1xcg605azD0BGdtakNj1IajjBZTaIZgOO7XwfCgbNK/T FjXidAsVO6wZHRxVMB45adWOttmcBMk/hfN+wnaonvx9qBVZpgivMlbhNFI8mbVx55Vcrcy MuA6es3OvvOjfQLBhsuhaQWJ+7SSwwAb36bsaVtbG1H7dsFk+aOtqxq3ER8MUqzoyW/5UbF Vdtd3DSIBgPo6IKF/9ns+MD++zq6D3v4FONFz0L/740MSM1t392D4lsE6Iu+lrd78bxDsRs ZWQTzaYPAH4IK7P8uM/cRzh844Cec095TwraVNP/gLWlS7KO9O9ImuAI5DdDY3R56LWw== X-QQ-GoodBg: 2 Date: Wed, 6 Mar 2019 11:52:06 +0800 From: =?utf-8?Q?=E7=8E=8B=E6=B6=9B=40=E6=B7=B1=E7=9E=B3=E4=BA=91?= To: user-zh , =?utf-8?Q?=E5=BC=A0=E4=BD=9C=E5=B3=B0?= Message-ID: +DA9457624442CB5A Subject: Re: =?utf-8?Q?=E5=A6=82=E4=BD=95=E6=AF=8F=E4=BA=94=E5=88=86=E9=92=9F=E7=BB=9F=E8=AE=A1=E4=B8=80=E6=AC=A1=E5=BD=93=E5=A4=A9=E6=9F=90=E4=B8=AA=E6=B6=88=E6=81=AF=E7=9A=84=E6=80=BB=E6=9D=A1=E6=95=B0?= X-Readdle-Message-ID: c326b0da-bfc3-41fe-934d-a4c388f42ccb@Spark MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="5c7f43ec_66334873_32ad" X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:deepglint.com:qybgforeign:qybgforeign1 X-QQ-Bgrelay: 1 --5c7f43ec_66334873_32ad Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline =E4=BD=A0=E5=A5=BD=EF=BC=8C=E5=A6=82=E6=9E=9C=E6=98=AF=E8=BF=99=E6=A0=B7=E7= =9A=84=E9=9C=80=E6=B1=82=EF=BC=9A=E2=80=9C=E6=8C=89=E4=B8=80=E5=A4=A9=E7=BB= =9F=E8=AE=A1=E6=9F=90=E4=B8=80=E4=B8=AAkey=E4=B8=8A=E6=9C=89=E5=A4=9A=E5=B0= =91=E6=9D=A1=E6=95=B0=E6=8D=AE=EF=BC=8C=E7=BB=9F=E8=AE=A1=E7=BB=93=E6=9E=9C= =E6=AF=8F=E4=BA=94=E5=88=86=E9=92=9F=E8=BE=93=E5=87=BA=E6=9B=B4=E6=96=B0=E4= =B8=80=E6=AC=A1=E2=80=9D=E7=9A=84=E8=AF=9D=EF=BC=8C =E6=88=91=E8=AE=A4=E4=B8=BA=E5=8F=AF=E4=BB=A5=E8=BF=99=E6=A0=B7=EF=BC=9A =E2=80=83=E5=9C=A8=E4=B8=80=E4=B8=AA=E4=B8=80=E5=A4=A9=E7=9A=84windows=E4= =B8=AD=E5=81=9ATupel2=E6=95=B0=E6=8D=AE=E7=9A=84reduce=EF=BC=8C=E7=84=B6=E5= =90=8E=E5=9C=A8=E4=B8=8B=E6=B8=B8=E6=8E=A5=E4=B8=80=E4=B8=AA=E4=BA=94=E5=88= =86=E9=92=9F=E7=9A=84ProcessTimeWindow=EF=BC=8C=E5=9C=A8=E8=BF=99=E4=B8=AA= =E4=BA=94=E5=88=86=E9=92=9F=E7=9A=84windwos=E4=B8=AD=E5=81=9Aevictor(Coun= tEvictor.of(1))=EF=BC=8C=E7=84=B6=E5=90=8E=E8=BE=93=E5=87=BA=E3=80=82 =E2=80=83=E6=AF=94=E5=A6=82=E8=BF=99=E6=A0=B7=EF=BC=9A streamOperator =E2=80=83=E2=80=83.assignTimestampsAndWatermarks(new AscendingTimestampEx= tractor() =7B =E2=80=83=E2=80=83=40Override =E2=80=83=E2=80=83public long extractAscendingTimestamp(EventItem eventIt= em) =7B =E2=80=83=E2=80=83=E2=80=83return eventItem.getWindowEnd(); =E2=80=83=E2=80=83=7D =E2=80=83=E2=80=83=7D) =E2=80=83=E2=80=83.map(eventItem -> Tuple2.of(eventItem.getItemId(), 1L))= =E2=80=83=E2=80=83.keyBy(1) =C2=A0=E2=80=83=E2=80=83// =E4=B8=9C=E5=85=AB=E5=8C=BA=E9=9B=B6=E7=82=B9=E5= =88=B023:59:59:999=E7=9A=84=E6=BB=91=E5=8A=A8=E4=BA=8B=E4=BB=B6=E6=97=B6=E9= =97=B4=E7=AA=97=E5=8F=A3 =E2=80=83=E2=80=83.window(TumblingEventTimeWindows.of(Time.days(1), Time.= hours(+16))) =E2=80=83=E2=80=83// =E5=9C=A8window=E4=B8=ADkey=E4=B8=8A=E7=9A=84=E6=B6=88= =E6=81=AF=E6=9D=A1=E6=95=B0 =E2=80=83=E2=80=83.reduce((x1,x2)->new Tuple2<>(x2.=5F1(),x1.=5F1()+x2.=5F= 2())) =E2=80=83=E2=80=83// =E5=9C=A85=E5=88=86=E9=92=9F=E7=9A=84ProcessTime=E6=BB= =91=E5=8A=A8=E7=AA=97=E5=8F=A3=E9=87=8C=EF=BC=8C=E5=8F=AA=E5=8F=96=E6=9C=80= =E5=90=8E=E4=B8=80=E6=9D=A1=E8=BE=93=E5=87=BA =E2=80=83=E2=80=83.keyBy(1) =E2=80=83=E2=80=83.window(TumblingProcessingTimeWindows.of(Time.minutes(5= ))) =E2=80=83=E2=80=83.evictor(CountEvictor.of(1)) =E2=80=83=E2=80=83.reduce((Reduce=46unction) (value1, value2) -> value2) =E2=80=83=E2=80=83.addSink(textLongSink); =E8=BF=99=E6=98=AF=E6=88=91=E5=9C=A8=E4=BD=BF=E7=94=A8=E8=BF=87=E7=A8=8B=E4= =B8=AD=E5=AE=9E=E6=97=B6=E5=88=B7=E6=96=B0=E6=AF=8F=E5=A4=A9=E7=BB=9F=E8=AE= =A1=E6=95=B0=E6=8D=AE=E7=9A=84=E6=96=B9=E6=B3=95=E3=80=82 --5c7f43ec_66334873_32ad--