Length, or distance, is not a vector. The vector quantity is displacement.
In integrals such as that in the Biot-Savart law, $$\mathbf B = \int_C \frac{I \, d \mathbf l \times \mathbf r'}{|\mathbf r '|^3}, $$
the integral is over a curve $C$, and $d\mathbf l $ represents an infinitesimal displacement along the curve. More rigorously, it is tangent to the curve, the red line in the figure below, which is the limit of the green line, a secant, as the two points of intersection approach each other. As you can see, it has a direction, so it must be a vector quantity.
Further, current $I$ is always a scalar, because the current is defined as the amount of charge flowing through a surface through unit time. Therefore it must be a scalar. However, in electrodynamics it is more customary to deal with the current density $\mathbf j$, which is a vector quantity and encodes both the amount of charge flowing, and its direction. For example, if there are $n$ charge carriers per unit volume (scalar), each with charge $q$ (scalar), and their velocity is $\mathbf v$ (a vector quantity), the current density is $$\mathbf j = qn\mathbf v.$$
The current $I$ though a surface $S$ is found by integrating the flux through it: $$I = \int_S \mathbf j \cdot d\mathbf S$$
which is a scalar, since it contains a scalar product.
In a thin wire, current can only flow along the wire, so the current density must always be along $d \mathbf l$, and its magnitude is fixed by the total current being $I$, so there is no real need to introduce the concept. However, in two- or three-dimensional conductors, it is necessary to introduce the current density, and then the Biot-Savart law takes the form $$\mathbf B = \int_V \frac{\mathbf j \times \mathbf r'}{|\mathbf r'|^3} \, dV$$
which can be reduced to the first form by taking the current density to be proportional to a suitable Dirac delta.