/db

The Art of Storytelling with Data

The Art of Storytelling with Data

People enjoy stories. Everyone likes listening to stories, reading stories, and watching stories unfold on TV or at the movies. Stories are the natural mode in which the brain processes information. At a fundamental level, stories are what make us human, and we can use stories to purposely increase engagement when we communicate with others – making them more likely to trust, understand, and remember us. The principle of storytelling engagement applies not only to individuals, but also to businesses. Storytelling is a powerful communication tool that businesses need to examine more closely. As Jonathan Gottschall noted in his book The Storytelling Animal: How Stories Make Us Human, “We are, as a species, addicted to stories. Even when the body goes to sleep, the mind stays up all night, telling itself stories.”

The Science Behind Storytelling

When we listen to presentations with boring bulleted points, certain parts of the brain get activated.

Broca's area and Wernicke's area

Broca’s area and Wernicke’s area.

Scientists call these areas Broca’s area and Wernicke’s area. Overall, these areas engage the language processing parts of the brain that decode words into meaning. However, when storytelling is involved, our brains become more stimulated. On the onset of a story the brain initially engages the Broca and Wernicke areas just as if it were listening to someone read a bulleted list of items, but as the story becomes progressively more engaging, other areas of the brain, such as the motor, sensory, and frontal cortices light up.

It’s possible to stimulate many parts of the brain with a well-told story. This is possible because, when listening to a story, in addition to the language processing parts in the brain becoming active, other parts of the brain that would be used if we were actually experiencing the events of the story become active as well. With this level of brain activity, people are more intellectually and emotionally invested in the story and the storyteller. Because people are experiencing a more profound brain event, they enjoy the experience more, understand the information at a deeper level, and retain the information for a longer period of time. With this knowledge, businesses can develop a firmer connection with clients and even prospective clients by telling them the story behind their company’s data.

Parts of the brain that are stimulated when listening to a story.

Parts of the brain that are stimulated when listening to a story.

Telling Stories with Data

All business and sales associates know that a good story resonates with clients. Stories help bridge the distance between quantitative data and people who must make difficult business decisions based on an

Little Red Riding Hood

Stories are memorable.

analysis of data. Michael Bostock, the data visualization and storytelling guru, notes that visualizations are how you can go about making an “abstract idea more concrete.” The core data used to create your visualizations can then act as the foundation of your story.  The story, like a novel, is the main drive of information – pictures or visualizations are merely decorative. The story is what makes clients care about and engage with your data. In fact, stories are the most effective way to contextualize data and interact with clients on an intellectual level. Structured narratives are sense-making devices that explain the over-arching patterns of data to clients. That’s why an over-reliance on data visualizations can hurt businesses when it comes to satisfactorily explaining data. Visualizations are excellent tools for data analysis, but visualizations are not self-contained explanations of data, although they can be an important step in understanding a set of data. Introducing a good story on the heels of your visualizations can work wonders in explaining data and eliciting trust in your business and data analysis skills.

Tips for Creating Customized Stories for Clients

  1. Identify the audience. As a storyteller, you naturally adjust your stories to fit your audience. When telling a story to a client you’ve just met, you use different wording and insert more explanatory information than if you were telling the same story to a colleague.
  2. Identify how you will structure the story – focus on the data points will you emphasize to your clients. Bostock urges data scientists (and data storytellers) to ground their data examples and explanations with facts, noting that “By demonstrating real-world usage, you strengthen the argument” and the story.
  3. Use visualizations to complement your story, but not to tell your story. Analytics tools are now ubiquitous, and so are visualizations, especially bar graphs, pie charts, tables, and line graphs. These tools focus on data exploration, not on explaining data or in creating an engaging, storytelling_pull_quotemeaningful story.
  4. Use fresh data.
  5. Reveal patterns. Patterns help explain data and illuminate what is special about each data set.
  6. Remember best-selling author and marketer, Seth Godin’s wise assessment that “Marketing is no longer about the stuff that you make, but about the stories you tell.”

Storytelling with SlashDB

SlashDB

SlashDB has made it our mission to make data retrieval a highly accessible, searchable, and intuitive process. Unlike data extracts, SlashDB API is an automated, live link to your business’ databases, allowing for faster and the most up to date access to data, so you can construct the most relevant and engaging story. 

