Phoenix: Capa SQL sobre HBase

Un poco de Java

(Esta vez me he adelantado Luis :D)

Lo que le faltaba a HBase para que me encajase!!!!

Phoenix es una Capa SQL sobre HBase, que se utiliza en Salesforce.com

Se distribuye como un driver JDBC embedido.

Phoenix provee queries de baja latencia (milisegundos) frente a las operaciones Batch Map/Reduce. Concretamente hablan de milisegundos para pequeñas queries o segundos para millones de filas.

El motor de queries Phoenix transforma las queries SQL en una o más escaneos HBase y orquesta su ejecución para producir resultsets estándar JDBC.

La aplicación interactúa con Phoenix de una forma estándar JDBC:

Para instalarlo basta con:

Una vez montado se puede usar desde cualquier herramienta JDBC estándar:

También puede usarse desde línea de comandos para ejecutar SQL o cargar un CSV:

Podéis usarlo desde vuestro proyecto con esta configuración Maven:

Ver la entrada original

Anuncios

5 comentarios to “Phoenix: Capa SQL sobre HBase”

  1. Gonzalo Herreros Says:

    Esta claro que ahorra trabajo y es facil de usar, muy interesante lo de que cree indices secundarios.
    Sin embargo para consultas complejas con joins, group by y demas, mejor Impala o Hive sobre Spark/Tez

    • Luis Miguel Gracia Says:

      Ja,ja! Seguro? 🙂
      Eso se merece discutirlo con unas cervezas, porque por aquí sería largo.
      En resumen yo lo veo así: HIVE En Batch, Impala para consultas online (que pueden ser sobre tablas HBase), el Shark de Spark aún verde y Tez es para otra cosa, no?
      Para lo que estoy pensando me quedan opciones tipo HBase, Cassandra, HAWK,…

      • Gonzalo Herreros Says:

        Hive sobre Spark tiene poco que ver con Shark (que ya esta medio abandonado).
        Las nuevas versiones de Hive permiten elegir el motor de ejecucion entre MapReduce, Spark o Tez (este ultimo desarrollado por Hortonworks). Evidentemente Spark o Tez son mucho mas rapidos (son BSP)

        Impala mientras tengas memoria de sobra va como un tiro pero da bastantes problemas. Ademas, Impala sobre Yarn (Llama) todavia no esta maduro
        Otra opcion que esta ganando popularidad es Apache Drill para hacer consultas distribuidas.

        Yo elegiria HBase o Cassandra (HAWK es propietario) y luego elige el motor SQL en funcion de como de rapido quieras la respuesta y que soporte quieras.
        Si vienes por Dublin te invito a unas pintas.

  2. Luis Miguel Gracia Says:

    (Je,je!Ya sabes lo que me gusta tener una buena conversación/discusión pero ahora mismo me es imposible 🙂 )
    Ja,ja!Por unas pintas hago casi cualquier cosa, pero no ir a Dublín 🙂
    No te querrás volver para España! te hacemos hueco! 🙂

  3. ¿Qué es Trafodion? (Transactional SQL-on-Hadoop DBMS) | Un poco de Java Says:

    […] me recuerda a Phoenix (ver más) ofrece alguna característica […]


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: