If I have a very big terrain, such as the entire world, will the Unity optimize that to just load the parte of the terrain that I can see? Or I need to split the terrain in different scenes? Any way to get big terrains working well, just like small terrains (what is what the player can see)?
I'm new to Unity.
You're asking about Level of Detail optimization. Unity doesn't automatically do this because (like game saving) the implementation needs to be specific to your project.
So no, the terrain is all loaded at once.
As far as I know the Terrain Engine in Unity is a script based thing. Heightmaps (and a lot of settings/textures/assets) are used as an input and the rest is done "on the fly" including culling and LOD. (The Pixel Error value is used as a LOD setting.) And the terrain in Unity is always "flat earth".
You can also use multiple terrains and load them on runtime.
There is a terrain stitching utility from one of the UA members: Stitchscape