Our key skill is building fast, secure online databases.
Tribal Systems has over 20 years' experience designing, building and operating online databases. We have considerable experience with MySQL, the world's most popular open source database.
MySQL is widely seen as the best database for web-based systems: it's free, fast, lightweight, easy to install, and widely supported. It is highly scalable, can store both tabular and no-SQL (JSON) type data. It can be operated in high speed and high availability systems.
We've even written the key SAMS' book on the subject, Teach Yourself MySQL in 21 Days!
While databases have evolved immensely over the past decade, the principles of SQL-based relational databases remain the same. But for some applications, no-SQL type databases have become more suitable. We take these factors into account whenever planning a database-type project.
When building a system for a client, we try to identify the client's need, and use the right tool for the job. For reasonably simple online databases, where we aim to do an out-of-the-box implementation with more or less no customisation, we usually recommend the Zenario content management system, with its useful Datasets feature for setting up online databases.
Setting up the data management area within the website is very quick, after which we declare the fields that are needed to model the data. Once launched, Zenario provides a data management area inside its Organizer back-office system.
This allows the customer administrators to create data records via the web browser, edit, and delete them. There are helpful search mechanisms and different ways of listing the data.
It is easy to add images to data records, and if need be to relate a record with a full HTML page of description.
For bulk data work, there is an Import function to pull in data from a CSV or Excel file, and there is an Export function too. These are handy when there is a large amount of data to pull in, or sharing the data with a colleague.
On the visitor front end of the website, there may be a number of interfaces, depending on the nature of the data. There may be a search interface (often this is done with Ajax-type interactions), or there may be a simple list of data records, paginated or filtered by some category.
Where data can be represented by one long list of records, it can be often be represented in a database by a single database table.
But a truer picture of the real world involves "normalising" data, and breaking it up into several tables. This increases complexity but can make management easier.
The argument for "normalisation" goes like this: let's imagine you have a database of used cars for sale. You might be tempted to enter the year of manufacture, the manufacturer, model, colour, condition and price all as text fields on each database record. What then happens when you want to search for cars with a particular brand? or a car with a certain colour that is newer than a certain year?
This problem is very hard to solve if you have one table of all-text records; but you need to normalise your data: separate years, manufacturers, models, even colours and conditions into separate tables. This makes the data cleaner, easier to maintain, and is essential for making user-friendly search interfaces.
It's worth putting some thought into the design of the online database before plunging in for the quickest implementation. The requirement should be discussed with a database designer, and an accurate model of the data should be developed.
Scaling up ought not be painful. If your site or its database are slow to use, something is wrong!
A good database should be capable of handling tens or even hundreds of thousands of records, and hundreds of simultaneous users.
At Tribal we have considerable experience of designing relational databases, always with an eye on scalability. We consider not just the size needed for today, but for tomorrow and the day after.
Our team built the International Camellia Register for the ICS.
This has a back-end administration area in which over 20,000 species of camellia flowers are managed, many with images.
The visitor interface has a simple, fast search, with the ability to filter results. A user can click through a result to see the full information.
The full view pages are also merged into the site's sitemap.xml file, so that the results can be easily found on search engines, and sites like Google Images.
Thinking about a website design from Tribal? Give us a call today, we'd be pleased to meet you.
Built on Zenario CMS
Sorry, this form requires you to accept Analytics and Functional cookies before it can load. Click here to allow these types of cookie.