Contact us at SlashDB and we’ll work with you to find the best API add-on configuration for your business and storytelling needs.

URLs – Following the Trail of Associative Thinking

URLs – Following the Trail of Associative Thinking

We all understand that the human mind does not operate in a linear fashion. Despite this, people routinely rely on linearly arranged materials (reports, spreadsheets, articles, etc.) to review or study new information. Such materials are often organized into sections on individual topics, with each section consisting of paragraphs featuring a specific idea (effectively building a plodding, linear structure). This is antithetical to the associative nature of the human mind. It is only natural, then, that throughout history we have dreamt of machines that would one day allow us to review information and data in multilinear and tangential fashions.

“As We May Think” Is How We Really Think

Memex Machine

Bush’s Memex machine as visualized in the original print publication in The Atlantic.

In 1945, Vannevar Bush published his renowned article, “As We May Think,” in which he discusses the associative nature of the human mind. Bush also wrote at length about the inadequate structure of data storage and his vision for a machine, the Memex (Memory Extender) that would mirror the associative qualities of the human mind while also relieving people of the burden of scouring through endless indexes for information. Bush maintained that the human mind “operates by association” and that once we grasp an idea, our minds “snap instantly to the next [idea] that is suggested by the association of thoughts, in accordance with some intricate web of trails carried by the cells of the brain.”

Bush’s admiration for the power of the human mind is evident from the following quote: “the speed of action, the intricacy of trails, the detail of mental pictures, is awe-inspiring beyond all else in nature.” It is natural, then, that Bush would propose the building of a machine that would mimic the abilities of the mind. Bush envisioned the Memex as operating with the speed and associative capBush Pull quoteability of the mind, in other words, a machine that would literally become an extension of memory and thought, stating that “selection by association, rather than indexing, may yet be mechanized.” Bush envisioned the mechanization of association by having the user of the Memex “build a trail” or mind map. This process of joining or linking information was an early call for the need and capabilities of URLs.

Data Pointers

There are many disadvantages to traditional data storage – one of the biggest disadvantages being that users must rely on complicated queries to search through linear, tabular data in order to find specific information. Computer memory is even more rudimentary – a contiguous string of seemingly meaningless zeroes and ones. In order to make use of computer memory, natural information gets digitized, transformed programmatically into appropriate data structures and stored as memory. Once this is accomplished, data can later be retrieved and interpreted as program logic at a location address or pointer which must also be memorized.

Data pointers have been used for years (since 1964 to be exact) to improve data retrieval and to help programmers ruminate about data at a higher level of abstraction. A pointer is a value that references or points to another value stored somewhere else within a program memory. Essentially, acting as something of a signpost, allowing users to more easily find the data they want to review. The obvious downside to this method is that the data pointer is limited to data contained within one machine – making building distributed systems problematic.

SlashDB as Your Innovative Solution

SlashDB technology takes the concSlashDB Logoept of data pointers to the next level by using Uniform Resource Locators (URLs) as pointer structured data resources. SlashDB automatically assigns each data resource a URL which allows data to be sourced from one machine to another. This not only helps users navigate data and associate specific pieces of data more easily than ever before, but also allows software architects to think of disparate data in similar terms as if that data were contained within the program’s memory.

For instance, a URL data pointer for a customer table will lead to a pointer for a specific customer within that table, which will, in turn, lead to a specific property of the customer, such as an email address or invoices. Data exposed at this granular level, like small breadcrumbs dropped along a logical path of thought, provide a trail or map that allows programmers to build applications spanning multiple machines. URL data pointers coupled with SlashDB technology sync seamlessly with thought processes and patterns, allowing URLs to perfectly imitate the highly associative nature of the human mind and memory.

SlashDB has made Bush’s concept a reality, and, in doing so, takes his vision of associative technology one step further by creating unique data pointers in the form of URLs for each piece of data – providing associative footholds for the mind to use with the greatest ease possible. SlashDB thoroughly understands that tools which share the same associative capabilities of the mind increase utilization and heighten productivity.

Mind Map

Mind Map

