នៅពេលដែលយើងសួរចុងក្រោយថា "តើអ្វីទៅជា heck ???" យើងកំពុងសម្លឹងមើល __ __® protocol protocol streaming data platform . ជាមួយនឹងការផ្សាយទិន្នន័យ អ្នកត្រូវធ្វើអ្វីមួយជាមួយវា។ ចុះចតនៅកន្លែងណាមួយដូចជា , , ឬ ឬសាកសួរទិន្នន័យក្នុងយន្តហោះ ដើម្បីពង្រឹង និង/ឬត្រងវាមុនពេលចុះចត។ មានជម្រើសមួយចំនួននៅទីនោះសម្រាប់ក្រោយ ប៉ុន្តែអ្វីដែលធំជាងគេគឺគម្រោងប្រភពបើកចំហ . ការក្រឡេកមើល Flink បាននាំខ្ញុំទៅ ដែលជាប្រធានបទរបស់យើងសព្វថ្ងៃនេះ។ តើ DeltaStream គឺជាអ្វី? តើវាដំណើរការជាមួយ Flink យ៉ាងដូចម្តេច ហើយតើវាជាដៃគូជាមួយ Kafka យ៉ាងដូចម្តេច? Apache Kafka WarpStream Apache Iceberg ផ្កាព្រិល ឥដ្ឋទិន្នន័យ កម្មវិធី Apache Flink DeltaStream តើ Flink ជាអ្វី? Flink ត្រូវបានទទួលយកដំបូងជាគម្រោង Apache ក្នុងខែធ្នូ ឆ្នាំ 2014 ដូច្នេះវាមានរយៈពេលមួយរយៈ។ ការរីកចម្រើននៃដំណើរការស្ទ្រីមបាននាំឱ្យមានការបង្កើនល្បឿននៃការចាប់អារម្មណ៍ និងការប្រើប្រាស់ក្នុងរយៈពេលប៉ុន្មានឆ្នាំចុងក្រោយនេះ។ Flink គឺជាប្រព័ន្ធដែលមានបញ្ហាប្រឈមក្នុងការក្រោកឈរឡើង និងប្រើប្រាស់ខាងក្នុង ដែលទាមទារនូវទេពកោសល្យផ្នែកវិស្វកម្ម។ សូម្បីតែ សេវា ខណៈពេលដែលកាន់តែងាយស្រួល នៅតែមានភាពស្មុគស្មាញ។ ជាឧទាហរណ៍ ការប្រើប្រាស់ Java តម្រូវឱ្យអ្នកសរសេរសំណួរ Java របស់អ្នក បង្កើតឯកសារ jar បង្ហាប់វា បង្ហោះវាទៅ S3 កំណត់ការអនុញ្ញាតរបស់អ្នក ហើយបន្ទាប់មកប្រតិបត្តិវា។ AWS MSF ខ្ញុំនឹងខ្ចីពីគេហទំព័រ Apache Flink នៅទីនេះ។ Apache Flink គឺជាក្របខ័ណ្ឌ និងម៉ាស៊ីនដំណើរការចែកចាយសម្រាប់ការគណនាតាមរដ្ឋលើការស្ទ្រីមទិន្នន័យគ្មានដែនកំណត់ និងគ្មានដែនកំណត់។ Flink ត្រូវបានរចនាឡើងដើម្បីដំណើរការនៅក្នុងបរិស្ថានចង្កោមទូទៅទាំងអស់ និងអនុវត្តការគណនាក្នុងល្បឿនក្នុងអង្គចងចាំ និងក្នុងមាត្រដ្ឋានណាមួយ។ ខ្ញុំមិនចង់ចម្លងអ្វីដែលមាននៅលើគេហទំព័ររបស់ពួកគេទេ ដូច្នេះប្រសិនបើអ្នកមិនច្បាស់អំពី Flink សូមពិនិត្យមើលវា។ ការប្រើប្រាស់ DeltaStream នៅមូលដ្ឋានបំផុតរបស់វា DeltaStream ផ្តល់ឱ្យអ្នកនូវថាមពលនៃ Flink ដោយមិនចាំបាច់ដោះស្រាយជាមួយ Flink ។ ទាំងអស់។ សម្រាប់ការសាកល្បងរបស់ខ្ញុំ ខ្ញុំបានប្រើរបស់ពួកគេ។ សម្រាប់ Web UI; ចំណាំថាពួកគេក៏មាន CLI ដែលខ្ញុំមិនបានសាកល្បង។ មគ្គុទ្ទេសក៍ចាប់ផ្តើមរហ័ស នៅពេលអ្នកចុះឈ្មោះ អ្នកនឹងទទួលបានការសាកល្បងឥតគិតថ្លៃរយៈពេល 14 ថ្ងៃ។ គំរូ Kafka cluster ហៅថា "trial_store" ត្រូវបានបង្វែរឡើងដែលអ្នកអាចប្រើជំនួសឱ្យទិន្នន័យផ្ទាល់ខ្លួនរបស់អ្នកដើម្បីសាកល្បង។ ការបង្ហាញមានប្រធានបទមួយចំនួនដែលត្រូវលេងជាមួយ។ រូបតំណាងនៅក្រោម ACTIONS អនុញ្ញាតឱ្យអ្នកលុបប្រធានបទ ឬមើលព័ត៌មានលម្អិត និងខ្លឹមសារអំពី និងក្នុងប្រធានបទ។ នេះគឺជាព័ត៌មានលម្អិតនៃប្រធានបទ សម្រាប់ជាឯកសារយោង ដែលយើងនឹងប្រើនៅពេលក្រោយ។ ការមើលទំព័រ មិនអីទេ យើងមានចង្កោម Kafka និងប្រធានបទនៅក្នុងវា។ ឥឡូវនេះ ចូរយើងធ្វើអ្វីដែលគួរឱ្យចាប់អារម្មណ៍។ ដូចដែលបានរៀបរាប់នៅក្នុងការណែនាំ អ្វីដែលគួរឱ្យចាប់អារម្មណ៍បំផុតដែលខ្ញុំអាចធ្វើបានគឺបង្កើន និង/ឬត្រងទិន្នន័យខណៈពេលដែលវាកំពុងហោះហើរ មុនពេលវាចុះចតនៅគោលដៅចុងក្រោយរបស់វា ដូចជាឃ្លាំងទិន្នន័យ/ឃ្លាំង/បឹងជាដើម។ សម្រាប់គោលបំណងទាំងនោះ យើងទៅកន្លែងធ្វើការ។ ផ្នែកនេះបានប្រើបន្តិច។ មូលដ្ឋានទិន្នន័យ និងគ្រោងការណ៍នៅក្នុង DeltaStream គឺគ្រាន់តែជាថតរបស់អង្គការប៉ុណ្ណោះ។ អ្នកអាចបង្កើតចំនួន 'n' នៃមូលដ្ឋានទិន្នន័យ ហើយនៅក្នុងមូលដ្ឋានទិន្នន័យ អ្នកអាចមាន 'n' នៃគ្រោងការណ៍។ គ្រោងការណ៍នឹងរក្សាប្លង់និយមន័យនៃវត្ថុ DeltaStream របស់អ្នកដែលត្រូវបានគេស្គាល់ថាជា STREAM, CHANGELOG, MATERIALIZED VIEW និងតារាង។ តារាងទាក់ទងនឹងតារាងមូលដ្ឋានទិន្នន័យនៅក្នុងអ្វីមួយដូចជា PostgreSQL ហើយទិដ្ឋភាពសម្ភារៈគឺជាវិធីដើម្បីបន្តទិន្នន័យនៅក្នុងសំណុំលទ្ធផលដោយមិនដាក់វានៅកន្លែងណាមួយជាក់លាក់។ ខ្ញុំនឹងមិនធ្វើអ្វីជាមួយអ្នកទាំងនៅក្នុងប្លុកនេះទេ។ ខ្ញុំនឹងផ្តោតលើ Stream និង Changelog។ ខ្ញុំកំពុងបង្កើតស្ទ្រីមនៃប្រធានបទ នៅក្នុងចង្កោម Kafka នៅក្នុងរូបថតអេក្រង់ខាងក្រោម។ ខ្ញុំគិតថាវាជាការកំណត់តារាងនៃប្រធានបទ។ យើងបានកំណត់ឈ្មោះវាល ហើយប្រាប់ពួកគេថាតើប្រធានបទណាដែលត្រូវប្រើ និងទម្រង់ទិន្នន័យជាអ្វី។ យើងមិនចាំបាច់បង្ហាញភាពត្រឹមត្រូវពេញលេញអំពីចង្កោម trial_store ដូចដែលវាត្រូវបានកំណត់ជាលំនាំដើមនៅក្នុងប្រអប់បន្សំនៅផ្នែកខាងលើ។ នៅពេលដែលពាក្យបញ្ជានោះត្រូវបានប្រតិបត្តិ វានឹងបង្ហាញនៅក្រោម TestDB.public។ បន្ទាប់មកខ្ញុំអាចសួរវាដោយប្រើអ្វីមួយដូចជា SELECT * FROM PAGEVIEWS ហើយខ្ញុំនឹងចាប់ផ្តើមឃើញទិន្នន័យនៅក្នុងផ្ទាំងលទ្ធផលនៅខាងក្រោម។ ការមើលទំព័រ បន្ទាប់ខ្ញុំប្រកាសអំពីការផ្លាស់ប្តូរកំណត់ហេតុដែលគាំទ្រដោយប្រធានបទ និងបញ្ជាដោយ UserID ។ កំណត់ហេតុផ្លាស់ប្តូរគឺស្រដៀងនឹងការផ្សាយ ប៉ុន្តែអនុញ្ញាតឱ្យអ្នកបកស្រាយព្រឹត្តិការណ៍នៅក្នុងប្រធានបទជាព្រឹត្តិការណ៍ UPSERT ។ ព្រឹត្តិការណ៍ទាមទារសោចម្បង; DeltaStream បកស្រាយព្រឹត្តិការណ៍នីមួយៗជាការបញ្ចូល ឬធ្វើបច្ចុប្បន្នភាពសម្រាប់សោចម្បងដែលបានផ្តល់ឱ្យ។ ក្នុងករណីនេះ កំណត់ហេតុផ្លាស់ប្តូរឆ្លុះបញ្ចាំងពីព័ត៌មានលម្អិតជាក់លាក់ដោយអ្នកប្រើប្រាស់ ដូចជាភេទ និងចំណាប់អារម្មណ៍ជាដើម។ របស់អ្នកប្រើ នេះជាកន្លែងដែលយើងចាប់ផ្តើមសប្បាយខ្លះ។ ខ្ញុំនឹងបង្កើតស្ទ្រីមថ្មីដែលបង្កើន ជាមួយទិន្នន័យពី changelog ដោយប្រើ ជាតម្លៃគន្លឹះដើម្បីចូលរួម។ ឥឡូវនេះវាផ្តល់ឱ្យខ្ញុំនូវប្រធានបទតែមួយគត់នៅក្នុងចង្កោមជាមួយនឹងទិន្នន័យពីប្រធានបទពីរផ្សេងគ្នា។ ពីទីនេះ ខ្ញុំអាចត្រងវាដោយប្រើអ្វីមួយដូចជា regionid ហើយសរសេរលទ្ធផលនៃសំណួរនោះទៅកាន់គោលដៅចុងក្រោយដូចជា ឃ្លាំងទិន្នន័យ ឃ្លាំង ឬបឹង។ នេះអនុញ្ញាតឱ្យខ្ញុំពង្រឹង និងត្រងទិន្នន័យក្នុងជើងហោះហើរ មុនពេលចុះចត ដូច្នេះវាធ្វើអោយប្រសើរឡើងនូវភាពយឺតយ៉ាវ និងកាត់បន្ថយការចំណាយលើការគណនា និងការផ្ទុក។ ការមើលទំព័រ user_log userid សង្ខេប ដូច្នេះតើ DeltaStream គឺជាអ្វី? វាជាវិធីដ៏សាមញ្ញមួយក្នុងការប្រើ Apache Flink ដោយមិនចាំបាច់ដឹងអ្វីអំពីវា ឬធ្វើអ្វីដោយផ្ទាល់ជាមួយវា។ អ្នកបានឃើញពីឧទាហរណ៍របស់ខ្ញុំពីរបៀបដែលវាសាមញ្ញក្នុងការភ្ជាប់ទៅ Apache Kafka ហើយបន្ទាប់មកអាន ចូលរួម និងត្រងទិន្នន័យ។ ការតភ្ជាប់ដែលគាំទ្របច្ចុប្បន្នផ្សេងទៀតគឺ Kinesis, PostgreSQL, Snowflake, និង Databricks ហើយខ្ញុំត្រូវបានគេប្រាប់ថា ClickHouse និង Iceberg នឹងមានក្នុងពេលឆាប់ៗនេះ។ ទីបំផុត DeltaStream ផ្តល់ឱ្យអ្នកនូវថាមពលរបស់ Apache Flink ដោយមិនចាំបាច់ដោះស្រាយជាមួយ Apache Flink ហើយអ្នកអាចធ្វើវាដោយប្រើ SQL ជំនួសឱ្យ Java ។ ប្រសិនបើអ្នកកំពុងដោះស្រាយជាមួយការផ្សាយទិន្នន័យ ឬចង់អនុវត្តវា នេះពិតជាដំណោះស្រាយដ៏ឆ្លាតវៃ និងងាយស្រួលបំផុត។ សូមពិនិត្យមើលអត្ថបទផ្សេងទៀតរបស់ខ្ញុំ What the Heck is… នៅតំណភ្ជាប់ខាងក្រោម៖ តើ DuckDB គឺជាអ្វី? តើម៉ាឡូយជាអ្វី? តើ PRQL គឺជាអ្វី? តើអ្វីទៅដែលហៅថា GlareDB? តើ SeaTunnel ជាអ្វី? តើ LanceDB គឺជាអ្វី? តើ SDF គឺជាអ្វី? តើ Paimon ជាអ្វី? អ្វីទៅជាប្រូតុង? តើ PuppyGraph គឺជាអ្វី? តើ GPTScript គឺជាអ្វី? តើ WarpStream គឺជាអ្វី? **