Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

Eclipse JNoSQL updates from JCP September 11

52 Aufrufe

Veröffentlicht am

Eclipse JNoSQL updates from JCP September 11

Veröffentlicht in: Technologie
  • Als Erste(r) kommentieren

Eclipse JNoSQL updates from JCP September 11

  1. 1. Otávio Santana @otaviojava Eclipse JNoSQL
  2. 2. NoSQL 01 Database 02 Doesn't use structure 03 Not Transaction 04 Base Five different types05
  3. 3. Key Value AmazonDynamo AmazonS3 Redis Hazelcast Apollo Ares Aphrodite Sun War Love Beauty
  4. 4. Column Family Apollo Aphrodite Ares Kratos Duty Duty Duty Dead Gods Love, happy Sun War 13 Color weapon Sword Row-key ColumnsHBase Scylla SimpleDb Cassandra DynamoDB Clouddata
  5. 5. Document { "name":"Diana", "duty":[ "Hunt", "Moon", "Nature" ], "siblings":{ "Apollo":"brother" } } ApacheCouchDB MongoDB Couchbase
  6. 6. Graph Apollo Ares Kratos was killed by was killed by killed killed Neo4j InfoGrid Sones HyperGraphDB
  7. 7. Multi-Model 01 02 03 04 OrientDB (graph, document) Couchbase (key value, document) Elasticsearch (document, graph) ArangoDB (document, graph, key-value)
  8. 8. BASE vs ACID • Basically Available • Soft state • Eventual consistency • Atomicity • Consistency • Isolation • Durability
  9. 9. CAP
  10. 10. JPA & JDO problem for NoSQL 01 02 03 04 05 06 Saves Async Async Callback Time to Live (TTL) Consistency Level SQL based Diversity in NoSQL
  11. 11. The Eclipse NoSQL Solution DIANA ARTEMIS JNoSQL DAO Mapping Communication Column Documents Key Graph Data Tier 01 02 03 04 Mapping API Communication API No lock-in Divide and Conquer
  12. 12. Communication Issue ODocument document = new ODocument(“collection”); document.field(name, value); JsonObject jsonObject = JsonObject.create(); jsonObject.put(name, value); BaseDocument baseDocument = new BaseDocument(); baseDocument.addAttribute(name, value); Document document = new Document(); document.append(name, value);
  13. 13. Eclipse JNoSQL DocumentEntity entity = DocumentEntity.of("collection"); entity.add(name, value);
  14. 14. 01 02 03 04 05 06 Artemis CDI Based Diana Based Annotation Based Events to insert, delete, update Supports to Bean Validation Configurable and Extensible 07 Query Method
  15. 15. Support to JSON XML YAMLJava
  16. 16. NoSQL Providers
  17. 17. Draft and code proposal Community Feedback Involve NoSQL Vendors Involve Solution Vendors Eclipse Project Road Map Development
  18. 18. JUGs/Communities
  19. 19. Latin America ● Paraguay, Asunción ● Chile, Santiago de Chile ● Brasil, São Paulo ● Uruguay, Montevideo ● Argentina, Buenos Aires ● Perú, Lima ● Ecuador, Quito ● Colombia, Barranquilla ● Costa Rica, San José ● Panamá, Ciudad de Panamá ● México, Ciudad de México ● Guatemala, Ciudad de Guatemala
  20. 20. Oracle Code SF ● HOL5998 Eclipse JNoSQL: One API to Many NoSQL Databases - BYOL ● DEV6043 Let’s Make Graph Databases Fun Again with Java ● DEV6109 Jakarta EE Meets NoSQL in the Cloud Age
  21. 21. Specification Process ● Java EE belongs to Eclipse Foundation ● Code First ● Move Jakarta EE forwards with new specifications ● Hopefully a new namespace until Oracle One ● jakarta.nosql?
  22. 22. References Communication API Support to Async operations APIs Mapping API Bean Validation Events Repository Template Query by text Prepared Statement https://projects.eclipse.org/projects/technology.jnosql https://github.com/eclipse?q=Jnosql https://dev.eclipse.org/mailman/listinfo/jnosql-dev https://wiki.eclipse.org/JNoSQL
  23. 23. Otávio Santana @otaviojava Thank you

×