Associative technology melds with the mind, allowing for a rapidity of exploration based on association. This results in an intricate network of relationships that can range from the highly related to the tangential to the most tenuous of connections, all of which can work to create new and novel conceptions of data and data usage.

SlashDB has made it our mission to make data retrieval a highly accessible, searchable, and associative process.  If you think our innovative methods will help streamline your business, contact us and we’ll work with you to find the best solution for your needs.

 

SlashDB and Data Analysis

SlashDB and Data Analysis

An increasingly popular trend in IT and business intelligence is data analysis. At SlashDB, we celebrate this trend as it contributes to the rising awareness of data’s amazing capabilities. Data analysis tools allow for the construction of predictive models that enable businesses to anticipate the needs of their customers – changing customer service into a proactive rather than reactive element.

Recent advances have made data analysis tools both more affordable and more precise in their predictions. To help predictive models reach their full potential, new data analysis tools are adding API technology to help interpret and organize complex un-structured and real-time data, as well as to support in-house development of data analysis apps.

Pairing Data Analysis and APIs

Pairing data analysis tools with APIs enables more efficient and in-depth data collection. APIs not only help extract more specific data than ever before, they also help expose real-time data for more precise and up-to-date predictive models – predicting trends and modifications ahead of the competition.

Combining data analysis tools with APIs helps businesses create more detailed and consumer-specific predictive
models and applications. These predictive models and apps help businesses to fully gauge the desires and needs of their customers – enabling proactive customer support and, in turn, higher customer satisfaction.

Data analysis tools paired with APIs are helping businesses achieve higher revenue than ever before by speeding up and simplifying data collection. This is a trend that businesses simply cannot afford to miss out on. The best way to get the most out of your data analysis tools, and keep up with the competition, is to adopt an API add-on to streamline data extraction.

Case in Point – SlashDB in Real Life

The theories behind adopting API technology in order to increase the effectiveness of data analysis tools are informative – and well-considered – but real life examples are sometimes even better at illustrating a point. For instance, SlashDB powers APIs for Aruba Tourism Authority. Our API helps them collect valuable data and gives them heightened insight into prospective travelers’ specific interests in the island’s activities. Aruba Tourism Authority uses an attractive web application and digital content on arubashortcuts.com as a platform for gathering important data from prospective visitors.

beachfront-dinner

SlashDB captures the data from their website and seamlessly integrates it into Google Spreadsheets where it is analyzed in real time. By pairing an API with data analysis tools, Aruba Tourism Authority is able to capture and analyze data that will help them attract more visitors and increase revenue. This is an excellent example of the effectiveness and efficiency that APIs bring to data extraction and analysis.

aruba-report

SlashDB: Your Data Analysis API Solution

Adding an API add-on like SlashDB to your data analysis set-up can help you extract important data from predictive models, enabling you to meet and exceed customer expectations across multiple channels.aruba_island

At SlashDB, we focus on creating APIs with both high accessibility and heightened searchability. That’s why our API  add-on relies on a “what you see is what you get” set-up. This kind of set-up increases the speed and efficiency of data extraction. Our technology enables you to access your data through multiple platforms and creates a unique hyperlink for each individual piece of data.

Important Reasons Why You Should Pair SlashDB with Your Data Analysis Tools

  • SlashDB makes databases easily accessible from any analysis tool including (but not limited to): R Studio, Jupyter Notebook, Qlikview, Tableau, and Excel.
  • SlashDB makes working with databases as simple as working with plain files – with the added bonus that the data retains its integrity and authorizations while staying up-to-date.
  • SlashDB allows users to access and retrieve data with ease, relying on their intuition to extract the data they need rather than relying on complicated search queries.
  • With SlashDB, the content in your data analysis software or database becomes accessible through authorized web and mobile applications.SlashDB logo

SlashDB is committed to creating APIs that are highly accessible, searchable, and adaptable to other business and software tools. SlashDB’s API add-on can help streamline your business, allowing for increased profit margins and higher customer satisfaction. Contact us at SlashDB and we’ll work with you to find the best API add-on configuration for your business needs.

Is Amazon CTO’s Call for Simplified Solutions a Shout-Out to SlashDB?

Is Amazon CTO’s Call for Simplified Solutions a Shout-Out to SlashDB?

