Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Apakah alat dan rangka kerja data besar yang mesti diketahui oleh pembangun Java?

Apakah alat dan rangka kerja data besar yang mesti diketahui oleh pembangun Java?

PHPz
PHPzke hadapan
2023-05-13 23:49:121843semak imbas

1. MongoDB - pangkalan data berorientasikan dokumen yang paling popular, merentas platform.

MongoDB ialah pangkalan data berdasarkan storan fail teragih, ditulis dalam bahasa C++. Direka bentuk untuk menyediakan penyelesaian storan data berprestasi tinggi berskala untuk aplikasi web. Prestasi aplikasi bergantung pada prestasi pangkalan data MongoDB adalah yang paling kaya dengan ciri di kalangan pangkalan data bukan perhubungan dan paling seperti pangkalan data hubungan Dengan keluaran MongoDB 3.4, keupayaan senario aplikasinya telah diperluaskan lagi.

Kelebihan teras MongoDB ialah model dokumennya yang fleksibel, set replika yang sangat tersedia dan gugusan sharded yang boleh skala. Anda boleh cuba memahami MongoDB dari beberapa aspek, seperti pemantauan masa nyata alat MongoDB, penggunaan memori dan kerosakan halaman, bilangan sambungan, operasi pangkalan data, set replikasi, dsb.

Apakah alat dan rangka kerja data besar yang mesti diketahui oleh pembangun Java?

2. Elasticsearch - enjin carian RESTful yang diedarkan untuk awan.

ElasticSearch ialah pelayan carian berdasarkan Lucene. Ia menyediakan enjin carian teks penuh berkemampuan berbilang pengguna yang diedarkan berdasarkan antara muka web yang RESTful. Elasticsearch, dibangunkan di Java dan dikeluarkan sebagai sumber terbuka di bawah syarat lesen Apache, ialah enjin carian peringkat perusahaan yang popular.

ElasticSearch bukan sahaja enjin carian teks penuh, tetapi juga storan dokumen masa nyata yang diedarkan, di mana setiap medan adalah data diindeks dan ia juga merupakan enjin carian teragih dengan masa nyata keupayaan analisis Dan ia boleh dikembangkan kepada ratusan pelayan untuk menyimpan dan memproses petabait data. ElasticSearch menggunakan Lucene untuk melengkapkan fungsi pengindeksannya di peringkat bawah, jadi banyak konsep asasnya berasal daripada Lucene.

Apakah alat dan rangka kerja data besar yang mesti diketahui oleh pembangun Java?

3. Cassandra - sistem pengurusan pangkalan data teragih sumber terbuka, pada asalnya dibangunkan oleh Facebook, direka untuk mengendalikan sejumlah besar data pada banyak pelayan komoditi, menyediakan ketersediaan tinggi, tiada Tunggal titik kegagalan.

Apache Cassandra ialah sistem pangkalan data NoSQL yang diedarkan sumber terbuka. Ia menggabungkan model data Google BigTable dengan seni bina Amazon Dynamo yang diedarkan sepenuhnya. Ia adalah sumber terbuka pada tahun 2008. Sejak itu, disebabkan kebolehskalaan yang baik, Cassandra telah diterima pakai oleh tapak web Web 2.0 seperti Digg dan Twitter, dan telah menjadi penyelesaian penyimpanan data berstruktur teragih yang popular.

Oleh kerana Cassandra ditulis dalam Java, ia secara teorinya boleh dijalankan pada mesin dengan JDK6 dan ke atas JDK yang diuji secara rasmi termasuk OpenJDK dan JDK Sun. Perintah operasi Cassandra adalah serupa dengan pangkalan data hubungan yang biasa kami kendalikan Bagi rakan-rakan yang biasa dengan MySQL, operasi akan mudah untuk dimulakan.

Apakah alat dan rangka kerja data besar yang mesti diketahui oleh pembangun Java?

4. Redis - storan struktur data dalam memori sumber terbuka (berlesen BSD), digunakan sebagai pangkalan data, cache dan broker mesej.

