SlideShare una empresa de Scribd logo
1 de 13
Descargar para leer sin conexión
Introducción a




    Ingenieria de Sotware I – Cohorte 2010
                       Ing. Liliana Paradas
                         Ing. William Yánez
Introducción
●   Es un sistema de administración de base de datos
    distribuida, open source, diseñado para manejar grandes
    cantidades de datos.
●   Se autodefine como “Altamente escalable, eventualmente
    consistente, distribuida y basada en datos clave-valor”.
●   Es una solución NoSQL, inicialmente desarrollada por
    Facebook (liberado en julio 2008) y desde Marzo 2009 es
    un proyecto de la fundación Apache (Feb 17 2010 top-
    level).
●   Esta basada en BigTable (Módelo de Datos) y Amazon
    Dynamo (infraestructura).
●   Desarrollado en Java.
Características
●   Probado
    ●   Digg, Facebook, Twitter, entre otros
●   Descentralizada
    ●   Todos los nodos de uncluster son identicos. No hay “Single Point of
        Failure” (SPOF)
●   Tolerante a fallas
    ●   La data es automáticamente replicada a todos los nodos.
●   Elasticidad
    ●   El incremento del rendimiento es lineal a la cantidad de nodos
        agregados al cluster (sin downtime).
●   Modelo de Datos Eficiente y Simple => clave/valor
Modelo de Datos
●   Columnas:
        ●       Es una tripleta que contiene un nombre, un valor y un
                timestamp.
        {
            "name": "emailAddress",
            "value": "foo@bar.com",
            "timestamp": 123456789
        }

            ●   Son referenciadas por un row-key.

    ●   Es el tipo de datos básico de Cassandra.
Modelo de Datos
●   Familias de Columnas:
    ●   Contiene múltiples Columnas, cada familia de columnas es
        almacenada en un archivo separado
●   SuperColumnas:
    ●   Columnas que contienen otras columnas.
●   Keyspace:
    ●   Agrupa las Familias de Columnas, tipicamente uno por aplicación
●   Cluster
Comparación con RDBMS
●   Con 50 Gb
    ●   MySQL lee en +o- 350 ms
    ●   MySQL escribe en +o- 300 ms
    ●   Cassandra escribe en 0.12 ms
    ●   Cassandra lee en 15 ms
Instalación y Puesta en Marcha
1) Descargar la ultima versión (0.5.1 actual)
●   Web oficial: http://cassandra.apache.org/
2) Descomprimimos en cualquier carpeta.
3) Creamos el directorio de datos y de log por defecto:
●   sudo mkdir -p /var/log/cassandra
●   sudo mkdir -p /var/lib/cassandra
●   sudo chown -R usuario /var/lib/cassandra
●   sudo chown -R usuario /var/log/cassandra
4) Ejecutamos con: bin/cassandra -f
Instalación y Puesta en Marcha
1) Descargar la ultima versión (0.5.1 actual)
●   Web oficial: http://cassandra.apache.org/
2) Descomprimimos en cualquier carpeta.
3) Creamos el directorio de datos y de log por defecto:
●   sudo mkdir -p /var/log/cassandra
●   sudo mkdir -p /var/lib/cassandra
●   sudo chown -R usuario /var/lib/cassandra
●   sudo chown -R usuario /var/log/cassandra
4) Ejecutamos con: bin/cassandra -f
●   Ver conf/storage-conf.xml
Conectandonos a Cassandra
Usamos la herramienta cassandra-cli:


Para correrla escribimos en la consola:
$ bin/cassandra-cli --host localhost --port 9160