SlashDB is proud to share the news that leading technologist and CTO of Amazon, Werner Vogels, recently posted an article on API technology that mirrors our own beliefs and technological developments. Vogels’ article examines technology trends of 2016, specifically the benefits of adopting API technology. Vogels’ thoughts and ideas about API technology and development so closely match our own endeavors in streamlining data storage that we really have to share his article. You can read Vogels’ article in full here or read below for a recap of the highlights.

Simplified Solutions

In his article, Vogels notes that the call for building simpler systems will continue to soar in 2016. He believes that adopting APIs is the ultimate answer to the quest for simplified data storage. Vogels touts the many benefits APIs offer, especially when paired with a cloud platform. Specifically, he asserts that the cloud is the perfect platform for constructing APIs because it offers both scalability and low investment costs.

Vogels believes that APIs in general (and cloud-based APIs specifically) are the future of data storage. This notion is supported by a careful study of technology trends which reveals evidence that APIs are the simplified solution to the increasingly urgent problem of data storage. APIs, as Vogels points out, enable organizations, big and small, to develop at exponential rates, with the potential to shoot off in unexpected and exciting directions.

Most importantly, Vogels notes how adaptable APIs are to new and legacy software, stating:

The great thing about APIs is they can be consumed internally as well as externally. We see not only new software getting APIs but also legacy software components like the system-of-records being wrapped with APIs such that new product innovations can access the legacy systems.

SlashDB API Joins Internal and External SystemsThis statement especially delights us at SlashDB as we have provided services for new systems and API add-ons for existing systems for years. In fact, Vogels’ sentiments and high esteem of APIs adheres so closely to our own beliefs and practices here at SlashDB that we now feel something of a personal kinship with him.

Victor Olex, founder and CEO of SlashDB, stated that he is thrilled that SlashDB’s ideas are now validated by a luminary such as Vogels. SlashDB has been an advocate for advancing the API ecosystem to legacy systems for years and we’re very happy to be joined by someone with Vogels’ background and experience.

SlashDB as Your Simplified Solution

SlashDB provides a “what you see is what you get” interface that allows users to access and retrieve data with ease, relying solely onSlashDB logo their intuition to guide them through the database. Our API add-on creates hyperlinks for each piece of data, enabling increased efficiency and workflow. We’re fully committed to creating APIs with accessibility, searchability, and speed.

SlashDB’s API solution is available in the Amazon Web Services Marketplace.We also provide on premise installation – contact us and we’ll bring our simplified API solution directly to you.

Join us in our mission to create a simplified database and development ecosystem, a solution that will usher us into a new age of technological innovation.

API Gateways – Gateways to the Future

API Gateways – Gateways to the Future

Amazon recently created a stir when they released their very own API Gateway. Their announcement generated a new interest and, in some cases, renewed interest in APIs and API gateways. At SlashDB, we’re glad for any news that stirs up API and API gateway chatter – after all APIs and databases are kind of our thing. This chatter has raised questions for some business owners – about APIs in general, API gateways more specifically, and, most importantly, how API gateways can help business.

What is an API?

First, let’s breakdown what API stands for: Application Programming Interface. That’s a great start, but what exactly is an application programming interface? It’s actually pretty simple.

Applications are software – smartphone games like Angry Birds, Applicatation Programming Interfacesocial networks like Facebook, and commonly used computer standards like Microsoft Excel are all examples of applications.

Programming is simply the code that computer scientists use to build and interact with an application.

An Interface is the landscape on which two or more different applications overlap – allowing them to communicate.

So to put it very simply – APIs allow computer scientists to interact and communicate with applications.

A good way to visualize this concept is to image an API as a helpful and untiring office intern. The intern acts as a middleman between the programmer and the application – ferrying requests from the programmer to the application and returning the requests to the programmer after a brief chat with the application.

Now that we’ve got a good idea what an API is we can focus on API gateways.

What is an API Gateway?

An API gateway sounds cool and somewhat mystical, a kind of magical portal to another land or dimension. What’s even cooler is that an APIAPI gateways gateway really does act like a portal (or, at the very least, a nifty shortcut) to important information you want to extract from your application.

Essentially, an API gateway acts as a filter – cutting through all of the API traffic to retrieve your requests quickly and efficiently.

