com presentations: Added PHP UK talk: nonscalar-phpuk19.xml slides/mongodb/document-validation.xml slides/mongodb/gin_sol ution.png slides/mongodb/mongodb-logo.png slides/mongod b/postgresql-logo.png slides/mongodb/redis-300dpi.p ng slides/mongodb/scalar-validate.xml templates/default/b reak.ezt templates/default/slide.ezt
[email protected] (Derick Rethans) Tue, 19 Feb 2019 18:11:19 +0000
| Newsgroups | php.pres |
|---|---|
| Message-ID | <[email protected]> |
Commit: fe6d479b9ae23e45fc8073b87a11a20f18533be8 Author: Derick Rethans <[email protected]> Tue, 19 Feb 2019 18:11:19 +0000 Parents: ebe23a5a70304eb8df8d0ba4201eb2419a04236d Branches: master Link: http://git.php.net/?p=presentations.git;a=commitdiff;h=fe6d479b9ae23e45fc8073b87a11a20f18533be8 Log: Added PHP UK talk Changed paths: A nonscalar-phpuk19.xml M slides/mongodb/document-validation.xml M slides/mongodb/gin_solution.png M slides/mongodb/mongodb-logo.png M slides/mongodb/postgresql-logo.png M slides/mongodb/redis-300dpi.png M slides/mongodb/scalar-validate.xml M templates/default/break.ezt M templates/default/slide.ezt Diff: diff --git a/nonscalar-phpuk19.xml b/nonscalar-phpuk19.xml new file mode 100644 index 0000000..560e691 --- /dev/null +++ b/nonscalar-phpuk19.xml @@ -0,0 +1,126 @@ +<?xml version="1.0" encoding="utf-8"?> +<presentation css="derick.css"> +<topic>MongoDB</topic> +<title>Storing Non-Scalar Data</title> +<event>PHP UK Conference</event> +<location>London, UK</location> +<date>February 21st, 2019</date> +<speaker>Derick Rethans</speaker> +<email>[email protected]</email> +<twitter>derickr</twitter> +<url>http://derickrethans.nl/talks.html</url> +<joindin>https://joind.in/25887</joindin> +<slide>slides/mongodb/title.xml</slide> +<!-- <slide>slides/mongodb/me.xml</slide> --> + +<slide>slides/mongodb/scalar-non-scalar-examples.xml</slide> +<!-- <slide>slides/mongodb/scalar-non-scalar-example-vector.xml</slide> --> +<slide>slides/mongodb/scalar-non-scalar-example-tag-cloud.xml</slide> +<slide>slides/mongodb/scalar-non-scalar-example-product-properties.xml</slide> +<!-- <slide>slides/mongodb/scalar-non-scalar-example-addresses.xml</slide> --> +<slide>slides/mongodb/scalar-what-is-it-not.xml</slide> + +<slide>slides/mongodb/scalar-agenda.xml</slide> + +Intro into DB types and their data types +<slide>slides/mongodb/scalar-section-dbs-and-types.xml</slide> + + Key/Value: + Redis + LISTS + SETS + HASHES + Sorted SET +<slide>slides/mongodb/scalar-key-value.xml</slide> +<slide>slides/mongodb/scalar-redis.xml</slide> +<!-- <slide>slides/mongodb/scalar-redis-lists.xml</slide> --> +<slide>slides/mongodb/scalar-redis-sets.xml</slide> +<slide>slides/mongodb/scalar-redis-hashses.xml</slide> +<!-- <slide>slides/mongodb/scalar-redis-sorted-set.xml</slide> --> + + Document: + MongoDB + CouchDB + Elastic Search +<slide>slides/mongodb/scalar-document.xml</slide> +<slide>slides/mongodb/scalar-mongodb.xml</slide> +<slide>slides/mongodb/document-complex.xml</slide> +<slide>slides/mongodb/phplib-crud-insert.xml</slide> + + Relational: + MySQL + JSON + PostgreSQL + HSTORE + JSON + JSONB +<slide>slides/mongodb/scalar-relational.xml</slide> +<slide>slides/mongodb/scalar-postgresql.xml</slide> +<slide>slides/mongodb/scalar-postgresql-hstore.xml</slide> +<slide>slides/mongodb/scalar-postgresql-jsonb.xml</slide> +<slide>slides/mongodb/scalar-postgresql-jsonb-example.xml</slide> + +<!-- <slide>slides/mongodb/scalar-storage-overview.xml</slide> --> + +<slide>slides/mongodb/scalar-section-query.xml</slide> + +Manipulation + + Query + Query operators for $in, $elemMatch, etc + Query operations on nested fields + +<slide>slides/mongodb/scalar-query-redis.xml</slide> +<slide>slides/mongodb/scalar-query-mongodb.xml</slide> +<slide>slides/mongodb/scalar-query-mongodb-aggregation.xml</slide> +<slide>slides/mongodb/scalar-query-postgresql-hstore.xml</slide> +<slide>slides/mongodb/scalar-query-postgresql-jsonb.xml</slide> + + Indexes + Redis + MongoDB + CouchDB + ElasticSearch + MySQL + only through virtual columns + Not on arrays + PostgreSQL + GIN/GIST + Geospatial from GeoJSON sources (not PostGIS) + +<slide>slides/mongodb/indexes-title.xml</slide> +<slide>slides/mongodb/scalar-index-redis.xml</slide> +<slide>slides/mongodb/index.xml</slide> +<slide>slides/mongodb/scalar-index-postgresql.xml</slide> + + +<slide>slides/mongodb/scalar-section-manipulation.xml</slide> + Storing/Update + Atomicity + ACID + Single document with update specifiers + Partitioning on JSON data + Manipulation of JSON data +<slide>slides/mongodb/scalar-atomicity.xml</slide> +<!-- <slide>slides/mongodb/acid.xml</slide> --> +<slide>slides/mongodb/scalar-nosql-acid.xml</slide> +<slide>slides/mongodb/scalar-atomic-redis.xml</slide> +<slide>slides/mongodb/update-atomicity.xml</slide> + + Schema validation + None can do that, besides MongoDB + +<slide>slides/mongodb/scalar-validate.xml</slide> +<slide>slides/mongodb/document-validation.xml</slide> + +<slide>slides/mongodb/scalar-conclusion.xml</slide> + + +Conclusion + + + +<slide>slides/mongodb/questions.xml</slide> +<slide>slides/mongodb/resources.xml</slide> + +</presentation> diff --git a/slides/mongodb/document-validation.xml b/slides/mongodb/document-validation.xml index b351316..a8c99bb 100644 --- a/slides/mongodb/document-validation.xml +++ b/slides/mongodb/document-validation.xml @@ -1,5 +1,5 @@ <slide> -<title>Enforcing Schema</title> +<title>MongoDB Data Validation</title> <blurb>Allows you to set a *validator*, a query that every new or updated document must match</blurb> <blurb>Example:</blurb> diff --git a/slides/mongodb/gin_solution.png b/slides/mongodb/gin_solution.png index af3b68b..5191793 100644 Binary files a/slides/mongodb/gin_solution.png and b/slides/mongodb/gin_solution.png differ diff --git a/slides/mongodb/mongodb-logo.png b/slides/mongodb/mongodb-logo.png index 01a5c23..582c78e 100644 Binary files a/slides/mongodb/mongodb-logo.png and b/slides/mongodb/mongodb-logo.png differ diff --git a/slides/mongodb/postgresql-logo.png b/slides/mongodb/postgresql-logo.png index 4515240..c0a0612 100644 Binary files a/slides/mongodb/postgresql-logo.png and b/slides/mongodb/postgresql-logo.png differ diff --git a/slides/mongodb/redis-300dpi.png b/slides/mongodb/redis-300dpi.png index ad94810..ce71c13 100644 Binary files a/slides/mongodb/redis-300dpi.png and b/slides/mongodb/redis-300dpi.png differ diff --git a/slides/mongodb/scalar-validate.xml b/slides/mongodb/scalar-validate.xml index b97ec20..55c685f 100644 --- a/slides/mongodb/scalar-validate.xml +++ b/slides/mongodb/scalar-validate.xml @@ -4,7 +4,7 @@ <list> <bullet>*Relational Databases*:<br/>Standard, as a schema is pre-defined</bullet> <bullet>*Relational Databases*<br/>     with HSTORE, JSON, or JSONB:<br/>Generally not possible</bullet> - <bullet>*NoSQL Databases*:<br/>Generally not possible</bullet> + <bullet>*NoSQL Databases*:<br/>Not possible with most databases</bullet> </list> </slide> diff --git a/templates/default/break.ezt b/templates/default/break.ezt index 86b3032..e98c558 100644 --- a/templates/default/break.ezt +++ b/templates/default/break.ezt @@ -1,4 +1,5 @@ {use $node} -{var $lines = get_attribute( $node, 'lines' )} +{var $lines = 0} +{if has_attribute( $node, 'lines' )}{$lines = get_attribute( $node, 'lines' )}{/if} {var $i = 0} <br/>{while $i < $lines - 1}<br />{$i++}{/while} diff --git a/templates/default/slide.ezt b/templates/default/slide.ezt index c211d3d..1b247dd 100644 --- a/templates/default/slide.ezt +++ b/templates/default/slide.ezt @@ -15,7 +15,7 @@ <!--[if lt IE 8]> <script src="IE8.js" type="text/javascript"></script> <![endif]--> - <script type="text/javascript" src="/jquery-1.3.2.min.js"></script> + <script type="text/javascript" src="/jquery-3.3.1.js"></script> <script type="text/javascript"> {literal} @@ -58,11 +58,11 @@ $(document).ready(function() { {/literal} {/if} {literal} - $("*[class^='effect']").hide(); - $("*[class^='effect-fade-out']").show(); - var f = $("div div:first").select(":first"); + $("*[class^='effect']").hide(); + $("*[class^='effect-fade-out']").show(); +// var f = $("div div:first").select(":first"); - $("body").addClass(f[0].className); +// $("body").addClass(f[0].className); {/literal} {literal} }); @@ -107,7 +107,7 @@ function processPrevEvent() {literal} } -$('*').keypress(function(event) { +$('*').on("keydown", function(event) { if (event.keyCode == '34' || event.keyCode == '39') { processNextEvent(); event.preventDefault();