HBase
 sql >> Database >  >> NoSQL >> HBase

Apache Phoenix per CDH

Apache Phoenix per CDH:la migliore nuova funzionalità per DBMS

Cloudera sta adottando e supporterà Apache Phoenix per CDH mentre lo integrerà per la sua Cloudera Data Platform su base continuativa.

Le versioni CDH di Cloudera includevano Apache HBase che fornisce un DBMS NoSQL resiliente per le applicazioni operative dei clienti che desiderano sfruttare la potenza dei big data. Queste applicazioni sono diventate applicazioni mission-importanti e mission-critical che generano entrate e profitti massimi. Queste applicazioni includono applicazioni rivolte ai clienti, piattaforme di e-commerce, rilevamento di rischi e frodi utilizzati dietro le quinte presso le banche o che servono modelli di IA/ML per le applicazioni e consentono un'ulteriore formazione di rinforzo degli stessi in base ai risultati effettivi.

Tuttavia, per molti clienti, HBase è stato un viaggio troppo scoraggiante, che ha richiesto loro di imparare

  • Un nuovo modello di dati come HBase è uno schema wide-table che supporta milioni di colonne ma nessun join e
  • Utilizzo di API Java invece di ANSI SQL

Hanno chiesto di poter utilizzare una progettazione di schemi più tradizionale che assomigli a quella fornita da Oracle o MySQL e sono stati disposti a fare alcuni compromessi sulla flessibilità, ad es.

  • Sono disposti a utilizzare i tipi di dati forniti invece di definire i propri
  • Sono disposti a rinunciare alla flessibilità per avere una singola colonna con più tipi a seconda della riga in cambio di un singolo tipo in una singola riga

Per consentire ai clienti di accedere facilmente agli altri vantaggi di Apache HBase (scalabilità orizzontale illimitata, milioni di righe, evoluzione dello schema, ecc.) fornendo al contempo funzionalità simili a RDBMS (SQL ANSI, join semplici, tipi di dati fuori dal box, ecc.), stiamo introducendo il supporto per Apache Phoenix su CDH.

Per tutti gli altri, le applicazioni basate su Phoenix beneficiano anche delle ottimizzazioni HBase dietro le quinte, rendendo più facile ottenere prestazioni HBase migliori. Ad esempio, Phoenix implementa il salting delle chiavi primarie, quindi gli utenti di HBase non devono pensare a questo aspetto della progettazione delle chiavi.

Inoltre, le applicazioni basate su Phoenix possono coesistere con le applicazioni HBase, il che significa che puoi utilizzare un singolo cluster HBase per supportarle entrambe. Con Phoenix, i clienti possono continuare a utilizzare i loro strumenti di BI e dashboard preferiti proprio come facevano in passato con Hive e Impala. Quando utilizzano Phoenix, possono anche scegliere di utilizzare direttamente Phoenix con questi strumenti oltre all'opzione di utilizzare Hive/Impala eliminando un passaggio per le nuove implementazioni.

Dal punto di vista della sicurezza e della governance (SDX), in CDH, Phoenix utilizza gli ACL HBase per il controllo degli accessi basato sui ruoli per le tabelle Phoenix. Phoenix utilizza anche l'integrazione di HBase in Cloudera Navigator per le informazioni di controllo.

Cloudera ha rilasciato un pacco Phoenix 4.14.1 disponibile per i clienti CDH 5.16.2 e un pacco Phoenix 5.0 disponibile per i clienti CDH 6.2+.

I clienti HDP esistenti hanno già il supporto Apache Phoenix e quasi la metà degli utenti HBase che utilizzano HDP attualmente utilizza Phoenix, oltre a parlare della sua popolarità nella comunità di utenti HBase.

Scarica Apache Phoenix per CDH 

Crea applicazioni mission-critical utilizzando Apache Phoenix. Scarica il software qui.

Domande frequenti su Phoenix

D) Per quali carichi di lavoro dovrebbe essere utilizzato Phoenix

Phoenix supporta gli stessi casi d'uso di HBase, principalmente carichi di lavoro a bassa latenza e alta concorrenza. Tuttavia, Phoenix semplifica anche l'utilizzo dei dati sottostanti per scopi di dashboard e BI

D) Qual è il meccanismo di autorizzazione con Phoenix?

Phoenix dipende da HBase per l'autorizzazione. Per i clienti CDH, questo utilizza gli ACL HBase. Per i clienti HDP, questo avviene tramite l'integrazione HBase-Ranger

D)  Qual è la scalabilità di Phoenix? Qual è il cluster più grande conosciuto?

Phoenix scala a centinaia di TB di dati. Il cliente più grande dispone di oltre 0,5 PB di dati gestiti da Phoenix. I dettagli sui casi d'uso sono disponibili negli archivi PhoenixCon e negli archivi dei video del giorno NoSQL all'inizio di quest'anno nelle parole e nelle diapositive degli utenti.

D) Phoenix supporta l'indicizzazione secondaria geospaziale? Quale livello di supporto dei dati spaziali?

Ha un supporto limitato per i dati geospaziali. Tuttavia, GeoMesa fornisce un livello geospaziale su HBase in grado di supportare questa esigenza e integrato con le applicazioni dei clienti. Phoenix, GeoMesa, nonché JanusGraph e OpenTSDB possono coesistere tutti in un unico cluster HBase.

D) Come si crea e si utilizza un indice?

Per i dettagli sull'indicizzazione, consulta la pagina sull'indicizzazione secondaria di Phoenix. Da Phoenix 4.8.0 in poi, non sono necessarie modifiche alla configurazione per utilizzare l'indicizzazione locale.

D) C'è un limite al numero di colonne che puoi inserire nell'indice?

Come in un RDBMS, un indice è essenzialmente una tabella separata con l'indice e un collegamento ai dati di origine. Se indicizzi tutte le colonne vani lo scopo mantenendo due tabelle identiche. Gli indici dovrebbero essere usati con giudizio in quanto vi è un sovraccarico non banale in scrittura (indici globali) o in lettura (indici locali).