How Will an API Gateway Help Your Business?

An API gateway will help keep you on track. An API gateway increases processing speed without impacting the performance of backend systems. Even better, an API gateway will make you more organized, efficient, and productive by helping you to get to the data you need by a more direct and secure path.

SlashDB as an API Gateway

SlashDB acts as an API gateway – a lightweight shell for any application or database that instantly provides a central access point. With SlashDB the content in your application or database becomes SlashDB logoaccessible through authorized web and mobile applications. Our technology allows you to access your data through multiple platforms and – huge bonus – creates a unique hyperlink for each individual piece of data which streamlines your ability to extract data swiftly and efficiently.

At SlashDB were committed to accessibility and that’s why our technology acts as an API add-on or gateway and implements a “what you see is what you get” set-up. SlashDB allows users to access and retrieve data with ease, relying on their intuition to extract the information they need rather than relying on complicated search queries.

SlashDB has made it our mission to transform APIs into highly accessible, searchable, and efficient workplace tools. If you think an API gateway will help streamline your business, contact us and we’ll work with you to find the best solution for your needs.

SlashDB at the API Strategy and Practice Conference

SlashDB at the API Strategy and Practice Conference

SlashDB is proud to announce that founder and CEO, Victor Olex, had the honor of giving a presentation at the most recent API Strategy and Practice Conference. Olex, acting as SlashDB’s representative, presented a talk on API advancements and development, sharing the stage with representatives from Walgreens, CapitalOne, Intuit, and Datafiniti.

Olex, a proponent and innovator of API technology, delivered an intelligent and compelling presentation on the ability of APIs to completely restructure the database ecosystem, as well as SlashDB’s commitment to simplifying database interactionsvo_slashdb through increased accessibility and searchability. Olex was lauded by fellow participants for his presentation, with one participant stating that SlashDB’s achievements in the field of API development were the highlight of the conference.

You can view Olex’s full presentation here or read below for a run-down of the highlights of his talk.

Statistically Speaking

Olex’s talk focused in part on offering concrete statistical data on the financial benefits of adopting APIs. For instance, in 2015 companies globally spent $2.3 T (that’s right, trillion) on IT systems. Of that$350 B (billion!) was spent on technicaldata_integration_pull_quote consulting and software integration services, while still another $140 B was spent on middleware. In total, half a trillion dollars is spent annually on data and data integration software. Saying that this is a lot of money to spend on data-related software is an understatement.

So where exactly is all of this money going? A quick breakdown reveals that most of it is used to cover expenses for integration ETL (Extract, Transform and Load) and Data Warehousing. Fortunately, the extreme financial upkeep for these types of databases can be greatly reduced by adopting an API database add-on like SlashDB’s, which favors accessibility and searchability over a single access point.

Multiply Investments with Amazonian-Sized Results

Olex reviewed the successes of APIs in businesses, notably using Amazon as an example of how investing in an API can lead to (hugely) increased returns. Amazonamazon_logo adopted an API in 2002 and, flashing forward to 2016, Amazon is now reaping the benefits of that decision. Since adopting an API, Amazon’s returns have increased by 4,000%. Needless to say, this is a huge, almost fantastical, return for investing in an API.

API Accessibility

In his presentation, Olex aptly pointed out that the underlying theme of the conference was accessibility, a theme that he took up with great enthusiasm and insight, offering excellent justifications for adopting APIs to meet accessibility needs in databases. Olex passionately advocated for a “what you see is what you get” interface which allows users to access and retrieve data with ease, relying on their intuition to guide them through the database rather than relying on complicated queries. Olex was quick to point out that SlashDB implements this exact setup, providing an API add-on that creates hyperlinks for each piece of data, which is literally like having your data at your fingertips.

SlashDB as a Solution

The intelligent and compelling presentations at the conference definitely highlight the fact that APIs have made serious inroads into the logos of businesses within theslashdb-logo-stacked-75 past year. Their popularity will only continue to grow and progress into mainstream business practices.

At SlashDB we’re committed to creating APIs with accessibility, searchability, and speed. Join us in our mission to rehabilitate the database ecosystem into a thing of streamlined beauty (and save yourself time and money in the process).