Redis ialah pangkalan data Nilai Kunci jenis log sumber terbuka yang ditulis dalam bahasa ANSI C, menyokong rangkaian, boleh berasaskan memori dan berterusan serta menyediakan API dalam berbilang bahasa. Redis mempunyai tiga ciri utama yang membezakannya daripada banyak pesaing lain: Redis ialah pangkalan data yang menyimpan data sepenuhnya dalam ingatan, menggunakan cakera hanya untuk tujuan kegigihan Redis mempunyai set jenis data yang agak kaya berbanding dengan banyak sistem storan data nilai kunci ; Redis boleh menyalin data ke mana-mana nombor

5. Hazelcast - grid data memori sumber terbuka berdasarkan Java.

Hazelcast ialah grid data dalam memori yang menyediakan pengaturcara Java dengan transaksi kritikal misi dan aplikasi memori peringkat trilion. Walaupun Hazelcast tidak mempunyai apa yang dipanggil "Master", ia masih mempunyai nod Pemimpin (ahli tertua konsep ini serupa dengan Pemimpin dalam ZooKeeper, tetapi prinsip pelaksanaannya berbeza sama sekali). Pada masa yang sama, data dalam Hazelcast diedarkan, dan setiap ahli memegang sebahagian daripada data dan data sandaran yang sepadan, yang juga berbeza daripada ZooKeeper.

Kemudahan aplikasi Hazelcast disukai oleh pembangun, tetapi jika anda ingin menggunakannya, anda perlu mempertimbangkannya dengan teliti.

6. EHCache - cache edaran Java sumber terbuka yang digunakan secara meluas. Terutamanya untuk cache umum, Java EE dan bekas ringan.

EhCache ialah rangka kerja caching dalam proses Java tulen, yang pantas dan berkeupayaan Ia adalah CacheProvider lalai dalam hibernate. Ciri-ciri utama adalah: cepat dan mudah, dengan pelbagai strategi cache data mempunyai dua tahap, memori dan cakera, jadi tidak perlu risau tentang isu-isu kapasiti data akan ditulis ke cakera semasa memulakan semula mesin maya; ia boleh diakses melalui RMI dan caching API yang boleh dipasang dengan cara lain mempunyai antara muka mendengar untuk cache dan pengurus cache menyokong berbilang contoh pengurus cache, serta berbilang kawasan cache untuk satu contoh;

7 Hadoop - rangka kerja perisian sumber terbuka yang ditulis dalam Java, digunakan untuk storan teragih dan untuk pengguna data yang sangat besar boleh membangunkan atur cara teragih tanpa memahami butiran asas pengedaran.

Gunakan sepenuhnya kluster untuk pengkomputeran dan storan berkelajuan tinggi. Hadoop melaksanakan sistem fail teragih (Hadoop Distributed File System), dirujuk sebagai HDFS. Reka bentuk teras rangka kerja Hadoop ialah: HDFS dan MapReduce. HDFS menyediakan storan untuk data besar-besaran, dan MapReduce menyediakan pengiraan untuk data besar-besaran.

Apakah alat dan rangka kerja data besar yang mesti diketahui oleh pembangun Java?

8. Solr - platform carian perusahaan sumber terbuka, ditulis dalam Java, daripada projek Apache Lucene.

Solr ialah pelayan aplikasi carian peringkat perusahaan bebas yang menyediakan antara muka API yang serupa dengan perkhidmatan Web. Pengguna boleh menyerahkan fail XML dalam format tertentu ke pelayan enjin carian melalui permintaan http untuk menjana indeks mereka juga boleh membuat permintaan carian melalui operasi Http Get dan mendapatkan hasil yang dikembalikan dalam format XML.

Seperti ElasticSearch, ia juga berdasarkan Lucene, tetapi ia memanjangkannya untuk menyediakan bahasa pertanyaan yang lebih kaya daripada Lucene, sambil boleh dikonfigurasikan, berskala dan mengoptimumkan prestasi pertanyaan.

9. Spark - projek paling aktif dalam Yayasan Perisian Apache, ialah rangka kerja pengkomputeran kluster sumber terbuka.

