SlideShare a Scribd company logo
1 of 90
Datomic
A Modern Database
Alex Miller
Overview
• Rationale
• Data model - facts
• Schema - entities, attributes
• Transactions - assert, retract, excise
• Architecture - peer, transactor, storage
• Queries - datalog, rules
Rationale
A database that
reconsiders...
• Immutable data model
• Flexible, extensible schemas
• Importance of time in our data
• Transactions and queries as data
• Deployment for the cloud
• Storage as a service
Data Model
Fact
• One piece of information
• About one thing
• At a specific point in time
• An immutable value
Fact = Datom
Fact = Datom
Entity Attribute Value Tx op
21005 :name "Stuart" 1000 assert
21005 :likes tea 1000 assert
21005 :likes coffee 1022 assert
21005 :likes tea 1022 retract
Fact = Datom
Entity Attribute Value Tx op
21005 :name "Stuart" 1000 assert
21005 :likes tea 1000 assert
21005 :likes coffee 1022 assert
21005 :likes tea 1022 retract
Fact = Datom
Entity Attribute Value Tx op
21005 :name "Stuart" 1000 assert
21005 :likes tea 1000 assert
21005 :likes coffee 1022 assert
21005 :likes tea 1022 retract
Datoms are Values
Entity Attribute Value Tx op
21005 :name "Stuart" 1000 assert
21005 :likes tea 1000 assert
21005 :likes coffee 1022 assert
21005 :likes tea 1022 retract
Datoms are Efficient
Entity Attribute Value Tx op
21005 43 "Stuart" 1000 true
21005 75 3299 1000 true
21005 75 1730 1022 true
21005 75 3299 1022 false
Database
• A collection of facts
• At a specific point in time
• An immutable value
Database is a Value
Entity Attribute Value Tx op
21005 :name "Stuart" 1000 assert
21005 :likes tea 1000 assert
21005 :likes coffee 1022 assert
21005 :likes tea 1022 retract
Schema
Entities + Attributes
• Entities - identity (no "type")
• Similar to: nodes in a graph, rows in rdbms
• Attributes
• Similar to: edges in a graph, cols in rdbms
• Relation from entities to values, or
• Relation from entities to entities
Value Attributes
“Alex Miller” “puredanger”
:handle
Entity Value
Attribute
Ref Attributes
“Alex Miller”
:follows
Entity Entity
Attribute
“Mario Aquino”
Attribute Definition
• Entities, just like your data
• Required attribute attributes:
• ident (keyword) - attribute identifier
• valueType (keyword) - string, boolean, long,
bigint, float, double, bigdec, instant, uuid,
uri, bytes, ref
• cardinality (keyword) - one or many
Optional Attributes
• Optional attribute attributes:
• doc (string) - documentation string
• unique (keyword) - value or identity
• index (boolean) - index this attribute
• fulltext (boolean) - searchable
• isComponent (boolean) - composite values
• noHistory (boolean) - whether to retain history
(rarely used, for things like counters)
Attribute Definition
{:db/id #db/id[:db.part/db]
:db/ident :comment/body
:db/valueType :db.type/string
:db/cardinality :db.cardinality/one
:db.install/_attribute :db.part/db}
ERD Modeling
Legend
Quote Useruser
text
timestamp
handle
email
first-name
last-name
follows
Entity Type attribute relationship
attribute
Alternative Views
Structure View
row datoms sharing a common E
column datoms sharing a common A
document traversal of attributes
graph traversal of reference attributes
Transactions
Transactions
• Set of facts (assertions or retractions)
• Applied at a point in time
Transactions as Data
• Defined as data (not INSERT/UPDATE/
DELETE strings)
• Transactions are *also* entities!
• You can query them - for when they
happened and what datoms they include
• And add new facts about them!
Datoms in a
Transaction
;; E A V Tx op
[21005 :name "Stuart" 1000 true]
[21005 :likes 3299 1000 true]
[21005 :likes 1730 1022 true]
[21005 :likes 3299 1022 false]
Integrity
• ACID transactions
• Equivalent to isolation level SERIALIZED
Constraints
• Schema constraints enforced on attributes
• Transaction functions
• From old db value to new db value
• Enforce arbitrary constraints
• Can reject transactions
Uses for Tx Fns
• Atomic update
• Maintaining integrity constraints (composite
keys)
• Strict validation
• Constructing entities
• Annotating transactions
Architecture
Server
Indexing
Trans-
actions
Query
App Process
I/O
App
Strings
DDL + DML
Result Sets
Storage
cache
monolithic server
Server
Indexing
Trans-
actions
Query
App Process
I/O
App
Strings
DDL + DML
Result Sets
Storage
cache
monolithic server
Storage Service
App Process
D Peer Lib
b,c,ea,d,e a,b,d
D Transactor
Indexing
Trans-
actions
Query
Cache
App
Data
Data
Data
segments
Live
Index
Data
Segments
Data Segments
peer, transactor, storage
Peer
Library
Storage Service
Transactor
Datomic Components
Your Application
Peer
Library
Storage Service
Transactor
Peer Library
• Included in your app
• Executes queries locally
Your Application
Peer
Library
Storage Service
Transactor
Peer Library
• Reads data from storage
• Caches locally
cache
Your Application
Peer
Library
Storage Service
Transactor
Scale Horizontally
cache
Your Application
Peer
Library
Your Application
Peer
Library
cache cache
Your Application
Peer
Library
Storage Service
Transactor
Transactor
• Standalone system
• Scales vertically
Your Application
Peer
Library
Storage Service
Transactor
Transactor
• Standalone system
• Hot standby for failover
Your Application
Peer
Library
Storage Service
Transactor
Transactor
• Coordinates writes
• Guarantees ACID transactions
Your Application
Peer
Library
Storage Service
Transactor
Transactor
•Writes transaction log to storage
• Generates indexes
Storage Service
Transactor
Transactor
• Broadcasts live updates
Your Application
Peer
Library
cache
Your Application
Peer
Library
Your Application
Peer
Library
cache cache
Your Application
Peer
Library
Storage Service
Transactor
Storage
• Provided as a service
• Many different back-ends
Your Application
Peer
Library
Storage Service
Transactor
Local Storage
• Memory
• Filesystem
PostgreSQL, Oracle, …
Your Application
Peer
Library
Storage Service
Transactor
Nearby Storage
• SQL database
Your Application
Peer
Library
Storage Service
Transactor
Distributed Storage
• DynamoDB
• Riak
• Couchbase
• Infinispan
• Cassandra
Your Application
Peer
Library
Storage Service
Your Application
Peer
Library
Your Application
Peer
Library
Datomic Components
Transactor
Your Application
Peer
Library
Storage Service
Transactions
Your Application
Peer
Library
Your Application
Peer
Library
ACID Writes
Transactor
Transactions
& Indexes
Your Application
Peer
Library
Storage Service
Live updates
Your Application
Peer
Library
Your Application
Peer
Library
Live Updates
Transactor
Your Application
Peer
Library
Storage Service
Your Application
Peer
Library
Your Application
Peer
Library
Distributed Reads
Transactor
Reads
Your Application
Peer
Library
Storage Service
Your Application
Peer
Library
Your Application
Peer
Library
Local Caches
cache cache cache
Transactor
Reads
Your Application
Peer
Library
Storage Service
Your Application
Peer
Library
Your Application
Peer
Library
Shared Memcached
Transactor
Reads
Memcached
cache cache cache
Queries
Queries as Data
• Datalog
• Queries defined as data, not as strings
Find User’s
Comments
(d/q
'[:find ?comment
:in $ ?email
:where [?user :user/email ?email]
[?comment :comment/author ?user]]
db
"editor@example.com")
(d/q
'[:find ?comment
:in $ ?email
:where [?user :user/email ?email]
[?comment :comment/author ?user]]
db
"editor@example.com")
Data Pattern
?user
:user/email
"editor@example.com"
?comment :comment/author
[:find ?customer ?email
:in $cust $emp
:where [$cust ?customer :email ?email]
[$emp _ :email ?email]]
“Find me the customers who are
also employees.”
Join across dbs
(d/q query custDb empDb)
implicit
join
[:find ?customer ?email
:in $cust $emp
:where [$cust ?customer :email ?email]
[$emp _ :email ?email]]
“Find me the customers who are
also employees.”
Join across dbs
(d/q query custDb empDb)
data patterns can be led
by database names
Travel Through Time
• Database *now*
• Database *last week*
• Database *if I added some transactions*
Views of a database
name semantics supports
(default) current state
what is the current
situation?
.asOf state at point in past
how were things in the
past?
.since state since point in past
how have things
changed?
tx report
before / after / change view of a
tx
automated
event response
.with state with proposed additions
what would happen if
we did X?
.history timeless view of all history anything!
(d/q '[:find ?customer
:where [?customer :id]
[?customer :orders]]
(d/as-of db #inst "2013-01-01"))
Time travel
Query Engine is Local
• Local query engine, local cache
• If working set is in memory, everything is FAST
• Reads do not require any transactor interaction
• Use your own functions in the query
Extension with custom fns
[:find ?customer ?product
:where [?customer :shipAddress ?addr]
[?addr :zip ?zip]
[?product :product/weight ?weight]
[?product :product/price ?price]
[(Shipping/estimate ?zip ?weight) ?shipCost]
[(<= ?price ?shipCost)]]
“Find me the customer/product
combinations where the shipping cost
dominates the product cost.”
predicate
Extension with custom fns
[:find ?customer ?product
:where [?customer :shipAddress ?addr]
[?addr :zip ?zip]
[?product :product/weight ?weight]
[?product :product/price ?price]
[(Shipping/estimate ?zip ?weight) ?shipCost]
[(<= ?price ?shipCost)]]
“Find me the customer/product
combinations where the shipping cost
dominates the product cost.”
function
Rules
Rules
[(relatedProduct ?p1 ?p2)
[?p1 :category ?c]
[?p2 :category ?c]
[(!= ?p1 ?p2)]]
“Products are related if they
have a common category.”
Rules
[(relatedProduct ?p1 ?p2)
[?p1 :category ?c]
[?p2 :category ?c]
[(!= ?p1 ?p2)]]
“Products are related if they
have a common category.”
head is true ...
Rules
[(relatedProduct ?p1 ?p2)
[?p1 :category ?c]
[?p2 :category ?c]
[(!= ?p1 ?p2)]]
“Products are related if they
have a common category.”
if body is true
q("[:find ?p2
:in $ %
:where (expensiveChocolate p1)
(relatedProduct p1 p2)]",
db
rules)
“Find all products related to
expensive chocolate.”
Rule inputs
rules are a kind of input
q("[:find ?p2
:in $ %
:where (expensiveChocolate p1)
(relatedProduct p1 p2)",
db,
rules)
“Find all products related to
expensive chocolate.”
Naming rule inputs
rule names begin
with %
q("[:find ?p2
:in $ %
:where (expensiveChocolate p1)
(relatedProduct p1 p2)",
db,
rules)
“Find all products related to
expensive chocolate.”
Using rule patterns
rule patterns can
appear in :where clause
[[(relatedProduct ?p1 ?p2)
[?p1 :category ?c]
[?p2 :category ?c]
[(!= ?p1 ?p2)]]
[(relatedProduct ?p1 ?p2)
[?o :order/item ?item1]
[?item1 :order/product ?p1]
[?o :order/item ?item2]
[?item2 :order/product ?p2]
[(!= ?p1 ?p2)]]]
“Products are related if they have the same
category, or they have appeared in the
same order.”
Implicit or
;; base case
[(story-comment ?story ?comment)
[?story :story/title]
[?story :new/comments ?comment]]
Recursive query
for graph navigation
it is a story comment if...
;; base case
[(story-comment ?story ?comment)
[?story :story/title]
[?story :new/comments ?comment]]
Recursive query
for graph navigation
... there is a story ...
;; base case
[(story-comment ?story ?comment)
[?story :story/title]
[?story :new/comments ?comment]]
Recursive query
for graph navigation
... with a comment
;; recursion
[(story-comment ?story ?comment)
[?parent :news/comments ?comment)
(story-comment ?story ?parent)]
Recursive query
for graph navigation
or, it is a story comment if...
;; recursion
[(story-comment ?story ?comment)
[?parent :news/comments ?comment]
(story-comment ?story ?parent)]
Recursive query
for graph navigation
... it has a parent comment ...
;; recursion
[(story-comment ?story ?comment)
[?parent :news/comments ?comment)
(story-comment ?story ?parent)]
Recursive query
for graph navigation
which is itself a story comment
Indexes and Logs
Direct Index Access
• seek-datoms - walk the datoms in a
specified index between particular
transactions or dates
• entid-at - gets a fabricated entity id
based on a transaction id or date
Direct Log Access
• Walk the transaction log directly
• Starting from txid or point in time
Entities and Graph
Walking
Entity
• A collection of facts
• About one thing
• At a specific point in time
Entity
• A collection of datoms
• With the same entity ID
• At a specific point in time
Entity
• A collection of datoms
• With the same entity ID
• At a specific point in time
• Can be viewed as a map
• Traversable as a graph
Entities ⬌ Datoms
;; Entity
{:db/id 21005
:name "Stuart"
:likes #{{:db/id 1730
:food/name "coffee"}}
;; Datoms
[21005 :name "Stuart"]
[21005 :likes 1730]
[1730 :food/name "coffee"]
Entities
• Retrieve entity from the database as a map
• Follow references to lazily walk the graph
• Follow references in both directions
• Use touch to retrieve all entity attributes
(def ent (d/entity dbval 17592186045417))
=> {:db/id 17592186045417}
(d/touch ent)
=> {:db/doc "Hello world",
:db/id 17592186045417}
Sweet Spots
• Flexible data model
• Audit trail, provenance, time
• Transactional data of record
• Horizontal query scaling
• Cloud deployment
Leverage other
systems
• Blobs (images, sound, movies, giant text)
• Write churn (hit counter)
• Horizontal write scaling
Datomic Free
Datomic Pro
Starter
Datomic Pro
Cost
Redistributable?
Number of Peers
High-Availability
Transactor
Storage Services
Memcached
Support
$0 $0 per peer
Yes No No
2 2 by license
No No Yes
Local only All All
No No Yes
Community Community Enterprise