Full Session Video

Without further ado we present the entire video of the “APIs in Enterprise” session (you can jump straight to minute 32 when our part begins here). Enjoy.

The Frustrating Fallacy of All in One Location Data Storage

The Frustrating Fallacy of All in One Location Data Storage

Storing all of your data in one location also known as data warehousing sounds convenient – all of the information you need in a single location – but there are a number of downsides to an all-in-
one-location set-up.

At SlashDB we’re dedicated to creating quick, convenient, and highly accessible databases. That’s why we have a qualm with traditional data warehouse structures. This method sounds deceptively simple – an easy solution to a complex problem – but don’t be fooled, this set-up is inherently problematic and SlashDB has resolved to eliminate these problems.

The Downsides of Data Warehousing

The logic to data warehousing can conceptually be broken down like this: imagine that you decide to store everything you need and value in a single closet at your work. Your closet will very quickly become stuffed to capacity. Cramming everything into one closet makes it difficult to find what you need. You spend longer looking for a specific item while a long queue forms behind you with all of your co-workers waiting to find what they need. This is called a bottleneck. Bottlenecks are caused by poor planning and poor design. Data warehousing is an inherently flawed concept – you will always run out of space and you will always be slowed down by batch-oriented data transfers. Data warehousing leads to frustration, lowered productivity, and poor performance.

Use SlashDB to Modernize Your Data Warehouse

Server bottlenecks are a big deal and the best way to avoid this problem is to modernize your data warehouse by connecting it to SlashDB.

SlashDB is an automatic API gateway to databases and can be connected to existing transactional databases as well as data warehouses to ease accessibility. Connecting SlashDB to an existing data warehouse structure is a quick and simple way to modernize your database and multiply returns on investments.

SlashDB focuses on making your data easy to find with individual hyperlinks for each piece of data. It’s quick to install and quick to use. Your data will be at your fingertips – no more digging through a crowded closet.SlashDB as a Central Access Point to Databases

Beyond Enterprise Systems

SlashDB takes an existing database model and automatically constructs a web service API from it. This makes your data instantly accessible to mobile applications, websites and enterprise systems.

SlashDB connects website to database

At SlashDB we want your data to literally be at your fingertips. Contact us and we’ll modernize your database, making your data accessible from anywhere and easily searchable. Make your life easier and join our movement to re-invent data storage into a seamless and stress-free process.

How to Prepare Your API for Holiday Traffic

How to Prepare Your API for Holiday Traffic

Did you hear that web’s fiber optic wires light up in different colors during Holiday season? Well, we are not certain that’s true, but without a doubt holiday shopping online is now more popular than ever.

Just to drive the point home, PracticalEcommerce predicts that online retail will increase by 13.9% in 2015.1 If that’s not enough to motivate you to get pull_quote_api_traffic_largeyour e-commerce API into tip-top shape – here are some stats that might convince you. According to data on Kissmetrics, 47% of people leave a website if it doesn’t load within two seconds and 79% of people will not return to a website if they are initially dissatisfied with its performance.2 And to bring it all the way home – 44% of dissatisfied visitors will also tell their friends about their dissatisfying experience.3

You should be sufficiently motivated at this point to take a close look at your API and make sure that it’s ready to meet the heavy demands of holiday shoppers. The configurations below are recommendations from SlashDB developers to help optimize the performance of your API during the holiday season.

 

Reconfiguring Your API to Optimize the User Experience

Our developers took the time to break down some useful NGINX configurations that will help prepare your API for holiday traffic. While there are many shopping_cart_scaled2factors that contribute to the overall functionality of your API, improving the configuration of your load balancing, caching, and rate limiting are three solid ways that you can improve your set-up for holiday traffic. That’s why our developers are focusing on these three configurations to improve the API user experience.

 

Load Balancing

Setting up basic load balancing in NGINX is fairly simple. All you need to do is define an upstream block with multiple servers running – these can be multiple application instances on the same machine or another server in your network. The code below shows a basic load balancing configuration in NGINX.

 

http {
    upstream slashdb_app {
        least_conn;
        server 127.0.0.1:8001 weight=3;
        server 127.0.0.1:8002;
        server 127.0.0.2:8001 backup;
    }
    server {
        listen 80;

        location /db* {
            uwsgi_pass slashdb_app;
            include uwsgi_params;
        }
    }
}

 