Spark ialah persekitaran pengkomputeran kluster sumber terbuka yang serupa dengan Hadoop, tetapi terdapat beberapa perbezaan antara keduanya yang menjadikan Spark unggul dalam beban kerja tertentu Dengan kata lain, Spark mendayakan set data teragih dalam memori, yang selain dapat menyediakan pertanyaan interaktif, juga boleh mengoptimumkan beban kerja berulang.

Spark dilaksanakan dalam bahasa Scala dan menggunakan Scala sebagai rangka kerja aplikasinya. Tidak seperti Hadoop, Spark dan Scala disepadukan rapat, dan Scala boleh beroperasi semudah objek koleksi tempatan.

10 Memcached - sistem cache memori teragih umum.

Memcached ialah sistem caching teragih yang pada asalnya dibangunkan oleh Danga Interactive untuk LiveJournal, tetapi digunakan oleh banyak perisian (seperti MediaWiki). Sebagai pelayan cache teragih berkelajuan tinggi, Memcached mempunyai ciri-ciri berikut: protokol mudah, pemprosesan acara berdasarkan libevent dan storan memori terbina dalam.

11 Apache Hive - Menyediakan lapisan seperti SQL di atas Hadoop.

Hive ialah platform gudang data berdasarkan Hadoop. Melalui sarang, kerja ETL boleh dilakukan dengan mudah. hive mentakrifkan bahasa pertanyaan yang serupa dengan SQL, yang boleh menukar SQL tulisan pengguna kepada program Mapreduce yang sepadan untuk pelaksanaan berdasarkan Hadoop. Pada masa ini, versi Apache Hive 2.1.1 telah dikeluarkan.

12 Apache Kafka - sistem pemesejan langganan teragih berkemampuan tinggi yang pada asalnya dibangunkan oleh LinkedIn.

Apache Kafka ialah projek sistem pemesejan sumber terbuka yang ditulis dalam Scala. Matlamat projek ini adalah untuk menyediakan platform bersatu, berkemampuan tinggi, kependaman rendah untuk memproses data masa nyata. Kafka mengekalkan mesej yang dibezakan mengikut kelas, dipanggil topik. Pengeluar menerbitkan mesej kepada topik Kafka, dan pengguna mendaftar dengan topik dan menerima mesej yang diterbitkan untuk topik ini.

13 Akka - kit alat untuk membina aplikasi berpandukan mesej yang sangat serentak, diedarkan dan berdaya tahan pada JVM.

Akka ialah pustaka yang ditulis dalam Scala yang memudahkan penulisan aplikasi model pelakon yang bertoleransi kesalahan dan sangat berskala dalam Java dan Scala. Ia telah berjaya digunakan dalam industri telekomunikasi, dan sistem itu hampir tidak pernah jatuh.

14. HBase - sumber terbuka, bukan perhubungan, pangkalan data teragih, dimodelkan menggunakan BigTable Google, ditulis dalam Java dan dijalankan pada HDFS.

Berbeza daripada produk data besar komersial seperti FUJITSU Cliq, HBase ialah pelaksanaan sumber terbuka Google Bigtable Serupa dengan Google Bigtable, yang menggunakan GFS sebagai sistem storan failnya, HBase menggunakan Hadoop HDFS sebagai sistem storan failnya. ; Google menjalankan MapReduce untuk pemprosesan HBase juga menggunakan Hadoop MapReduce untuk memproses data besar dalam Bigtable Google menggunakan Chubby sebagai perkhidmatan kerjasama, dan HBase menggunakan Zookeeper sebagai rakan sejawat.

15 Neo4j - pangkalan data graf sumber terbuka yang dilaksanakan di Java.

Neo4j ialah pangkalan data graf NOSQL berprestasi tinggi yang menyimpan data berstruktur pada rangkaian dan bukannya jadual. Ia adalah enjin kegigihan Java yang tertanam, berasaskan cakera, transaksional sepenuhnya.

Atas ialah kandungan terperinci Apakah alat dan rangka kerja data besar yang mesti diketahui oleh pembangun Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam