Mongo-db - אפשרות לבצע scale

שיווקי

New member
Mongo-db - אפשרות לבצע scale

איך אני מגדיר ב-mongo-db את הסקאביליות. אפשרות לבסיס נתונים גדול בקריטריונים מסויימים (אחרי שהוא חורג מגודל מסויים. אחרי שטבלה מסויימת חורגת מגודל מסויים וכד').

אני רוצה הגדרה פשוטה, גם אם מדובר לבצע scale באותו המחשב.
זה משהו ראשוני שאני מעוניין לבדוק.

תודה.
 

שיווקי

New member
קראתי.

לא ממש ראיתי איך בדיוק להגדיר את ה-scale של ה-mongo, וגם אני מעוניין שיהיה משהו אוטומטי.

לפי מה שבדקתי. יש router (לפחות 2) ששם יש את הניהול של ה-db (ה-mongo).

יש shards אחד או יותר, ויש גם מקום שמקנפגים אותו.
רק לא ראיתי איזו דוגמה של קינפוג ה-db כך שיהיה סקאבילי.

אשמח להכוונה יותר מדוייקת.

תודה.
 

שיווקי

New member
מצאתי מספר קישורים בנושא.

זה קצת מורכב.
בכל מקרה, זה מחשב test ואין פה מספר מחשבים.
אני רוצה לנסות את התצורה על המחשב הבודד.

ראיתי איזו קישור : הגדרת sharding
לפי הדוגמה ואחרי:
קוד:
>use exampleDB
>sh.addShard( "mongo-shard-1:27017" );
{
        "ok" : 0,
        "errmsg" : "no such command: 'addShard', bad cmd: '{ addShard: \"mongo-shard-1:27017\" }'",
        "code" : 59,
        "codeName" : "CommandNotFound"
}

>sh.addShard( "mongo-shard-2:27017" );
...

>db.exampleCollection.ensureIndex( { _id : "hashed" } )

>sh.shardCollection( "exampleDB.exampleCollection", { "_id" : "hashed" } )
2017-10-27T18:50:16.364-0400 E QUERY    [thread1] Error: not connected to a mongos :
sh._checkMongos@src/mongo/shell/utils_sh.js:8:15
sh._adminCommand@src/mongo/shell/utils_sh.js:18:9
sh.shardCollection@src/mongo/shell/utils_sh.js:116:12
@(shell):1:1
ניסיתי להגדיר לפי הלינק: הגדרת רפליקציה למחשב בודד

קוד:
> rs.initiate();
{
        "info2" : "no configuration specified. Using a default configuration for the set",
        "me" : "erpcentos:27017",
        "ok" : 1
}
כן, הרצתי בנוסף עוד instance של מונגו בפורט שונה.

mongod --port 27018

הרצתי מונגו ב-Port של 27017 (פקודת mongo), ולאחר מכן:
קוד:
rs0:PRIMARY> rs.add("127.0.0.1:27018");
{
        "ok" : 0,
        "errmsg" : "Either all host names in a replica set configuration must be localhost references, or none must be; found 1 out of 2",
        "code" : 103,
        "codeName" : "NewReplicaSetConfigurationIncompatible"
}
קצת לא ברור מה לעשות.

אודה להכוונה.

תודה.
 
למעלה