More Related Content

What's hot

NoSQL: Why, When, and How
NoSQL: Why, When, and HowNoSQL: Why, When, and How
NoSQL: Why, When, and How
BigBlueHat
 
RavenDB - Indexes Deep Dive
RavenDB - Indexes Deep DiveRavenDB - Indexes Deep Dive
RavenDB - Indexes Deep Dive
Alonso Robles
 
5 Data Modeling for NoSQL 1/2
5 Data Modeling for NoSQL 1/25 Data Modeling for NoSQL 1/2
5 Data Modeling for NoSQL 1/2
Fabio Fumarola
 
Common MongoDB Use Cases
Common MongoDB Use Cases Common MongoDB Use Cases
Common MongoDB Use Cases
MongoDB
 

What's hot (20)

NoSQL Tel Aviv Meetup#1: NoSQL Data Modeling
NoSQL Tel Aviv Meetup#1: NoSQL Data ModelingNoSQL Tel Aviv Meetup#1: NoSQL Data Modeling
NoSQL Tel Aviv Meetup#1: NoSQL Data Modeling
 
Service Oriented Architecture -Unit II - Modeling databases in xml
Service Oriented Architecture -Unit II - Modeling databases in xml Service Oriented Architecture -Unit II - Modeling databases in xml
Service Oriented Architecture -Unit II - Modeling databases in xml
 
