ਇੰਟਰਐਕਟਿਵ ਡੇਟਾ ਵਿਜ਼ੂਅਲਾਈਜ਼ੇਸ਼ਨ ਲਈ ਬੈਕਐਂਡ ਸੋਚ ਦੀ ਵੀ ਲੋੜ ਹੁੰਦੀ ਹੈ
ਲੋਕ ਡੇਟਾ ਵਿਜ਼ੂਅਲਾਈਜ਼ੇਸ਼ਨ ਦੇ ਗਲਤ ਪੱਧਰ ਦੀ ਪ੍ਰਸ਼ੰਸਾ ਕਰਦੇ ਹਨ।
ਉਹ ਸੁਚਾਰੂ ਐਨੀਮੇਸ਼ਨਾਂ ਅਤੇ ਚਮਕਦਾਰ ਨਕਸ਼ਿਆਂ ਵੱਲ ਧਿਆਨ ਦਿੰਦੇ ਹਨ। ਉਹ ਉਸ ਅਦਿੱਖ ਕੰਮ ਨੂੰ ਨਹੀਂ ਦੇਖਦੇ ਜੋ ਉਹ ਵਿਜ਼ੂਅਲ ਸੰਭਵ ਬਣਾਉਂਦਾ ਹੈ। ਉਹ ਇੰਜੈਸਸ਼ਨ (ingestion) ਕੰਮਾਂ ਨੂੰ ਨਹੀਂ ਦੇਖਦੇ ਜੋ ਗੰਦੇ ਡੇਟਾ ਨੂੰ ਸਾਫ਼ ਕਰਦੇ ਹਨ ਜਾਂ ਉਹ ਕੈਸ਼ (cache) ਰਣਨੀਤੀਆਂ ਜੋ API ਨੂੰ ਤੇਜ਼ ਰੱਖਦੀਆਂ ਹਨ।
ਉਹ ਅਦਿੱਖ ਕੰਮ ਹੀ ਅਸਲ ਉਤਪਾਦ ਹੈ।
ਜੇਕਰ ਤੁਸੀਂ ਡੇਟਾ-ਭਾਰੀ ਅਨੁਭਵ ਬਣਾਉਂਦੇ ਹੋ, ਤਾਂ ਫਰੰਟਐਂਡ ਸਿਰਫ਼ ਇੱਕ ਰੈਂਡਰਰ (renderer) ਹੈ। ਅਸਲ ਇੰਜੀਨੀਅਰਿੰਗ ਚੁਣੌਤੀ ਅੱਗੇ (upstream) ਹੁੰਦੀ ਹੈ। ਤੁਹਾਨੂੰ ਇਹ ਫੈਸਲਾ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ ਕਿ ਕਿਹੜਾ ਡੇਟਾ ਸ਼ੇਪ ਬ੍ਰਾਊਜ਼ਰ ਤੱਕ ਪਹੁੰਚਦਾ ਹੈ ਅਤੇ ਉਸ ਵਿੱਚੋਂ ਕਿੰਨਾ ਹਿੱਸਾ ਆਉਂਦਾ ਹੈ।
ਜੇਕਰ ਤੁਸੀਂ ਚਾਹੁੰਦੇ ਹੋ ਕਿ ਤੁਹਾਡੀ ਵਿਜ਼ੂਅਲਾਈਜ਼ੇਸ਼ਨ ਅਸਲ ਟ੍ਰੈਫਿਕ ਨੂੰ ਸੰਭਾਲ ਸਕੇ, ਤਾਂ ਤੁਹਾਨੂੰ ਬੈਕਐਂਡ-ਫਸਟ ਡਿਜ਼ਾਈਨ ਦੀ ਲੋੜ ਹੈ। ਇਸ ਤੋਂ ਬਿਨਾਂ, ਤੁਸੀਂ ਸਿਰਫ਼ ਇੱਕ ਅਸਥਿਰ ਮਾਰਗ ਦੇ ਉੱਪਰ ਇੱਕ ਵਧੀਆ ਐਨੀਮੇਸ਼ਨ ਲੇਅਰ ਵਾਲਾ ਡੈਮੋ ਭੇਜ ਰਹੇ ਹੋ।
ਬਹੁਤ ਸਾਰੇ ਵਿਜ਼ੂਅਲਾਈਜ਼ੇਸ਼ਨ ਸਟੈਕ ਇਸ ਲਈ ਅਸਫਲ ਹੋ ਜਾਂਦੇ ਹਨ ਕਿਉਂਕਿ API ਸਟੋਰੇਜ ਮਾਡਲ ਦੇ ਬਹੁਤ ਨੇੜੇ ਹੁੰਦੀ ਹੈ। ਬੈਕਐਂਡ ਰਅਅ (raw) ਰਿਕਾਰਡ ਭੇਜਦਾ ਹੈ, ਅਤੇ ਫਰੰਟਐਂਡ ਨੂੰ ਡੇਟਾ ਨੂੰ ਸਾਫ਼ ਕਰਨ, ਇਕੱਤਰ ਕਰਨ (aggregate) ਅਤੇ ਸਮੂਹਬੱਧ (group) ਕਰਨ ਲਈ ਮਜਬੂਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ। ਵਿਕਾਸ (development) ਦੌਰਾਨ ਇਹ ਤੇਜ਼ ਲੱਗਦਾ ਹੈ। ਪਰ ਪ੍ਰੋਡਕਸ਼ਨ ਵਿੱਚ ਇਹ ਮਹਿੰਗਾ ਹੋ ਜਾਂਦਾ ਹੈ ਕਿਉਂਕਿ ਹਰ ਉਪਭੋਗਤਾ ਨੂੰ ਡੇਟਾ ਦੀ ਸਫਾਈ ਦੀ ਕੀਮਤ ਚੁਕਾਉਣੀ ਪੈਂਦੀ ਹੈ।
ਤੁਹਾਡੇ ਬੈਕਐਂਡ ਨੂੰ ਇੱਕ ਪਲੇਅਬੈਕ ਮਾਡਲ ਪ੍ਰਦਾਨ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ, ਨਾ ਕਿ ਇੱਕ ਰਅਅ (raw) ਲੌਗ।
ਜਦੋਂ ਬੈਕਐਂਡ ਭਾਰੀ ਕੰਮ ਸੰਭਾਲਦਾ ਹੈ, ਤਾਂ ਸਭ ਕੁਝ ਬਿਹਤਰ ਹੋ ਜਾਂਦਾ ਹੈ:
- CPU ਦਾ ਕੰਮ ਬ੍ਰਾਊਜ਼ਰ ਤੋਂ ਬਾਹਰ ਹੋ ਜਾਂਦਾ ਹੈ।
- ਵਿਵਹਾਰ (behavior) ਦੀ ਜਾਂਚ ਕਰਨਾ ਆਸਾਨ ਹੋ ਜਾਂਦਾ ਹੈ।
- ਕੈਸ਼ੇਬਿਲਟੀ (cacheability) ਵਿੱਚ ਸੁਧਾਰ ਹੁੰਦਾ ਹੈ।
- ਸਿਸਟਮ ਭਵਿੱਖਬਾਣੀਯੋ
