Export to
Thursday, January 10, 2013 at 2:43pm and last updated
Friday, January 11, 2013 at 12:12am.
Couchbase PDX Developer Day 2013
Website
Description
Couchbase PDX Developer Day 2013The goal of Couchbase Developer Days is to give everyone a basic understanding of Couchbase Server 2.0 and how to use it. We will get you setup to work with Couchbase in your preferred language, make connections and do basic operations. We will get you more comfortable with Views, how they work, how to create and query them. Finally we will cover managing a Couchbase cluster, what the graphs mean and how to grow the cluster.
AGENDA:8:15 - 8:45 am REGISTRATION8:45 - 9:00 am INTRODUCTIONS9:00 - 9:45 am Intro to Couchbase 2.0 Cover the primary features of Couchbase 2.0: JSON support, Indexing (Map/Reduce), Elastic Search, XDCR, Basic Architecture. 9:50 - 10:15 am LAB: Install Couchbase 2.0 Goals: Get Setup with Couchbase 2.0 on laptop with beer-sample Understand the Setup options in the Wizard (slides) Tour of the Admin Console (slides) 10:20 - 11:00 am Intro to Couchbase Basic Operations Cover the anatomy of a Document, metadata and document data. Cover all the basic operations of storing a JSON document, and creating atomic counters. Operations: connect, get, set, add, replace, cas, incr, decr, and get into a few specifics like get with lock and cas. 11:05 - 12:30 pm LAB: Install Language SDK and do Basic Operations Goals: Install/Setup your preferred Language SDK on your laptop Make a Connection to Couchbase Server 2.0 Do basic operations: get, set, add, replace, incr, decr Do advanced operations: get with lock, cas Create a Class and save to JSON, and then retrieve and load the Class from the JSON, make changes to the object model and update the schema 12:40 - 1:30 pm LUNCH1:30 - 2:40 pm Intro to Map/Reduce (Views) Cover why Views are used, the basic use cases for Views. Cover the anatomy of map/reduce functions, simple and compound keys using beer-sample database/views. Cover the differences between an Indexer (Design Document) and an Index (View) in terms of resources, updates, etc. Cover development subset, full cluster data, and publishing a Design Doc as well as best practices. Cover querying features: group, group level, startkey, endkey, startkey_docid, endkey_docid, stale, reduce, descending. Show variantions on the examples, how you would change them to achieve other things. 2:50 - 4:15 pm LAB: Working with Views and Map/Reduce Goals: Create a View object in your preferred language Query a beer-sample view in your preferred language Vary the query on beer-sample view to get different results (startkey, endkey) Vary the query on beer-sample view to get different results (group, reduce) Create a new view using the beer-sample Query the newly created view 4:20 - 5:40 pm Managing a Couchbase Cluster (Demo) Show a demo with a cluster of Couchbase Server with load generation. Tour through the various graphs and what they mean. Add new nodes to the cluster and rebalance, failover a node. If there is time, demonstrate Elastic Search integration and XDCR with another cluster.
6:00 - 8:00 pm AFTER PARTY: McNenamin's Pub Broadway (1504 Northeast Broadway)
track_event_container {
display: none;
}
Save This Event
When Where
DoubleTree by Hilton Portland
1000 NE Multnomah
Portland,
OR 97232
Tuesday, January 22, 2013 from 8:15 AM to 5:40 PM (PST)
Add to my calendar
Outlook Calendar
Google Calendar
Yahoo! Calendar
iCal Calendar
Organizer
Couchbase
Contact the Organizer
View organizer profile
http://www.couchbase.com
3
upcoming events on Eventbrite
32
past events on Eventbrite
-
Add to Order
Please wait...
Contact organizer:
* Required
Please fill out the missing information.
Your name: *
Email address: *
Send your message: *
Enter the code as shown below: *
Your email will only be seen by the event organizer.
Find out more about how your privacy is protected.
Send messagePlease wait...
Cancel
Your message has been sent!
Close
Eventbrite
Use Eventbrite for event ticketing and online event registration
2012 Eventbrite
About
Terms
Privacy
Help Center
Already registered?
Get your tickets
Questions?
Contact the organizer
var s_account = 'ebeventbriteproduction';
EB.Facebook.init({
appId: '28218816837',
locale: 'en_US',
scope: 'email,friends_location',
internalReferrer: 3
,skipMongo: true
});
/* TODO: refactor this */
jQuery(function($){
/* For header */
$('#social_icons').delegate('.email_button', 'click', function(){
// the email invite opens in the same window
// an asynchronous ajax request would open the new page before sending the record action request
// here we use a synchronous request, however we don't need to wait for the response
// so we use a negligble timeout
EB.Analytics.recordAction({name:'sharehdr', category: 'email'}, {async: false, timeout: 1});
});
$('#social_icons').delegate('.linkedin_button', 'click', function(){
EB.Analytics.recordAction({name:'sharehdr', category: 'linkedin'});
EB.Social.linkedInPopup({
'url': $(this).attr('href')
});
return false;
});
$('#social_icons').delegate('.tweet_button', 'click', function(){
EB.Analytics.recordAction({name:'tweetbtnhdr', category: 'twitter'});
EB.Social.twitterPopup({
'url': $(this).attr('href')
});
return false;
});
/* For "social sharing module" */
$('#social_module').delegate('.email_button', 'click', function(){
// the email invite opens in the same window
// an asynchronous ajax request would open the new page before sending the record action request
// here we use a synchronous request, however we don't need to wait for the response
// so we use a negligble timeout
EB.Analytics.recordAction({name:'share', category: 'email'}, {async: false, timeout: 1});
});
$('#social_module').delegate('.linkedin_button', 'click', function(){
EB.Analytics.recordAction({name:'share', category: 'linkedin'});
EB.Social.linkedInPopup({
'url': $(this).attr('href')
});
return false;
});
$('#social_module').delegate('.tweet_button', 'click', function(){
EB.Analytics.recordAction({name:'tweetbtn', category: 'twitter'});
EB.Social.twitterPopup({
'url': $(this).attr('href')
});
return false;
});
});
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
var pageTracker = _gat._getTracker("UA-141520-1");
pageTracker._trackPageview();
if (!!window.EB) {
if (!!window.pageTracker){
EB.Analytics.init('event-', pageTracker);
} else {
EB.Analytics.init('event-');
}
}
EB.Registration.init({
firstAttendeeId: '',
recaptcha_lang: 'en'
});
Please log in or sign up
In order to purchase these tickets in installments, you'll need an Eventbrite account. Log in or sign up for a free account to continue.
Log in
Sign up
updateCheckout(); updateTracking();
s.pageName = 'events: ' + document.title; s.channel = 'events'; s.prop1 = s.pageName; s.prop2 = s.pageName; s.prop3 = s.pageName; s.prop4 = 'site section'; s.events = 'prodView,event3'; s.products = ';5070512038'; s.t();
jQuery(function(){
jQuery('.contact_organizer_link').click(function(e){
if(window.s){
window.s.events = 'event27';
var $container = jQuery(e.target).parents();
if ($container.filter('#new_organizer_module').length !== 0){
window.s.eVar12 = 'new host panel';
} else if ($container.filter('#hostedByDiv').length !== 0){
window.s.eVar12 = 'host panel';
} else if ($container.filter('#eb_header.new_header').length !== 0){
window.s.eVar12 = 'new header';
} else if ($container.filter('#eb_header').length !== 0){
window.s.eVar12 = 'header';
} else if ($container.filter('#eb_footer').length !== 0){
window.s.eVar12 = 'footer';
} else if ($container.filter('#new_eb_footer').length !== 0){
window.s.eVar12 = 'footer oct2012';
}
window.s.tl();
}
});
// New event header tab click tracking
jQuery('.eb_header_tab > a').live('click', function(e) {
e.preventDefault();
window.open(e.currentTarget.href, '_blank');
if (window.s jQuery.cookie) {
var cookieData = {
expires: 30,
path: '/',
domain: ".eventbrite.com"
};
if (e.currentTarget.id === 'create_event_tab') {
jQuery.cookie('mgeventheadercreate', 1, cookieData);
window.s.events = window.OmnitureEventsMap['CREATE_EVENT_HEADER_CLICK'];
} else {
jQuery.cookie('mgeventheaderfind', 1, cookieData);
window.s.events = window.OmnitureEventsMap['FIND_EVENTS_HEADER_CLICK'];
}
window.s.tl();
}
});
// New organizer module link click tracking
jQuery('.organizer_link > a').live('click', function(e) {
e.preventDefault();
window.open(e.currentTarget.href, '_blank');
if (window.s jQuery.cookie) {
if (e.currentTarget.id === 'profile_link') {
window.s.events = window.OmnitureEventsMap['ORGANIZER_MODULE_PROFILE_CLICK'];
} else if (e.currentTarget.id === 'past_link') {
window.s.events = window.OmnitureEventsMap['ORGANIZER_MODULE_PAST_EVENTS_CLICK'];
} else if (e.currentTarget.id === 'upcoming_link') {
window.s.events = window.OmnitureEventsMap['ORGANIZER_MODULE_UPCOMING_EVENTS_CLICK'];
}
window.s.tl();
}
});
});
EB.GoogleMap.init({
lat: '45.530772',
lon: '-122.655575',
zoom: '16',
language: 'en',
scheme: 'http://'
});
(function($, EB) {
if (!(jQuery.browser.msie jQuery.browser.version === '6.0')) {
$.getScript('http://ebmedia.eventbrite.com/s3-build/12517-rc01-07-b9bee51/django/js/production/event_tracking.js', function() {
EB.Facebook.ready(function() {
window.location.hash = '';
var eventTrackingRouter = new EB.EventTracking.Router({
FB: FB,
ebServer: 'http://www.eventbrite.com',
eventData: {"start_date_month_short": "Jan", "address_short": "1000 NE Multnomah, Portland, OR", "name": "Couchbase PDX Developer Day 2013", "start_date_day_of_the_week": "Tue", "url": "http://www.eventbrite.com/event/5070512038/esv", "start_date_formatted": "Jan 22, 2013 8:15 AM PST", "repeats": false, "id": 5070512038, "categories": ["Classes", "Conferences"], "start_date": 1358871300000},
saveOnInit: EB.EventTracking.userClickedSave,
useLocalStorage: false,
fetchCount: true,
locale: 'en_US'
});
Backbone.history.start();
EB.EventTracking.Analytics.init(
eventTrackingRouter,
{
'eventId': 5070512038,
'internalReferrer': '7'
}
);
});
});
}
})(window.jQuery, window.EB);
(function($, EB) {
if (!(jQuery.browser.msie jQuery.browser.version === '6.0')) {
EB.namespace('EventTracking');
EB.EventTracking.userClickedSave = false;
$('#track_event').click(function(e) {
e.preventDefault();
EB.EventTracking.userClickedSave = true;
});
}
})(window.jQuery, window.EB);