MySQL 的 DW 解决方案(MySQL + Infobright)
随着 BI (DW) 在各个企业中重要性的不断提升,各个数据库厂家都希望能搭上这辆班车。这不,MySQL 也联合 Infobright 一起推出了开源的 数据仓库解决方案,而且是开源的。 其实现的各种DW该有的功能就不多说了,但是 Infobright 有一点非常吸引人的技术特点不
随着 BI (DW) 在各个企业中重要性的不断提升,各个数据库厂家都希望能搭上这辆班车。这不,MySQL 也联合 Infobright 一起推出了开源的 数据仓库解决方案,而且是开源的。
其实现的各种DW该有的功能就不多说了,但是 Infobright 有一点非常吸引人的技术特点不能不提,那就是以列为导向的架构设计。
以列为导向的架构设计是非常适合于DW应用场景的,对于大多数DW的分析场景中,实际关注的数据很多时候都只有那么一列或者少数几列的数据。所以在以列为导向的设计中,大部分的分析查询都只需要读取某一个(或者几个)表的几列,而不需要像传统以行为导向的数据库(或者存储引擎)那样需要扫描整个表的数据,这两者IO量的差距是非常大的。除了以列为导向的架构设计之外,Infobright 和很多其他的DW解决方案一样,也会进行数据压缩,而且由于其以列为导向的存储方式,压缩比率在很多情况下都会比以行为导向的存储方式更高,效果更理想。有人通过测试比较,常规的以行为导向的存储数据压缩比率较高的时候也就 3:1 左右,但是 Infobright 的却很容易就做到 10:1 的压缩比率。
此外,从MySQL 以及 Infobright 的官方报道中除了上述技术特点(或者说优势)之外,还有很多其他的被描绘的非常神奇的功能,如被称为 “知识网格” (Knowledge Grid) 的自我管理功能,完全不需要索引或者分区,神奇的自我查询优化器等等。
这里是官方给出的一张 Infobright 的架构图:
infobright architecture
感兴趣的朋友可以通过自行阅读其 技术白皮书 获取更多的细节
原文地址:MySQL 的 DW 解决方案(MySQL + Infobright), 感谢原作者分享。

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Kemahiran pemprosesan struktur data besar: Pecahan: Pecahkan set data dan proseskannya dalam bahagian untuk mengurangkan penggunaan memori. Penjana: Hasilkan item data satu demi satu tanpa memuatkan keseluruhan set data, sesuai untuk set data tanpa had. Penstriman: Baca fail atau hasil pertanyaan baris demi baris, sesuai untuk fail besar atau data jauh. Storan luaran: Untuk set data yang sangat besar, simpan data dalam pangkalan data atau NoSQL.

Cabaran biasa yang dihadapi oleh algoritma pembelajaran mesin dalam C++ termasuk pengurusan memori, multi-threading, pengoptimuman prestasi dan kebolehselenggaraan. Penyelesaian termasuk menggunakan penunjuk pintar, perpustakaan benang moden, arahan SIMD dan perpustakaan pihak ketiga, serta mengikuti garis panduan gaya pengekodan dan menggunakan alat automasi. Kes praktikal menunjukkan cara menggunakan perpustakaan Eigen untuk melaksanakan algoritma regresi linear, mengurus memori dengan berkesan dan menggunakan operasi matriks berprestasi tinggi.

Prestasi pertanyaan MySQL boleh dioptimumkan dengan membina indeks yang mengurangkan masa carian daripada kerumitan linear kepada kerumitan logaritma. Gunakan PreparedStatements untuk menghalang suntikan SQL dan meningkatkan prestasi pertanyaan. Hadkan hasil pertanyaan dan kurangkan jumlah data yang diproses oleh pelayan. Optimumkan pertanyaan penyertaan, termasuk menggunakan jenis gabungan yang sesuai, membuat indeks dan mempertimbangkan untuk menggunakan subkueri. Menganalisis pertanyaan untuk mengenal pasti kesesakan; gunakan caching untuk mengurangkan beban pangkalan data;

Membuat sandaran dan memulihkan pangkalan data MySQL dalam PHP boleh dicapai dengan mengikuti langkah berikut: Sandarkan pangkalan data: Gunakan arahan mysqldump untuk membuang pangkalan data ke dalam fail SQL. Pulihkan pangkalan data: Gunakan arahan mysql untuk memulihkan pangkalan data daripada fail SQL.

Bagaimana untuk memasukkan data ke dalam jadual MySQL? Sambung ke pangkalan data: Gunakan mysqli untuk mewujudkan sambungan ke pangkalan data. Sediakan pertanyaan SQL: Tulis pernyataan INSERT untuk menentukan lajur dan nilai yang akan dimasukkan. Laksanakan pertanyaan: Gunakan kaedah query() untuk melaksanakan pertanyaan sisipan Jika berjaya, mesej pengesahan akan dikeluarkan.

Salah satu perubahan utama yang diperkenalkan dalam MySQL 8.4 (keluaran LTS terkini pada 2024) ialah pemalam "Kata Laluan Asli MySQL" tidak lagi didayakan secara lalai. Selanjutnya, MySQL 9.0 mengalih keluar pemalam ini sepenuhnya. Perubahan ini mempengaruhi PHP dan apl lain

Untuk menggunakan prosedur tersimpan MySQL dalam PHP: Gunakan PDO atau sambungan MySQLi untuk menyambung ke pangkalan data MySQL. Sediakan penyata untuk memanggil prosedur tersimpan. Laksanakan prosedur tersimpan. Proses set keputusan (jika prosedur tersimpan mengembalikan hasil). Tutup sambungan pangkalan data.

Analisis kelemahan keselamatan rangka kerja Java menunjukkan bahawa XSS, suntikan SQL dan SSRF adalah kelemahan biasa. Penyelesaian termasuk: menggunakan versi rangka kerja keselamatan, pengesahan input, pengekodan output, mencegah suntikan SQL, menggunakan perlindungan CSRF, melumpuhkan ciri yang tidak perlu, menetapkan pengepala keselamatan. Dalam kes sebenar, kelemahan suntikan ApacheStruts2OGNL boleh diselesaikan dengan mengemas kini versi rangka kerja dan menggunakan alat semakan ekspresi OGNL.