Load Balancing Breakdown

The code above might seem a tad intimidating for those with little experience customizing NGINX. It actually makes a lot of sense if you know what these things stand for. Take a look below to get a better understanding of how the code works to help improve your API.

upstream – assigns a name to a group of servers that will receive request traffic; referenced later in the uwsgi_pass directive

least_conn is a method used for distributing requests, other options are ip_hash, hash, least_time. If you don’t set anything yourself then the requests will automatically be distributed evenly among the servers.

weight the weight is directly proportional to the number of requests the server receives. If you set the weight to a high number then the server will receive a high number of requests. Similarly, setting the weight to a low number means that the server will receive a low number of requests.

backup flags the server as a last resort. A request will be sent if other servers are unavailable.

Caching

Another simple way to improve your API performance is to add cache. Before reaching for an advanced solution like Varnish, you should check out NGINX which serves static content very efficiently and is an incredibly capable web cache when placed in front of an application server. The NGINX configuration below proxies a WSGI (Web Server Gateway Interface) application and is similar to a regular proxy_cache.

 

server {
    listen 80 default_server;
    server_name example.com www.example.com;
    uwsgi_cache_path /var/cache/slashdb levels=1:2 keys_zone=slashdb_zone:10m inactive=5m;

    # additional cache key segments from query parameters and HTTP headers
    set $api_auth $arg_app_id$arg_app_key$http_app_id$http_app_key;
    location /db* { 
        uwsgi_pass unix:///var/run/slashdb/slashdb.sock;
        include uwsgi_params;
   
        uwsgi_cache slashdb_zone;
        uwsgi_cache_key $host$request_uri$http_authorization$cookie_auth_tkt$api_auth;
        # cache freshness
        uwsgi_cache_valid 200 302 5m;
        uwsgi_cache_valid 301 1d;
        uwsgi_cache_valid any 0;

        add_header X-Proxy-Cache $upstream_cache_status;
    } 
}

 

Cache Breakdown

The code above might seem a bit lengthy and complex, so we’ve broken it down and provided some explanations to help you feel more comfortable making these changes on your own. This is an important configuration as some locations tend to change more often than others. Using the right caching time values can dramatically reduce redundant calculations, database requests, and speed up your API.

location – URL fragment to which the cache settings apply; you can specify different setting for different parts of your API

uwsgi_cache_path

/var/cache/slashdb is the path to the directory to save cached files.
levels=1:2 sets the sub-directory structure in the cache.
keys_zone=slashdb_zone:10m is shared memory (10 MB) that stores all of the active keys and metadata in the cache.
inactive=5m sets the cache lifetime. If cached data is not accessed within 5 minutes (5m) it will be removed from the cache regardless of its freshness.

uwsgi_cache_key

$host$request_uri$http_authorization$cookie_auth_tkt$api_auth is a key used to differentiate cached files and $api_auth segments assure that each API user request is cached separately.

uwsgi_cache_valid sets the caching time for different response codes.

200 302 5m requests with status code 200 or 302 are cached for 5 minutes (5m).
301 1d sets redirects to be cached for 1 day (1d).

uwsgi_cache defines which zone (shared memory) to use for caching.

add_header adds a header to the response.

X-Proxy-Cache $upstream_cache_status header X-Proxy-Cache will tell you if  a response is HIT, MISS or BYPASS in the cache.

 

Rate Limiting

A very useful feature in NGINX is the ngx_http_req_module which is used to limit the request rate by using a ‘leaky bucket’ method that delays requests so that they are processed at a defined rate. A ‘leaky bucket’ method is useful as it provides a steady rate for requests (in the same way a leaky bucket has a steady drip, hence the name).