NoSQL: Why, When, and How
NoSQL: Why, When, and HowNoSQL: Why, When, and How
NoSQL: Why, When, and How
 
No sql Database
No sql DatabaseNo sql Database
No sql Database
 
MongoDB for Coder Training (Coding Serbia 2013)
MongoDB for Coder Training (Coding Serbia 2013)MongoDB for Coder Training (Coding Serbia 2013)
MongoDB for Coder Training (Coding Serbia 2013)
 
RavenDB Overview
RavenDB OverviewRavenDB Overview
RavenDB Overview
 
Modeling JSON data for NoSQL document databases
Modeling JSON data for NoSQL document databasesModeling JSON data for NoSQL document databases
Modeling JSON data for NoSQL document databases
 
MongoDB - An Agile NoSQL Database
MongoDB - An Agile NoSQL DatabaseMongoDB - An Agile NoSQL Database
MongoDB - An Agile NoSQL Database
 
[PASS Summit 2016] Azure DocumentDB: A Deep Dive into Advanced Features
[PASS Summit 2016] Azure DocumentDB: A Deep Dive into Advanced Features[PASS Summit 2016] Azure DocumentDB: A Deep Dive into Advanced Features
[PASS Summit 2016] Azure DocumentDB: A Deep Dive into Advanced Features
 
