Whats the difference between a mutable and an immutable data structure? Give an example of each in Python.
A mutable data structure allows for updates to be applied in place and without the need of creating a new object. The list object in Python is mutable, since you can add / remove elements from the same list, without creating a new one. An immutable data structure does not allow for updates to be applied, which means that after the object creation, only reads are allowed. For an update to be made using such structure, a new object must be created. An example in Python could be the tuple object.
What is the difference between: SVM classification error, SVM margin error and SVM total error?
A SVM has 3 very important components: the support vectors, the separating hyperplane and the margin. - When a missclassification occurs, it is because a given point is on the wrong side of the separating hyperplane, and that's called a classification error. - Whenever a point is inside the margin, that counts as a margin error. - The total error of a SVM, is the sum of the classification error and the margin error.
There are 2 major database management systems (DBMSs) that are widely used today: OLTP (OnLine Transaction Processing) and OLAP (OnLine Analytical Processing) systems. Which are the key differences in the usage of indexes for each of these DBMSs?
On OLTP systems we require a greater balance between the workload and the number of indexes in each table. Since these systems are always online and under service, indexes may slow it down due to updates on it's structure. It is key to understand which indexes are strictly necessary to improve the performance. This is usually achieved by creating indexes that do speed up queries, but that also are not updated constantly. On the other hand, OLAP systems do not require the same availability requisites that OLTP systems do, and this is because these systems are only used to gather valuable business information by executives, and never accessed by customers. In these situations, where the insertions / updates are periodic and scheduled, the number of indexes per table should be much higher.