Elasticflow (ita)
ElasticFlow adalah sistem pertukaran data aliran elastis sumber terbuka yang mendukung pembentukan pipa aliran elastis yang dapat dihitung antara semua jenis data yang berakhir melalui konfigurasi sederhana, dan melakukan waktu, kuantitatif, konkurensi tinggi, dan layanan data pertukaran tipe multi-tipe. Sistem ini dapat diterapkan pada pertukaran data, mesin pencari umum, layanan penerbitan data, gudang data, dan proyek lainnya.
Apa yang digunakan elasticflow untuk dipecahkan?
- Sebagai sistem pertukaran data, ElasticFlow dapat menulis data ke ujung target dan juga dapat mendukung layanan komputasi dan pemrosesan data selama proses pertukaran data. Ada metode kontrol multi-level dan multi-grain selama proses pertukaran data ElasticFlow, yang memfasilitasi pemetaan lapangan antara "baca end" dan "akhir tulis" data. Selain itu, sistem ini juga memiliki mekanisme kontrol sisi tulis untuk mendukung mekanisme kontrol sinkron dari penulisan multi-tugas ke tempat yang sama.
- Elasticflow dapat ditingkatkan dengan sistem terdistribusi (master/slave) atau dapat dijalankan sebagai satu node, di mana penyebaran terdistribusi akan mendukung penyeimbangan beban tugas otomatis pada level instan untuk memungkinkan pembangunan tugas aliran elastis skala besar.
- Dapat menyelesaikan masalah:
- Sinkronisasi data antara berbagai sumber;
- Data diproses pada sisi perhitungan (seperti pemrosesan inferensi model domain NLP dan CV) di sisi target tulis, seperti akses layanan streaming video;
- Membangun layanan mesin pencari, seperti inkremental, penuh, dan pengindeksan berdasarkan tanggal;
- Skenario lain di mana kontrol pertukaran data diperlukan antara sistem.
Versi
ciri
- Mendukung sistem operasi mode terdistribusi atau satu node
- Mendukung Penjadwalan Tugas Terdistribusi, seperti sistem dapat secara otomatis melakukan penyeimbangan beban tugas antar kelompok
- Mendukung strategi eksekusi bersamaan multi-level, seperti konkurensi pipa, konkurensi tugas dan metode lain untuk mempercepat pemrosesan data
- Mendukung operasi rantai tugas, dan sistem memberikan urutan ketergantungan pada kontrol operasi antar tugas
- Dukungan Penjadwalan Prioritas Tugas, Tugas Prioritas Rendah akan secara otomatis mengecilkan pipa pemrosesan saat sumber daya tidak mencukupi
- Mendukung tugas tingkat abstrak yang mengontrol tugas.
- Mendukung integrasi dan komputasi data, terutama untuk mendukung akses ke layanan eksternal untuk menyediakan pemrosesan inferensi data dari model pembelajaran yang mendalam
Keuntungan Inti
- Pemantauan Kualitas Data yang Dapat Diandalkan
- Setiap bidang dapat dikonfigurasi dengan strategi konversi tipe data sendiri sehingga data dapat ditransmisikan ke tujuan secara penuh dan lossless;
- Memberikan pemantauan runtime real-time untuk membaca pekerjaan rumah, komputasi dan menulis;
- Kontrol aliran elastis
- Tugas berjalan saat memantau tugas berjalan.
- Operasi tugas memiliki kontrol prioritas, dan ketika sumber daya sistem kurang, "lalu lintas" operasi prioritas rendah akan dikendalikan untuk secara otomatis mengurangi ukuran pipa;
- Kontrol Perhitungan Data
- Setelah memperkenalkan terminal komputasi, sistem dapat melakukan layanan perhitungan pada data streaming, dan dapat menyediakan layanan komputasi inferensi melalui API REST atau memuat model pembelajaran mendalam;
- Terminal komputasi dapat secara otomatis mengontrol sistem untuk memulai lebih banyak layanan komputasi sesuai dengan ukuran aliran dan melakukan manajemen penyeimbangan beban;
- Kinerja sinkronisasi yang kuat
- Pemrosesan data dapat diproses secara bersamaan di berbagai tingkatan seperti pipa dan saluran;
- Sistem ini mendukung tugas -tugas virtual, dan beberapa tugas dapat digunakan untuk menyelesaikan pemrosesan data yang sama, dan tugas -tugas virtual dapat mewujudkan kontrol antara beberapa tugas;
- Mekanisme toleransi kesalahan yang kuat
- Sistem ini dapat secara otomatis menerapkan multi-level Lokal/Global RETRY pada tingkat utas, tingkat proses, dan tingkat pekerjaan untuk memastikan operasi tugas yang stabil;
- Sistem ini dimatikan dan menggunakan mode shutdown lunak, yang secara otomatis akan melakukan pendaratan yang aman dari tugas cluster untuk mencegah kehilangan data ketika data kotor memasuki akhir dan membaca.
Dukungan Pembaca
- Hbase 1.x
- Kafka
- RocketMQ 4.x
- Mysql
- Oracle
- files (txt,csv)
Dukungan komputer
- Rest API (POST/JSON)
- Model
Dukungan Penulis
- ElasticSearch 7.x
- Mysql
- Neo4j 3.x
- Vearch
- Hbase 1.x
- Kafka 2.x
Dukungan Pencari
- Vearch
- Kafka
- ElasticSearch
Dokumen
- Lihat wiki untuk dokumentasi terperinci
- Referensi contoh pertukaran data
- Referensi Instalasi dan Penempatan
Antarmuka manajemen visual
Perubahan
Versi 6.0 memiliki peningkatan arsitektur baru ke versi sebelumnya, dan tidak lagi mendukung pembelajaran mendalam secara asli melalui Java.
Pengembangan plug-in EF
- Paket POM:
< dependency >
< groupId >org.elasticflow</ groupId >
< artifactId >elasticflow</ artifactId >
< version >6.0.8</ version >
< scope >system</ scope >
< systemPath >./target/elasticflow.jar</ systemPath >
</ dependency >
- Kode uji pengembangan plugin, misalnya:
@ Before
public void setUp () {
System . setProperty ( "config" , "/work/EF/" );
System . setProperty ( "nodeid" , "1" );
}
@ Test
public void testPlugin () throws Exception {
Run . main ( null );
while ( true ) {
}
} Rencana Pengembangan
- Mendukung LLM untuk akses yang lebih kemampuan
- Optimalkan pemantauan rantai panggilan.
- 6.x Versi Perencanaan Fungsi.
Mengutip elasticflow (ita)
@article { agtabular ,
title = { ElasticFlow (伊塔):ElasticFlow(伊塔)是一个开源弹性流数据交换系统,支持在任意类型数据端之间通过简单配置就可以建立可计算的弹性流管道,并进行定时、定量、高并发、多类型的交换数据服务。系统可应用于数据交换、通用搜索引擎、数据发布服务、数据仓库等项目。 } ,
author = { chengwen } ,
year = { 2023 }
}