http {
  limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s;
  server {
    location /db* {
      limit_req zone=one burst=20;
    }
}

Rate Limiting Breakdown

Rate limiting really is a great way to improve the functionality of your API. Take a look at our explanations below so that you understand the configuration changes and feel comfortable making these adjustments.

 

limit_req_zone

$binary_remote_addr in this example the remote address is used as a key for checking the rate. The key can be a combination of various attributes.
zone=one:10m is the name and the size of the zone.

rate is the desired frequency of requests per second.

limit_req sets the maximum length of a queue with delayed or ‘leaky bucket’ requests. The default setting is 0.

zone=one defines which zone (key or rate) is to be considered.
burst=20 is the allowed number of delayed or ‘leaky bucket’ requests. In this example 20 is set as the allowed number of delayed requests.

 

We hope these configurations will help you have a more relaxing and profitable fourth quarter. SlashDB wishes you a  happy holiday season and a very happy high traffic online shopping season.

 


  1. Armando Roggio, “4 Predictions for 2015 Holiday Shopping Season,” Practical  Ecommerce.com, accessed October 23, 2015. http://www.practicalecommerce.com/articles/92465-4-Predictions-for-2015-Holiday-Shopping-Season.
  2. Sean Work, “How Loading Time Effects Your Bottom Line,” Kissmetrics.com, accessed October 23, 2015. https://blog.kissmetrics.com/loading-time/.
  1. Ibid.
SlashDB Creates an API for Twitter Challenge

SlashDB Creates an API for Twitter Challenge

 

Slash DB is proud to share our work for API Evangelist.

Earlier this month, API Evangelist issued a Twitter challenge to create an API for Ranking Digital Rights data. We’re happy to say that we not only accepted this challenge, but succeeded in creating the API in just a few short hours. This quick turnaround was possible by using SlashDB API technology.

api_evangelist_twitter2Victor Olex, SlashDB founder and CEO, (@agilevic) wrote:

I took your Twitter challenge and created the API for Ranking Digital Rights data. The data model does not include scores for individual lines of business, but it does have all qualitative data needed to make sense of it. I did not write any data aggregation queries, but we can add those later. The whole thing works off a MySQL database model, which I designed and fed with data from the spreadsheet.                                                                                                                                                                                                 api_evangelist_quote

At SlashDB we pride ourselves on creating easy to use  APIs that can be installed quickly and efficiently. API Evangelist’s challenge played right into our element and we’re happy to note that the result was exactly what they wanted. API Evangelist wrote, “What I like about SlashDB, is it lets you navigate the resources and relationships through the generated HTML pages, and then retrieve the XML or JSON you will need.”

The next time you’re faced with the need for an API think of SlashDB. We rise to any challenge without squabble – the only thing you’ll hear from us is a single utterance –“Done.”

 

 

Invitation to the API Strategy and Practice Conference

Invitation to the API Strategy and Practice Conference

We are excited to announce that our founder and CEO, Victor Olex, will be speaking alongside delegates from Walgreens, Intuit and CapitalOne at the 2015 API Strategy and Practice Conference taking place in Austin, Texas November 18th – November 20th.

The API Strategy and Practice conference is a vendor neutral and community supported API industry conference. The goal of this conference is to connect API practitioners and provide a platform to showcase and discuss APIs. This venue is a great way to engage with audiences and learn more about APIs.

This year’s conference will cover a range of interesting topics – you’ll have more than enough opportunities to really get your geek on. Most exciting of all (we’re slightly biased) will be Olex’s presentation – taking place on Friday, November 20th at 2pm. His talk will be featured as a part of the APIs in Enterprise segment, sharing the stage with delegates from Walgreens and Intuit. Here’s a sneak peek of some of the topics he will cover:

  • Modernization of Legacy Client/Server Systems with APIs
  • Using APIs Internally for Reporting, Data Science, and System Integration
  • Advantages of Creating an API Layer Over ETL and Data Warehousing

Olex will be representing SlashDB, which focuses on delivering APIs from your relational database and slashdb-logo-stacked-100providing an easy and secure way to manage essential data. Founded in 2010, SlashDB was initially conceived as a solution for securities reference data and market data. A short time after this our team had a major eureka moment and realized that our product could be used as a data gateway for web and mobile applications. We’ve definitely hit our stride since then and now serve a wide range of clients in the financial, academic, tourism, and publishing industries.

If you’re in the Austin, Texas area November 18th – 20th and you have an interest in APIs or simply want to learn more about APIs, you definitely need to check out the API Strategy and Practice Conference. This is a great opportunity to learn and network.