Connected to localhost/9160
Welcome to cassandra CLI.
Type 'help' or '?' for help. Type 'quit' or 'exit' to quit.
Conectandonos a Cassandra
cassandra> set Keyspace1.Standard1['wyanez']['nombre']='William'
Value inserted.
cassandra> set Keyspace1.Standard1['wyanez']['apellido']='Yanez'
Value inserted.
cassandra> set Keyspace1.Standard1['wyanez']['edad']='39'
Value inserted.
cassandra> set Keyspace1.Standard1['wyanez']['tlf1']='0426-5529140'
Value inserted.
cassandra> get Keyspace1.Standard1['wyanez']
=> (column=tlf1, value=0426-5529140, timestamp=1269577777158)
=> (column=nombre, value=William, timestamp=1269577730679)
=> (column=edad, value=39, timestamp=1269577764734)
=> (column=apellido, value=Yanez, timestamp=1269577754462)
Returned 4 results.
Y los Lenguajes de Programación ?
●   Ruby (http://github.com/fauna/cassandra/tree/master)
●   Perl
●   Python
●   Java
●   Php
●   C++
●   C# /. Net
●   Otros: Scala, Clojure, Grails.
●   Todos usan la API Thrift (bajo nivel)
Ruby & Cassandra
●   http://github.com/fauna/cassandra/tree/master
●   gem install cassandra
●   Y listo... veamos ahora el queso a la tostada
Ruby & Cassandra
require 'rubygems'
require 'cassandra'
include Cassandra::Constants


client = Cassandra.new('Keyspace1')
res= client.get(:Standard1 ,'wyanez')
puts res.inspect

Más contenido relacionado

La actualidad más candente

Principales bases de datos existentes
Principales bases de datos existentesPrincipales bases de datos existentes
Principales bases de datos existentesManuelHernandezz
 
Sql Saturday Guatemala 2018 - Azure SQL Data Warehouse
Sql Saturday Guatemala 2018 - Azure SQL Data WarehouseSql Saturday Guatemala 2018 - Azure SQL Data Warehouse
Sql Saturday Guatemala 2018 - Azure SQL Data WarehouseJOSE AHIAS LOPEZ PORTILLO
 
Bases de Datos NoSQL - Riak
Bases de Datos NoSQL - Riak Bases de Datos NoSQL - Riak
Bases de Datos NoSQL - Riak Andrei Amador
 
Apache cassandra
Apache cassandraApache cassandra
Apache cassandralibra_hch
 
Tutorial de como configurar y instalar Cassandra
Tutorial de como configurar y instalar Cassandra Tutorial de como configurar y instalar Cassandra
Tutorial de como configurar y instalar Cassandra Kevin Hinojosa
 
Redis: servidor de estructuras de datos
Redis: servidor de estructuras de datosRedis: servidor de estructuras de datos
Redis: servidor de estructuras de datosAntonio Ognio
 
Sql o NoSql en Informática Médica
Sql o NoSql en Informática MédicaSql o NoSql en Informática Médica
Sql o NoSql en Informática MédicaLiz Armenteros
 
Presentacion sobre cassandra
Presentacion sobre cassandraPresentacion sobre cassandra
Presentacion sobre cassandrajesusnoseq
 
Introducción mongodb y desarrollo
Introducción mongodb y desarrolloIntroducción mongodb y desarrollo
Introducción mongodb y desarrolloJuan Ladetto
 
No sql la nueva era
No sql la nueva eraNo sql la nueva era
No sql la nueva eraJuan Navas
 
PostgreSQL vs MySQL: PostgreSQL como alternativa.
PostgreSQL vs MySQL: PostgreSQL como alternativa.PostgreSQL vs MySQL: PostgreSQL como alternativa.
PostgreSQL vs MySQL: PostgreSQL como alternativa.Arturo Espinosa
 
Act4 basesdedatos oscar_varona
Act4 basesdedatos oscar_varonaAct4 basesdedatos oscar_varona
Act4 basesdedatos oscar_varonaOscar Varona
 

La actualidad más candente (20)

Apache cassandra
Apache cassandraApache cassandra
Apache cassandra
 
Principales bases de datos existentes
Principales bases de datos existentesPrincipales bases de datos existentes
Principales bases de datos existentes
 
Sql Saturday Guatemala 2018 - Azure SQL Data Warehouse
Sql Saturday Guatemala 2018 - Azure SQL Data WarehouseSql Saturday Guatemala 2018 - Azure SQL Data Warehouse
Sql Saturday Guatemala 2018 - Azure SQL Data Warehouse
 
Bases de Datos NoSQL - Riak
Bases de Datos NoSQL - Riak Bases de Datos NoSQL - Riak
Bases de Datos NoSQL - Riak
 
Apache cassandra
Apache cassandraApache cassandra
Apache cassandra
 
Tutorial de como configurar y instalar Cassandra
Tutorial de como configurar y instalar Cassandra Tutorial de como configurar y instalar Cassandra
Tutorial de como configurar y instalar Cassandra
 
Presentacion BD NoSQL
Presentacion  BD NoSQLPresentacion  BD NoSQL
Presentacion BD NoSQL
 
Redis: servidor de estructuras de datos
Redis: servidor de estructuras de datosRedis: servidor de estructuras de datos
Redis: servidor de estructuras de datos
 
Couchdb
CouchdbCouchdb
Couchdb
 
Diaposotivas apache-cassandra
Diaposotivas apache-cassandraDiaposotivas apache-cassandra
Diaposotivas apache-cassandra
 
Sql o NoSql en Informática Médica
Sql o NoSql en Informática MédicaSql o NoSql en Informática Médica
Sql o NoSql en Informática Médica
 
Presentacion sobre cassandra
Presentacion sobre cassandraPresentacion sobre cassandra
Presentacion sobre cassandra
 
Introducción mongodb y desarrollo
Introducción mongodb y desarrolloIntroducción mongodb y desarrollo
Introducción mongodb y desarrollo
 
MongoDB: la BBDD NoSQL más popular del mercado
MongoDB: la BBDD NoSQL más popular del mercadoMongoDB: la BBDD NoSQL más popular del mercado
MongoDB: la BBDD NoSQL más popular del mercado
 
No sql la nueva era
No sql la nueva eraNo sql la nueva era
No sql la nueva era
 
PostgreSQL vs MySQL: PostgreSQL como alternativa.
PostgreSQL vs MySQL: PostgreSQL como alternativa.PostgreSQL vs MySQL: PostgreSQL como alternativa.
PostgreSQL vs MySQL: PostgreSQL como alternativa.
 
Act4 basesdedatos oscar_varona
Act4 basesdedatos oscar_varonaAct4 basesdedatos oscar_varona
Act4 basesdedatos oscar_varona
 
Mysql cluster
Mysql clusterMysql cluster
Mysql cluster
 
NoSQL: Introducción a las Bases de Datos no estructuradas
NoSQL: Introducción a las Bases de Datos no estructuradasNoSQL: Introducción a las Bases de Datos no estructuradas
NoSQL: Introducción a las Bases de Datos no estructuradas
 
MongoDB
MongoDBMongoDB
MongoDB
 

Similar a Intro cassandra

Replicacion con postgresql y slony
Replicacion con  postgresql y slonyReplicacion con  postgresql y slony
Replicacion con postgresql y slonyJohanna Mendez
 
Replicacion con postgresql y slony
Replicacion con  postgresql y slonyReplicacion con  postgresql y slony
Replicacion con postgresql y slonyJohanna Mendez
 
Sysmana 2017 monitorización de logs con el stack elk
Sysmana 2017   monitorización de logs con el stack elkSysmana 2017   monitorización de logs con el stack elk
Sysmana 2017 monitorización de logs con el stack elkJosé Ignacio Álvarez Ruiz
 
Update Big Data 2014
Update Big Data 2014Update Big Data 2014
Update Big Data 2014Stratebi
 
LSWC PostgreSQL 9.1 (2011)
LSWC PostgreSQL 9.1 (2011)LSWC PostgreSQL 9.1 (2011)
LSWC PostgreSQL 9.1 (2011)Emanuel Calvo
 
NOSQL apache-cassandra-150611122739-lva1-app6891
NOSQL apache-cassandra-150611122739-lva1-app6891NOSQL apache-cassandra-150611122739-lva1-app6891
NOSQL apache-cassandra-150611122739-lva1-app6891darwin dj
 
Cluster MySQL en Windows
Cluster MySQL en WindowsCluster MySQL en Windows
Cluster MySQL en WindowsErick Cruz
 
Rendimiento en magento
Rendimiento en magentoRendimiento en magento
Rendimiento en magentoOnestic
 
Terraspace, the definitive terraform framework
Terraspace, the definitive terraform frameworkTerraspace, the definitive terraform framework
Terraspace, the definitive terraform frameworkMario IC
 
Postgre sql y_replicacion_slony_p
Postgre sql y_replicacion_slony_pPostgre sql y_replicacion_slony_p
Postgre sql y_replicacion_slony_pedvin_marcelo
 
Estudio sobre Spark, Storm, Kafka y Hive
Estudio sobre Spark, Storm, Kafka y HiveEstudio sobre Spark, Storm, Kafka y Hive
Estudio sobre Spark, Storm, Kafka y HiveWellness Telecom
 
NO SQL y Cassandra
NO SQL y CassandraNO SQL y Cassandra
NO SQL y CassandraAlvaro C
 

Similar a Intro cassandra (20)

Dbdeployer
DbdeployerDbdeployer
Dbdeployer
 
Replicacion con postgresql y slony
Replicacion con  postgresql y slonyReplicacion con  postgresql y slony
Replicacion con postgresql y slony
 
Replicacion con postgresql y slony
Replicacion con  postgresql y slonyReplicacion con  postgresql y slony
Replicacion con postgresql y slony
 
Sysmana 2017 monitorización de logs con el stack elk
Sysmana 2017   monitorización de logs con el stack elkSysmana 2017   monitorización de logs con el stack elk
Sysmana 2017 monitorización de logs con el stack elk
 
Update Big Data 2014
Update Big Data 2014Update Big Data 2014
Update Big Data 2014
 
Postgresql expo
Postgresql expoPostgresql expo
Postgresql expo
 
LSWC PostgreSQL 9.1 (2011)
LSWC PostgreSQL 9.1 (2011)LSWC PostgreSQL 9.1 (2011)
LSWC PostgreSQL 9.1 (2011)
 
Reporte cluster
Reporte clusterReporte cluster
Reporte cluster
 
Las cronicas de redis
Las cronicas de redisLas cronicas de redis
Las cronicas de redis
 
NOSQL apache-cassandra-150611122739-lva1-app6891
NOSQL apache-cassandra-150611122739-lva1-app6891NOSQL apache-cassandra-150611122739-lva1-app6891
NOSQL apache-cassandra-150611122739-lva1-app6891
 
Cluster MySQL en Windows
Cluster MySQL en WindowsCluster MySQL en Windows
Cluster MySQL en Windows
 
Rendimiento en magento
Rendimiento en magentoRendimiento en magento
Rendimiento en magento
 
Clúster
ClústerClúster
Clúster
 
Terraspace, the definitive terraform framework
Terraspace, the definitive terraform frameworkTerraspace, the definitive terraform framework
Terraspace, the definitive terraform framework
 
Overview atlas (1)
Overview atlas (1)Overview atlas (1)
Overview atlas (1)
 
Overview atlas (1)
Overview atlas (1)Overview atlas (1)
Overview atlas (1)
 
Pg pool cluster postgresql
Pg pool cluster postgresqlPg pool cluster postgresql
Pg pool cluster postgresql
 
Postgre sql y_replicacion_slony_p
Postgre sql y_replicacion_slony_pPostgre sql y_replicacion_slony_p
Postgre sql y_replicacion_slony_p
 
Estudio sobre Spark, Storm, Kafka y Hive
Estudio sobre Spark, Storm, Kafka y HiveEstudio sobre Spark, Storm, Kafka y Hive
Estudio sobre Spark, Storm, Kafka y Hive
 
NO SQL y Cassandra
NO SQL y CassandraNO SQL y Cassandra
NO SQL y Cassandra
 

Último

9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 

Último (16)

9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 

Intro cassandra

  • 1. Introducción a Ingenieria de Sotware I – Cohorte 2010 Ing. Liliana Paradas Ing. William Yánez
  • 2. Introducción ● Es un sistema de administración de base de datos distribuida, open source, diseñado para manejar grandes cantidades de datos. ● Se autodefine como “Altamente escalable, eventualmente consistente, distribuida y basada en datos clave-valor”. ● Es una solución NoSQL, inicialmente desarrollada por Facebook (liberado en julio 2008) y desde Marzo 2009 es un proyecto de la fundación Apache (Feb 17 2010 top- level). ● Esta basada en BigTable (Módelo de Datos) y Amazon Dynamo (infraestructura). ● Desarrollado en Java.
  • 3. Características ● Probado ● Digg, Facebook, Twitter, entre otros ● Descentralizada ● Todos los nodos de uncluster son identicos. No hay “Single Point of Failure” (SPOF) ● Tolerante a fallas ● La data es automáticamente replicada a todos los nodos. ● Elasticidad ● El incremento del rendimiento es lineal a la cantidad de nodos agregados al cluster (sin downtime). ● Modelo de Datos Eficiente y Simple => clave/valor
  • 4. Modelo de Datos ● Columnas: ● Es una tripleta que contiene un nombre, un valor y un timestamp. { "name": "emailAddress", "value": "foo@bar.com", "timestamp": 123456789 } ● Son referenciadas por un row-key. ● Es el tipo de datos básico de Cassandra.
  • 5. Modelo de Datos ● Familias de Columnas: ● Contiene múltiples Columnas, cada familia de columnas es almacenada en un archivo separado ● SuperColumnas: ● Columnas que contienen otras columnas. ● Keyspace: ● Agrupa las Familias de Columnas, tipicamente uno por aplicación ● Cluster
  • 6. Comparación con RDBMS ● Con 50 Gb ● MySQL lee en +o- 350 ms ● MySQL escribe en +o- 300 ms ● Cassandra escribe en 0.12 ms ● Cassandra lee en 15 ms
  • 7. Instalación y Puesta en Marcha 1) Descargar la ultima versión (0.5.1 actual) ● Web oficial: http://cassandra.apache.org/ 2) Descomprimimos en cualquier carpeta. 3) Creamos el directorio de datos y de log por defecto: ● sudo mkdir -p /var/log/cassandra ● sudo mkdir -p /var/lib/cassandra ● sudo chown -R usuario /var/lib/cassandra ● sudo chown -R usuario /var/log/cassandra 4) Ejecutamos con: bin/cassandra -f
  • 8. Instalación y Puesta en Marcha 1) Descargar la ultima versión (0.5.1 actual) ● Web oficial: http://cassandra.apache.org/ 2) Descomprimimos en cualquier carpeta. 3) Creamos el directorio de datos y de log por defecto: ● sudo mkdir -p /var/log/cassandra ● sudo mkdir -p /var/lib/cassandra ● sudo chown -R usuario /var/lib/cassandra ● sudo chown -R usuario /var/log/cassandra 4) Ejecutamos con: bin/cassandra -f ● Ver conf/storage-conf.xml
  • 9. Conectandonos a Cassandra Usamos la herramienta cassandra-cli: Para correrla escribimos en la consola: $ bin/cassandra-cli --host localhost --port 9160 Connected to localhost/9160 Welcome to cassandra CLI. Type 'help' or '?' for help. Type 'quit' or 'exit' to quit.
  • 10. Conectandonos a Cassandra cassandra> set Keyspace1.Standard1['wyanez']['nombre']='William' Value inserted. cassandra> set Keyspace1.Standard1['wyanez']['apellido']='Yanez' Value inserted. cassandra> set Keyspace1.Standard1['wyanez']['edad']='39' Value inserted. cassandra> set Keyspace1.Standard1['wyanez']['tlf1']='0426-5529140' Value inserted. cassandra> get Keyspace1.Standard1['wyanez'] => (column=tlf1, value=0426-5529140, timestamp=1269577777158) => (column=nombre, value=William, timestamp=1269577730679) => (column=edad, value=39, timestamp=1269577764734) => (column=apellido, value=Yanez, timestamp=1269577754462) Returned 4 results.
  • 11. Y los Lenguajes de Programación ? ● Ruby (http://github.com/fauna/cassandra/tree/master) ● Perl ● Python ● Java ● Php ● C++ ● C# /. Net ● Otros: Scala, Clojure, Grails. ● Todos usan la API Thrift (bajo nivel)
  • 12. Ruby & Cassandra ● http://github.com/fauna/cassandra/tree/master ● gem install cassandra ● Y listo... veamos ahora el queso a la tostada
  • 13. Ruby & Cassandra require 'rubygems' require 'cassandra' include Cassandra::Constants client = Cassandra.new('Keyspace1') res= client.get(:Standard1 ,'wyanez') puts res.inspect