สร้างไปป์ไลน์การสตรีมแบบครบวงจรด้วยพิมพ์เขียวบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink ได้ภายในคลิกเดียว เรียนรู้เพิ่มเติม
ข้อมูลทั่วไป
การวิเคราะห์เชิงโต้ตอบช่วยให้คุณสตรีมการสํารวจข้อมูลได้แบบเรียลไทม์ ด้วยการสืบค้นหรือโปรแกรมเฉพาะกิจ คุณจะสามารถตรวจสอบสตรีมจาก Amazon MSK หรือ Amazon Kinesis Data Streams และเห็นภาพว่าข้อมูลมีลักษณะอย่างไรภายในสตรีมเหล่านั้น ตัวอย่างเช่น คุณสามารถดูว่าหน่วยวัดแบบเรียลไทม์ที่ประมวลผลค่าเฉลี่ยในช่วงเวลาหนึ่งทำงานอย่างไร และส่งข้อมูลรวมไปยังปลายทางที่คุณเลือก การวิเคราะห์เชิงโต้ตอบยังช่วยในการพัฒนาแอปพลิเคชันการประมวลผลสตรีมในลักษณะทวนซ้ำอีกด้วย การสืบค้นที่คุณสร้างจะอัปเดตอย่างต่อเนื่องเมื่อมีข้อมูลใหม่เข้ามา คุณสามารถใช้บริการที่มีการจัดการของ Amazon สำหรับ Apache Flink Studio เพื่อปรับใช้การสืบค้นเหล่านี้เพื่อให้ทำงานอย่างต่อเนื่องโดยเปิดใช้งานการปรับขนาดอัตโนมัติและการสำรองข้อมูลสถานะที่คงที่
เริ่มต้นใช้งาน
บริการที่มีการจัดการของ Amazon สำหรับ Apache Flink ปรับขนาดแอปพลิเคชันของคุณได้อย่างยืดหยุ่นเพื่อรองรับอัตราการโอนถ่ายข้อมูลของสตรีมต้นทางและความซับซ้อนในการสืบค้นสำหรับสถานการณ์ส่วนใหญ่ หากต้องการข้อมูลโดยละเอียดเกี่ยวกับขีดจำกัดในการให้บริการของแอปพลิเคชัน Apache Flink โปรดไปที่หัวข้อ “ขีดจำกัด” ในคู่มือนักพัฒนาเกี่ยวกับบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink
รองรับ เมื่อใช้ Apache Flink DataStream Connectors แอปพลิเคชันบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink จะสามารถใช้ AWS Glue Schema Registry ซึ่งเป็นคุณสมบัติแบบไม่ต้องใช้เซิร์ฟเวอร์ของ AWS Glu ได้ คุณสามารถผสานรวม Apache Kafka, Amazon MSK และ Amazon Kinesis Data Streams ซึ่งเป็นซิงก์หรือแหล่งที่มาเข้ากับเวิร์กโหลดของบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink ได้ โปรดไปที่ คู่มือนักพัฒนาเกี่ยวกับการลงทะเบียนสคีมาของ AWS Glue เพื่อเริ่มต้นใช้งานและเรียนรู้เพิ่มเติม
แนวคิดสำคัญ
- อินพุต: อินพุตคือแหล่งที่มาของการสตรีมสําหรับแอปพลิเคชันของคุณ ในการกําหนดค่าอินพุต คุณจะต้องแมปแหล่งสตรีมมิงกับ Data Stream การไหลเวียนของข้อมูลจากแหล่งที่มาของข้อมูลไปยัง Data Stream ของคุณ คุณประมวลผลข้อมูลจาก Data Stream เหล่านี้โดยใช้โค้ดแอปพลิเคชันของคุณเอง โดยส่งข้อมูลที่ประมวลผลแล้วไปยัง Data Stream หรือปลายทางลำดับถัดไป คุณเพิ่มอินพุตภายในโค้ดแอปพลิเคชันสำหรับแอปพลิเคชัน Apache Flink และโน้ตบุ๊ก Studio และผ่าน API สำหรับแอปพลิเคชันบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink
- โค้ดแอปพลิเคชัน:โค้ดแอปพลิเคชันคือชุดของตัวดำเนินการ Apache Flink ที่ประมวลผลอินพุตและสร้างเอาต์พุต ในรูปแบบที่ง่ายที่สุด โค้ดแอปพลิเคชันสามารถเป็นตัวดำเนินการ Apache Flink เพียงตัวเดียวที่อ่านจาก Data Stream ที่เชื่อมโยงกับแหล่งสตรีมมิง และเขียนไปยัง Data Stream อีกจุดหนึ่งที่เชื่อมโยงกับเอาต์พุต สำหรับโน้ตบุ๊ก Studio นี่อาจเป็นการสืบค้น “select” ของ Flink SQL แบบธรรมดา โดยผลลัพธ์จะแสดงในบริบทภายในโน้ตบุ๊ก คุณสามารถเขียนโค้ด Apache Flink ในภาษาที่รองรับสำหรับแอปพลิเคชันบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink หรือโน้ตบุ๊ก Studio ก็ได้
- เอาต์พุต: จากนั้นคุณสามารถเลือกกำหนดค่าเอาต์พุตของแอปพลิเคชันเพื่อคงข้อมูลไปยังปลายทางภายนอกได้ โดยเพิ่มอินพุตเหล่านี้ภายในโค้ดแอปพลิเคชันสำหรับโน้ตบุ๊กสตูดิโอและแอปพลิเคชันบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink
ถาม: บริการนี้รองรับโค้ดแอปพลิเคชันใดบ้าง
การจัดการแอปพลิเคชัน
- การตรวจสอบ บริการที่มีการจัดการของ Amazon สำหรับ Apache Flink ในคู่มือนักพัฒนาเกี่ยวกับบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink
- การตรวจสอบบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink ในคู่มือนักพัฒนาเกี่ยวกับบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink Studio
ถาม: ฉันจะจัดการและควบคุมการเข้าถึงแอปพลิเคชันบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink ได้อย่างไร
- การให้สิทธิ์ในคู่มือนักพัฒนาเกี่ยวกับบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink
- การให้สิทธิ์ในคู่มือนักพัฒนาเกี่ยวกับบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink Studio
ถาม: บริการที่มีการจัดการของ Amazon สำหรับ Apache Flink จะปรับขนาดแอปพลิเคชันของฉันอย่างไร
บริการที่มีการจัดการของ Amazon สำหรับ Apache Flink ปรับขนาดแอปพลิเคชันของคุณได้อย่างยืดหยุ่นเพื่อรองรับอัตราการโอนถ่ายข้อมูลของสตรีมต้นทางและความซับซ้อนในการสืบค้นสำหรับสถานการณ์ส่วนใหญ่ ความจุของบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink ในรูปแบบของ Amazon KPU หนึ่ง KPU จะมี 1 vCPU และหน่วยความจํา 4 GB
ราคาและการเรียกเก็บค่าบริการ
คุณจะถูกเรียกเก็บค่าบริการรายชั่วโมงตามจำนวน Amazon KPU ที่ใช้เพื่อเรียกใช้แอปพลิเคชันการสตรีมของคุณ KPU เดียวคือหน่วยของความสามารถในการประมวลผลสตรีมที่ประกอบด้วยการประมวลผล 1 vCPU และหน่วยความจำ 4 GB บริการที่มีการจัดการของ Amazon สำหรับ Apache Flink จะทำการปรับจำนวน KPU ที่แอปพลิเคชันประมวลผลสตรีมของคุณต้องใช้โดยอัตโนมัติเนื่องจากความต้องการหน่วยความจำและการประมวลผลแตกต่างกันไปตามความซับซ้อนของการประมวลผลและอัตราการโอนถ่ายข้อมูลการสตรีมที่ประมวลผล
การสร้างแอปพลิเคชัน Apache Flink
การเขียนโค้ดแอปพลิเคชันสําหรับแอปพลิเคชันโดยใช้ Apache Flink ใน IDE ของคุณ
DataStream <GameEvent> rawEvents = env.addSource(
New KinesisStreamSource(“input_events”));
DataStream <UserPerLevel> gameStream =
rawEvents.map(event - > new UserPerLevel(event.gameMetadata.gameId,
event.gameMetadata.levelId,event.userId));
gameStream.keyBy(event -> event.gameId)
.keyBy(1)
.window(TumblingProcessingTimeWindows.of(Time.minutes(1)))
.apply(...) - > {...};
gameStream.addSink(new KinesisStreamSink("myGameStateStream"));
คุณสามารถสร้างตัวดำเนินการแบบกำหนดเองได้หากการทำงานนี้ไม่ตรงกับความต้องการของคุณ ค้นหาตัวอย่างเพิ่มเติมได้ในหัวข้อตัวดำเนินการในคู่มือนักพัฒนาเกี่ยวกับบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink คุณสามารถดูรายชื่อตัวดําเนินการ Apache Flink ทั้งหมดได้ใน เอกสารประกอบ Apache Flink
- แหล่งที่มาของข้อมูลการสตรีม: Amazon Managed Streaming สำหรับ Apache Kafka (Amazon MSK), Amazon Kinesis Data Streams ปลายทางหรือซิงก์: Amazon Kinesis Data Streams
- Amazon Kinesis Data Firehose, Amazon DynamoDB, Amazon Elasticsearch Service และ Amazon S3 (ผ่านการผสานรวมการซิงค์ไฟล์)
ถาม: แอปพลิเคชันบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink สามารถทําซ้ำข้อมูลข้ามสตรีมและหัวข้อต่างๆ ได้หรือไม่
การสร้างแอปพลิเคชันบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink Studio ในโน้ตบุ๊กที่มีการจัดการ
ถาม: ฉันจะพัฒนาแอปพลิเคชัน Studio ได้อย่างไร
คุณสามารถเริ่มต้นจากบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink Studio, Amazon Kinesis Data Streams หรือคอนโซล Amazon MSK ได้ในไม่กี่ขั้นตอนเพื่อเปิดใช้โน้ตบุ๊กแบบไม่ต้องใช้เซิร์ฟเวอร์เพื่อสืบค้น Data Stream ได้ทันทีและดำเนินการวิเคราะห์ข้อมูลเชิงโต้ตอบได้
การวิเคราะห์ข้อมูลเชิงโต้ตอบ: คุณสามารถเขียนโค้ดในโน้ตบุ๊กด้วยภาษา SQL, Python หรือ Scala เพื่อโต้ตอบกับข้อมูลการสตรีมของคุณ โดยมีเวลาตอบกลับการสืบค้นเป็นวินาที คุณสามารถใช้การแสดงภาพในตัวเพื่อสำรวจข้อมูล ดูข้อมูลเชิงลึกแบบเรียลไทม์เกี่ยวกับข้อมูลการสตรีมของคุณจากภายในโน้ตบุ๊ก และพัฒนาแอปพลิเคชันการประมวลผลสตรีมที่ขับเคลื่อนโดย Apache Flink
เมื่อโค้ดของคุณพร้อมที่จะทำงานเป็นแอปพลิเคชันที่ใช้งานจริงแล้ว คุณสามารถเปลี่ยนผ่านไปเป็นแอปพลิเคชันประมวลผลสตรีมที่ประมวลผลข้อมูลในระดับกิกะไบต์ต่อวินาทีได้ในขั้นตอนเดียว โดยไม่ต้องใช้เซิร์ฟเวอร์
แอปพลิเคชันการประมวลผลสตรีม: เมื่อคุณพร้อมที่จะเลื่อนระดับโค้ดของคุณไปเป็นการใช้งานจริงแล้ว คุณสามารถสร้างโค้ดได้โดยคลิก “ปรับใช้เป็นแอปพลิเคชันการประมวลผลสตรีม” ในอินเทอร์เฟซโน้ตบุ๊กหรือออกคำสั่งเดียวใน CLI Studio จะดูแลการจัดการโครงสร้างพื้นฐานทั้งหมดที่จำเป็นเพื่อให้คุณเรียกใช้แอปพลิเคชันการประมวลผลสตรีมได้ในวงกว้าง โดยเปิดใช้งานการปรับขนาดอัตโนมัติและสถานะคงที่ เช่นเดียวกับในแอปพลิเคชันบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink
ถาม: โค้ดแอปพลิเคชันของฉันจะมีลักษณะอย่างไร
คุณสามารถเขียนโค้ดในโน้ตบุ๊กในภาษาที่คุณต้องการได้ทั้ง SQL, Python หรือ Scala โดยใช้ Table API ของ Apache Flink Table API เป็น API นามธรรมและเชิงสัมพันธ์ระดับสูงที่รองรับซูเปอร์เซ็ตของความสามารถ SQL โดยมีการดำเนินการที่คุณคุ้นเคย เช่น เลือก กรอง ผสานรวม จัดกลุ่มตาม รวม และอื่นๆ พร้อมด้วยคอนเซ็ปต์เฉพาะสตรีม เช่น วินโดว์ คุณจะใช้ % เพื่อระบุภาษาที่จะใช้ในส่วนของโน้ตบุ๊ก และสามารถสลับไปมาระหว่างภาษาได้ ตัวแปรเป็นปลั๊กอิน Apache Zeppelin คุณจึงสามารถระบุภาษาหรือเอนจิ้นประมวลผลข้อมูลสำหรับแต่ละส่วนของโน้ตบุ๊กได้ คุณยังสามารถสร้างฟังก์ชันที่ผู้ใช้กําหนดเองและอ้างอิงจากฟังก์ชันดังกล่าวเพื่อปรับปรุงฟังก์ชันการทํางานของโค้ดได้อีกด้วย
ถาม: ระบบรองรับการดำเนินการ SQL ใดบ้าง
คุณสามารถดําเนินการ SQL ดังต่อไปนี้
- สแกนและกรอง (SELECT, WHERE)
- การรวม (GROUP BY, GROUP BY WINDOW, HAVING)
- เซ็ต (UNION, UNIONALL, INTERSECT, IN, EXISTS)
- เรียงลำดับ (ORDER BY, LIMIT)
- ผสานรวม (INNER, OUTER, Timed Window – BETWEEN, AND, Joining with Temporal Tables – ตารางที่ติดตามการเปลี่ยนแปลงเมื่อเวลาผ่านไป)
- Top-N
- การลบข้อมูลซ้ำซ้อน
- การจดจํารูปแบบ
การสืบค้นเหล่านี้บางส่วน เช่น GROUP BY, OUTER JOIN และ Top-N เป็นผลลัพธ์ที่อัปเดตสำหรับการสตรีมข้อมูล ซึ่งหมายความว่าผลลัพธ์จะมีการอัปเดตอย่างต่อเนื่องในขณะที่ข้อมูลการสตรีมได้รับการประมวลผล นอกจากนี้ยังรองรับคําสั่ง DDL อื่นๆ เช่น CREATE, ALTER และ DROP โปรดดูการสืบค้นและตัวอย่างทั้งหมดได้ในเอกสารประกอบเกี่ยวกับการสืบค้นของ Apache Flink
ถาม: ระบบรองรับ Python และ Scala อย่างไร
Table API ของ Apache Flink รองรับ Python และ Scala ผ่านการรวมภาษาโดยใช้สตริง Python และนิพจน์ Scala การดำเนินการที่รองรับจะคล้ายกับการดำเนินการ SQL ที่รองรับอย่างมาก รวมถึงการเลือก การเรียงลำดับ การจัดกลุ่ม การผสานรวม การกรอง และการวินโดว์ การดําเนินการและตัวอย่างทั้งหมดระบุอยู่ในคู่มือนักพัฒนาของเรา
Q: ระบบรองรับ Apache Flink และ Apache Zeppelin เวอร์ชันใด
หากต้องการข้อมูลเพิ่มเติมเกี่ยวกับเวอร์ชันของ Apache Flink ที่รองรับ โปรดไปที่หน้าบันทึกย่อประจำรุ่นของบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink หน้านี้ยังมีเวอร์ชันต่างๆ ของ Apache Zeppelin, Apache Beam, Java, Scala, Python และ AWS SDK ที่บริการที่มีการจัดการของ Amazon สำหรับ Apache Flink รองรับอีกด้วย
ถาม: ตามค่าเริ่มต้นแล้ว การผสานรวมใดบ้างที่รองรับในแอปพลิเคชันบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink Studio
- แหล่งที่มาของข้อมูล: Amazon Managed Streaming สำหรับ Apache Kafka (Amazon MSK), Amazon Kinesis Data Streams, Amazon S3
- ปลายทางหรือซิงค์: Amazon MSK, Amazon Kinesis Data Streams และ Amazon S3
ถาม: ระบบรองรับการผสานรวมแบบกําหนดเองหรือไม่
คุณสามารถกำหนดค่าการผสานรวมเพิ่มเติมได้ด้วยขั้นตอนเพิ่มเติมไม่กี่ขั้นตอนและใส่โค้ด Apache Flink (Python, Scala หรือ Java) เพิ่มอีกไม่กี่บรรทัดเพื่อกำหนดการเชื่อมต่อกับการผสานการทำงานทั้งหมดที่ Apache Flink รองรับ ซึ่งรวมถึงปลายทาง เช่น Amazon OpenSearch Service, Amazon ElastiCache สำหรับ Redis, Amazon Aurora, Amazon Redshift, Amazon DynamoDB, Amazon Keyspaces และอื่นๆ คุณสามารถแนบไฟล์ปฏิบัติการสำหรับตัวเชื่อมต่อแบบกำหนดเองเหล่านี้ได้เมื่อคุณสร้างหรือกำหนดค่าแอปพลิเคชันบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink Studio
ข้อตกลงระดับการให้บริการ
ถาม: SLA ของบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink รับประกันอะไรบ้าง
ข้อตกลงระดับการให้บริการ (SLA) ของเรารับประกันเปอร์เซ็นต์เวลาทํางานรายเดือนอย่างน้อย 99.9% สําหรับบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink
ถาม: ฉันจะทราบได้อย่างไรว่าฉันมีสิทธิ์ได้รับเครดิตบริการ SLA หรือไม่
คุณมีสิทธิ์ได้รับเครดิตบริการ SLA สําหรับบริการที่มีการจัดการของ Amazon สำหรับ Apache Flink ภายใต้ SLA ของบริการที่มีการจัดการของ Amazon สำหรับ Apache Flinkหาก Availability Zone มากกว่าหนึ่งแห่งที่คุณกําลังทํางานอยู่ภายใน AWS Region เดียวกันมีเปอร์เซ็นต์เวลาทํางานรายเดือนน้อยกว่า 99.9% ในระหว่างรอบการเรียกเก็บเงินรายเดือนในรอบใดก็ตาม สำหรับรายละเอียดเกี่ยวกับข้อกำหนดและเงื่อนไข SLA ทั้งหมด รวมถึงรายละเอียดเกี่ยวกับวิธีการยื่นคำร้อง โปรดไปที่หน้ารายละเอียด บริการที่มีการจัดการของ Amazon สำหรับ Apache Flink SLA
เริ่มต้นใช้งานบริการวิเคราะห์ข้อมูลของ Amazon Kinesis
ไปที่หน้าแสดงราคาบริการวิเคราะห์ข้อมูลของ Amazon Kinesis
เรียนรู้วิธีใช้บริการวิเคราะห์ข้อมูลของ Amazon Kinesis ในคู่มือสำหรับ SQL หรือ Apache Flink แบบทีละขั้นตอน
สร้างแอปพลิเคชันการสตรีมเป็นครั้งแรกจากคอนโซลบริการวิเคราะห์ข้อมูลของ Amazon Kinesis