Connect 2016-Move Your XPages Applications to the Fast Lane
Connect 2016-Move Your XPages Applications to the Fast LaneConnect 2016-Move Your XPages Applications to the Fast Lane
Connect 2016-Move Your XPages Applications to the Fast Lane
 
RavenDB - Indexes Deep Dive
RavenDB - Indexes Deep DiveRavenDB - Indexes Deep Dive
RavenDB - Indexes Deep Dive
 
Native JSON Support in SQL2016
Native JSON Support in SQL2016Native JSON Support in SQL2016
Native JSON Support in SQL2016
 
Strudel: Framework for Transaction Performance Analyses on SQL/NoSQL Systems
Strudel: Framework for Transaction Performance Analyses on SQL/NoSQL SystemsStrudel: Framework for Transaction Performance Analyses on SQL/NoSQL Systems
Strudel: Framework for Transaction Performance Analyses on SQL/NoSQL Systems
 
5 Data Modeling for NoSQL 1/2
5 Data Modeling for NoSQL 1/25 Data Modeling for NoSQL 1/2
5 Data Modeling for NoSQL 1/2
 
Asp.net
Asp.netAsp.net
Asp.net
 
Utilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino APIUtilizing the OpenNTF Domino API
Utilizing the OpenNTF Domino API
 
Change RelationalDB to GraphDB with OrientDB
Change RelationalDB to GraphDB with OrientDBChange RelationalDB to GraphDB with OrientDB
Change RelationalDB to GraphDB with OrientDB
 
Common MongoDB Use Cases
Common MongoDB Use Cases Common MongoDB Use Cases
Common MongoDB Use Cases
 
OData support in Cast Iron 7.5.1
OData support in Cast Iron 7.5.1OData support in Cast Iron 7.5.1
OData support in Cast Iron 7.5.1
 
Selecting best NoSQL
Selecting best NoSQL Selecting best NoSQL
Selecting best NoSQL
 

Viewers also liked

Real World Use Cases and Success Stories for In-Memory Data Grids (TIBCO Acti...
Real World Use Cases and Success Stories for In-Memory Data Grids (TIBCO Acti...Real World Use Cases and Success Stories for In-Memory Data Grids (TIBCO Acti...
Real World Use Cases and Success Stories for In-Memory Data Grids (TIBCO Acti...
Kai Wähner
 
Bill gates powerpoint
Bill gates powerpointBill gates powerpoint
Bill gates powerpoint
masonwilson1
 

Viewers also liked (20)

JavaZone 2013 - Datomic vs EventStore
JavaZone 2013 - Datomic vs EventStoreJavaZone 2013 - Datomic vs EventStore
JavaZone 2013 - Datomic vs EventStore
 
Intro to Cassandra
Intro to CassandraIntro to Cassandra
Intro to Cassandra
 
Detect all memory leaks with LeakCanary!
 Detect all memory leaks with LeakCanary! Detect all memory leaks with LeakCanary!
Detect all memory leaks with LeakCanary!
 
How Yelp Uses Sensu to Monitor Services in a SOA World
How Yelp Uses Sensu to Monitor Services in a SOA WorldHow Yelp Uses Sensu to Monitor Services in a SOA World
How Yelp Uses Sensu to Monitor Services in a SOA World
 
Datomic - Lidando com dados de maneira versionada
Datomic - Lidando com dados de maneira versionadaDatomic - Lidando com dados de maneira versionada
Datomic - Lidando com dados de maneira versionada
 
Evolving the Netflix API
Evolving the Netflix APIEvolving the Netflix API
Evolving the Netflix API
 
ReactJS
ReactJSReactJS
ReactJS
 
7 Common Mistakes in Go (2015)
7 Common Mistakes in Go (2015)7 Common Mistakes in Go (2015)
7 Common Mistakes in Go (2015)
 
How to name things: the hardest problem in programming
How to name things: the hardest problem in programmingHow to name things: the hardest problem in programming
How to name things: the hardest problem in programming
 
Probability with Cards
Probability with CardsProbability with Cards
Probability with Cards
 
Unity 5: First-Person Tutorial
Unity 5: First-Person TutorialUnity 5: First-Person Tutorial
Unity 5: First-Person Tutorial
 
Fast, In-Memory SQL on Apache Cassandra with Apache Ignite (Rachel Pedreschi,...
Fast, In-Memory SQL on Apache Cassandra with Apache Ignite (Rachel Pedreschi,...Fast, In-Memory SQL on Apache Cassandra with Apache Ignite (Rachel Pedreschi,...
Fast, In-Memory SQL on Apache Cassandra with Apache Ignite (Rachel Pedreschi,...
 
Real World Use Cases and Success Stories for In-Memory Data Grids (TIBCO Acti...
Real World Use Cases and Success Stories for In-Memory Data Grids (TIBCO Acti...Real World Use Cases and Success Stories for In-Memory Data Grids (TIBCO Acti...
Real World Use Cases and Success Stories for In-Memory Data Grids (TIBCO Acti...
 
Elon Musk and his innovations
Elon Musk and his innovationsElon Musk and his innovations
Elon Musk and his innovations
 
19 Mini Productivity Hacks For A Simple (But An Awesome) Day
19 Mini Productivity Hacks For A Simple (But An Awesome) Day19 Mini Productivity Hacks For A Simple (But An Awesome) Day
19 Mini Productivity Hacks For A Simple (But An Awesome) Day
 
Patterns for building resilient and scalable microservices platform on AWS
Patterns for building resilient and scalable microservices platform on AWSPatterns for building resilient and scalable microservices platform on AWS
Patterns for building resilient and scalable microservices platform on AWS
 
Inside BCG's Smart Simplicity Approach
Inside BCG's Smart Simplicity ApproachInside BCG's Smart Simplicity Approach
Inside BCG's Smart Simplicity Approach
 
Entrepreneur Elon musk
Entrepreneur   Elon muskEntrepreneur   Elon musk
Entrepreneur Elon musk
 
Bill gates powerpoint
Bill gates powerpointBill gates powerpoint
Bill gates powerpoint
 
Leadership by Elon Musk with Tesla and SpaceX
Leadership by Elon Musk with Tesla and SpaceXLeadership by Elon Musk with Tesla and SpaceX
Leadership by Elon Musk with Tesla and SpaceX
 

Similar to Datomic – A Modern Database - StampedeCon 2014

(BDT317) Building A Data Lake On AWS
(BDT317) Building A Data Lake On AWS(BDT317) Building A Data Lake On AWS
(BDT317) Building A Data Lake On AWS
Amazon Web Services
 
AWS CLOUD 2017 - Amazon Athena 및 Glue를 통한 빠른 데이터 질의 및 처리 기능 소개 (김상필 솔루션즈 아키텍트)
AWS CLOUD 2017 - Amazon Athena 및 Glue를 통한 빠른 데이터 질의 및 처리 기능 소개 (김상필 솔루션즈 아키텍트)AWS CLOUD 2017 - Amazon Athena 및 Glue를 통한 빠른 데이터 질의 및 처리 기능 소개 (김상필 솔루션즈 아키텍트)
AWS CLOUD 2017 - Amazon Athena 및 Glue를 통한 빠른 데이터 질의 및 처리 기능 소개 (김상필 솔루션즈 아키텍트)
Amazon Web Services Korea
 

Similar to Datomic – A Modern Database - StampedeCon 2014 (20)

Where Is My Data - ILTAM Session
Where Is My Data - ILTAM SessionWhere Is My Data - ILTAM Session
Where Is My Data - ILTAM Session
 
Apache CarbonData+Spark to realize data convergence and Unified high performa...
Apache CarbonData+Spark to realize data convergence and Unified high performa...Apache CarbonData+Spark to realize data convergence and Unified high performa...
Apache CarbonData+Spark to realize data convergence and Unified high performa...
 
brock_delong_all_your_database_final.pptx
brock_delong_all_your_database_final.pptxbrock_delong_all_your_database_final.pptx
brock_delong_all_your_database_final.pptx
 
Amazon Web Services OverView
Amazon Web Services OverViewAmazon Web Services OverView
Amazon Web Services OverView
 
Architecting a datalake
Architecting a datalakeArchitecting a datalake
Architecting a datalake
 
Overview of data analytics service: Treasure Data Service
Overview of data analytics service: Treasure Data ServiceOverview of data analytics service: Treasure Data Service
Overview of data analytics service: Treasure Data Service
 
AWS Webcast - Build high-scale applications with Amazon DynamoDB
AWS Webcast - Build high-scale applications with Amazon DynamoDBAWS Webcast - Build high-scale applications with Amazon DynamoDB
AWS Webcast - Build high-scale applications with Amazon DynamoDB
 
Dynamodb Presentation
Dynamodb PresentationDynamodb Presentation
Dynamodb Presentation
 
How to Migrate from Cassandra to Amazon DynamoDB - AWS Online Tech Talks
How to Migrate from Cassandra to Amazon DynamoDB - AWS Online Tech TalksHow to Migrate from Cassandra to Amazon DynamoDB - AWS Online Tech Talks
How to Migrate from Cassandra to Amazon DynamoDB - AWS Online Tech Talks
 
Supercharging the Value of Your Data with Amazon S3
Supercharging the Value of Your Data with Amazon S3Supercharging the Value of Your Data with Amazon S3
Supercharging the Value of Your Data with Amazon S3
 
Presto: Fast SQL-on-Anything (including Delta Lake, Snowflake, Elasticsearch ...
Presto: Fast SQL-on-Anything (including Delta Lake, Snowflake, Elasticsearch ...Presto: Fast SQL-on-Anything (including Delta Lake, Snowflake, Elasticsearch ...
Presto: Fast SQL-on-Anything (including Delta Lake, Snowflake, Elasticsearch ...
 
Never Stop Exploring - Pushing the Limits of Solr: Presented by Anirudha Jadh...
Never Stop Exploring - Pushing the Limits of Solr: Presented by Anirudha Jadh...Never Stop Exploring - Pushing the Limits of Solr: Presented by Anirudha Jadh...
Never Stop Exploring - Pushing the Limits of Solr: Presented by Anirudha Jadh...
 
Micro strategy 7i
Micro strategy 7iMicro strategy 7i
Micro strategy 7i
 
(BDT317) Building A Data Lake On AWS
(BDT317) Building A Data Lake On AWS(BDT317) Building A Data Lake On AWS
(BDT317) Building A Data Lake On AWS
 
Aws meetup 20190427
Aws meetup 20190427Aws meetup 20190427
Aws meetup 20190427
 
Realtime Analytics on AWS
Realtime Analytics on AWSRealtime Analytics on AWS
Realtime Analytics on AWS
 
FiloDB: Reactive, Real-Time, In-Memory Time Series at Scale
FiloDB: Reactive, Real-Time, In-Memory Time Series at ScaleFiloDB: Reactive, Real-Time, In-Memory Time Series at Scale
FiloDB: Reactive, Real-Time, In-Memory Time Series at Scale
 
AWS CLOUD 2017 - Amazon Athena 및 Glue를 통한 빠른 데이터 질의 및 처리 기능 소개 (김상필 솔루션즈 아키텍트)
AWS CLOUD 2017 - Amazon Athena 및 Glue를 통한 빠른 데이터 질의 및 처리 기능 소개 (김상필 솔루션즈 아키텍트)AWS CLOUD 2017 - Amazon Athena 및 Glue를 통한 빠른 데이터 질의 및 처리 기능 소개 (김상필 솔루션즈 아키텍트)
AWS CLOUD 2017 - Amazon Athena 및 Glue를 통한 빠른 데이터 질의 및 처리 기능 소개 (김상필 솔루션즈 아키텍트)
 
DA_01_Intro.pptx
DA_01_Intro.pptxDA_01_Intro.pptx
DA_01_Intro.pptx
 
Introducing DocumentDB
Introducing DocumentDB Introducing DocumentDB
Introducing DocumentDB
 

More from StampedeCon

Bringing the Whole Elephant Into View Can Cognitive Systems Bring Real Soluti...
Bringing the Whole Elephant Into View Can Cognitive Systems Bring Real Soluti...Bringing the Whole Elephant Into View Can Cognitive Systems Bring Real Soluti...
Bringing the Whole Elephant Into View Can Cognitive Systems Bring Real Soluti...
StampedeCon
 

More from StampedeCon (20)

Why Should We Trust You-Interpretability of Deep Neural Networks - StampedeCo...
Why Should We Trust You-Interpretability of Deep Neural Networks - StampedeCo...Why Should We Trust You-Interpretability of Deep Neural Networks - StampedeCo...
Why Should We Trust You-Interpretability of Deep Neural Networks - StampedeCo...
 
The Search for a New Visual Search Beyond Language - StampedeCon AI Summit 2017
The Search for a New Visual Search Beyond Language - StampedeCon AI Summit 2017The Search for a New Visual Search Beyond Language - StampedeCon AI Summit 2017
The Search for a New Visual Search Beyond Language - StampedeCon AI Summit 2017
 
Predicting Outcomes When Your Outcomes are Graphs - StampedeCon AI Summit 2017
Predicting Outcomes When Your Outcomes are Graphs - StampedeCon AI Summit 2017Predicting Outcomes When Your Outcomes are Graphs - StampedeCon AI Summit 2017
Predicting Outcomes When Your Outcomes are Graphs - StampedeCon AI Summit 2017
 
Novel Semi-supervised Probabilistic ML Approach to SNP Variant Calling - Stam...
Novel Semi-supervised Probabilistic ML Approach to SNP Variant Calling - Stam...Novel Semi-supervised Probabilistic ML Approach to SNP Variant Calling - Stam...
Novel Semi-supervised Probabilistic ML Approach to SNP Variant Calling - Stam...
 
How to Talk about AI to Non-analaysts - Stampedecon AI Summit 2017
How to Talk about AI to Non-analaysts - Stampedecon AI Summit 2017How to Talk about AI to Non-analaysts - Stampedecon AI Summit 2017
How to Talk about AI to Non-analaysts - Stampedecon AI Summit 2017
 
Getting Started with Keras and TensorFlow - StampedeCon AI Summit 2017
Getting Started with Keras and TensorFlow - StampedeCon AI Summit 2017Getting Started with Keras and TensorFlow - StampedeCon AI Summit 2017
Getting Started with Keras and TensorFlow - StampedeCon AI Summit 2017
 
Foundations of Machine Learning - StampedeCon AI Summit 2017
Foundations of Machine Learning - StampedeCon AI Summit 2017Foundations of Machine Learning - StampedeCon AI Summit 2017
Foundations of Machine Learning - StampedeCon AI Summit 2017
 
Don't Start from Scratch: Transfer Learning for Novel Computer Vision Problem...
Don't Start from Scratch: Transfer Learning for Novel Computer Vision Problem...Don't Start from Scratch: Transfer Learning for Novel Computer Vision Problem...
Don't Start from Scratch: Transfer Learning for Novel Computer Vision Problem...
 
Bringing the Whole Elephant Into View Can Cognitive Systems Bring Real Soluti...
Bringing the Whole Elephant Into View Can Cognitive Systems Bring Real Soluti...Bringing the Whole Elephant Into View Can Cognitive Systems Bring Real Soluti...
Bringing the Whole Elephant Into View Can Cognitive Systems Bring Real Soluti...
 
Automated AI The Next Frontier in Analytics - StampedeCon AI Summit 2017
Automated AI The Next Frontier in Analytics - StampedeCon AI Summit 2017Automated AI The Next Frontier in Analytics - StampedeCon AI Summit 2017
Automated AI The Next Frontier in Analytics - StampedeCon AI Summit 2017
 
AI in the Enterprise: Past, Present & Future - StampedeCon AI Summit 2017
AI in the Enterprise: Past,  Present &  Future - StampedeCon AI Summit 2017AI in the Enterprise: Past,  Present &  Future - StampedeCon AI Summit 2017
AI in the Enterprise: Past, Present & Future - StampedeCon AI Summit 2017
 
A Different Data Science Approach - StampedeCon AI Summit 2017
A Different Data Science Approach - StampedeCon AI Summit 2017A Different Data Science Approach - StampedeCon AI Summit 2017
A Different Data Science Approach - StampedeCon AI Summit 2017
 
Graph in Customer 360 - StampedeCon Big Data Conference 2017
Graph in Customer 360 - StampedeCon Big Data Conference 2017Graph in Customer 360 - StampedeCon Big Data Conference 2017
Graph in Customer 360 - StampedeCon Big Data Conference 2017
 
End-to-end Big Data Projects with Python - StampedeCon Big Data Conference 2017
End-to-end Big Data Projects with Python - StampedeCon Big Data Conference 2017End-to-end Big Data Projects with Python - StampedeCon Big Data Conference 2017
End-to-end Big Data Projects with Python - StampedeCon Big Data Conference 2017
 
Doing Big Data Using Amazon's Analogs - StampedeCon Big Data Conference 2017
Doing Big Data Using Amazon's Analogs - StampedeCon Big Data Conference 2017Doing Big Data Using Amazon's Analogs - StampedeCon Big Data Conference 2017
Doing Big Data Using Amazon's Analogs - StampedeCon Big Data Conference 2017
 
Enabling New Business Capabilities with Cloud-based Streaming Data Architectu...
Enabling New Business Capabilities with Cloud-based Streaming Data Architectu...Enabling New Business Capabilities with Cloud-based Streaming Data Architectu...
Enabling New Business Capabilities with Cloud-based Streaming Data Architectu...
 
Big Data Meets IoT: Lessons From the Cloud on Polling, Collecting, and Analyz...
Big Data Meets IoT: Lessons From the Cloud on Polling, Collecting, and Analyz...Big Data Meets IoT: Lessons From the Cloud on Polling, Collecting, and Analyz...
Big Data Meets IoT: Lessons From the Cloud on Polling, Collecting, and Analyz...
 
Innovation in the Data Warehouse - StampedeCon 2016
Innovation in the Data Warehouse - StampedeCon 2016Innovation in the Data Warehouse - StampedeCon 2016
Innovation in the Data Warehouse - StampedeCon 2016
 
Creating a Data Driven Organization - StampedeCon 2016
Creating a Data Driven Organization - StampedeCon 2016Creating a Data Driven Organization - StampedeCon 2016
Creating a Data Driven Organization - StampedeCon 2016
 
Using The Internet of Things for Population Health Management - StampedeCon 2016
Using The Internet of Things for Population Health Management - StampedeCon 2016Using The Internet of Things for Population Health Management - StampedeCon 2016
Using The Internet of Things for Population Health Management - StampedeCon 2016
 

Recently uploaded

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc
 
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
FIDO Alliance
 
CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)
Wonjun Hwang
 

Recently uploaded (20)

Portal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russePortal Kombat : extension du réseau de propagande russe
Portal Kombat : extension du réseau de propagande russe
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage Intacct
 
Overview of Hyperledger Foundation
Overview of Hyperledger FoundationOverview of Hyperledger Foundation
Overview of Hyperledger Foundation
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdfFrisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
Generative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfGenerative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdf
 
ADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptxADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptx
 
2024 May Patch Tuesday
2024 May Patch Tuesday2024 May Patch Tuesday
2024 May Patch Tuesday
 
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
 
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentation
 
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider  Progress from Awareness to Implementation.pptxTales from a Passkey Provider  Progress from Awareness to Implementation.pptx
Tales from a Passkey Provider Progress from Awareness to Implementation.pptx
 
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
 
Top 10 CodeIgniter Development Companies
Top 10 CodeIgniter Development CompaniesTop 10 CodeIgniter Development Companies
Top 10 CodeIgniter Development Companies
 
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
Observability Concepts EVERY Developer Should Know (DevOpsDays Seattle)
 
CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptx
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
 
How to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cfHow to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cf
 

Datomic – A Modern Database - StampedeCon 2014