سوالف اندرويد




العودة   سوالف سوفت > سوالف برمجة المواقع وتطويرها > PHP
التسجيل المدوّنات البحث مشاركات اليوم جعل الأقسام مقروءة

الوسوم:

الرد على الموضوع
 
LinkBack أدوات الموضوع
عضو نشيط
#1  
أرى ضعف فى قاعدة بيانات mysql ما الاقوى؟

السلام عليكم ورحمة الله وبركاتة

ارى ضعف فى قاعدة بيانات mysql فمع كثرة السجلات ومع الاستعلام فى اكثر من جدول ومع شهرة الموقع = بطىء او شلل تام فى السيرفر حتى ان وجدت حلول كاعمل كاش لأستعلامات ووو فهناك قيود بعض انشطة المواقع كمواقع البورصة مثلا بحاجة الى تحديث كل ثانية

انا ليس لى تعامل سابق مع قواعد بيانات اخرى ماهى انواع قواعد البيانات الاقوى التى تصلح لعمل مشاريع كبرى.






tech is offline   قديم 25-01-2012, 10:31 PM
الرد مع إقتباس
عضو نشيط
#2  

حسب معرفتي المتواضعة

الشركات الكبرى والبنوك: أوراكل
الشركات الصغيرة : DB2 Express

---------------------
مصادر لكن بالفرنسية:
http://www.indexel.net/infrastructur...ur-sa-pme.html

http://fadace.developpez.com/sgbdcmp/






بشير شكري is offline   قديم 26-01-2012, 12:03 AM
الرد مع إقتباس
عضو سوبر نشيط
#3  

عزيزي يوجد كثير من الحلول، فكل الحلول تعتمد على ماتريد عمله، فيوجد NoSQL و يوجد قواعد بيانات تعيش في الذاكره والخ، فيجب اولا تحديد ماتريد لكي تمشي على الطريق الصحيح، ابحث عن MongoDB فهي جميله ايضاً للاعمال الجانبيه






__________________
متى استعبدتم الناس وقد ولدتهم أمهاتهم أحرار........
-----------------------------------
شبكة الشعر الادبيه
ArabCoders is offline   قديم 26-01-2012, 08:40 AM
الرد مع إقتباس
Moderator
#4  

هل من تفاصيل؟ في اكثر الاحيان السبب ينحدر من عدم بناء الاستعلامات بشكل صحيح، او عدم وضع الفهرس في المكان المناسب او الاعدادات لم تعدل بالشكل المطلوب.

........ معلومة على الطاير: Facebook تستخدم MySQL
الدليل: http://www.mysql.com/customers/view/?id=757






__________________
هلابي افضل المواقع العربية تصميماً
انصح باستخدام ابونتو
hilaby is offline   قديم 26-01-2012, 06:17 PM
الرد مع إقتباس
عضو نشيط
#5  

بشير شكري: هل DB2 Express يدعمها apache او nginx وتتحمل البحث فى 3 مليون سجل بسرعة






tech is offline   قديم 27-01-2012, 08:16 AM
الرد مع إقتباس
عضو نشيط
#6  

ArabCoders: قواعد البيانات التى تعتمد على الذاكرة لم تنفع معى فى قاعدة بيانات بها 3 مليون سجل يتم البحث فيهم والذاكرة لاتتحمل هذا العدد, بالنسبة ل mongodb اطلعت على عدة دروس لطريقة الاستخدام احث انها بداية لايوجد فى الخيارات اللازمة






tech is offline   قديم 27-01-2012, 08:20 AM
الرد مع إقتباس
عضو نشيط
#7  

مرحبا بمشرفنا العزيز hilaby : اثناء البحث فى قاعدة بيانات بها 3 مليون سجل وانا الوحيد على السيرفر مثلآ الذى ينفذ هذة العملية مع عمل فهرست لحقل البحث يقوم السيرفر بالبحث ببطىء شديد , بالنسبة لأستخدام facebook ل mysql خبر جميل قد يعيد الأمل لى فى mysql قرات قبل ذلك ان facebook يعتمد على عدة قواعد بيانات بالأضافة انوا مطور امور على اللغات المستخدمة اعتقد عاملين حلول خاصة بيهم






tech is offline   قديم 27-01-2012, 08:26 AM
الرد مع إقتباس
عضو نشيط
#8  

MySQL رائعة جدآ وتنفع لاي استخدام
بالنسبة للاعمال الاكبر وكما تقول 3 مليون سجل حاول تستعمل اوراكل فستحل عليك الكثير من العناء ويمكنها تحمل الكم الهائل من الاستعلامات بنفس الوقت الدوائر الحكومية التي لديها كم هائل من البيانات تستعمل اوراكل داتا بيز
طبعآ تحتاج سيرفر اخر عليه فقط اوراكل






__________________
ميديا سوفت للبرامج
Andreno[at]Live.Com
قدمت عمـري للأحلام قربانا لاخنت عهداً ولا خادعت إنسانا والآن أحمل أحلاماً مبعثرة على أمل ان تتحقق
Andreno is offline   قديم 27-01-2012, 10:16 AM
الرد مع إقتباس
عضو نشيط
#9  

ﻻ اخفيك ان معلوماتي عن قواعد البيانات هزيلة جدا

قمت بالبحث قليلا و وجدت ان db2 express ﻻ تلاءم اﻻ القواعد البسيطة و المتوسطة للشركات
علاوة على ذلك لم اجد ذكرا لل apache انه يدعمها
db2 express فقط حل من اي بي ام لمنافسة اس كيو ال مايكروسفت






بشير شكري is offline   قديم 27-01-2012, 12:08 PM
الرد مع إقتباس
عضو نشيط
#10  

و عليكم السلام و رحمة الله و بركاته،

حسب ما فهمته منك، الـ MySQL ليست قادرة على أداء المهمات الصعبة. صح؟
طيب...
لكل مشكلة طرفين و في هذه الحالة الطرفين هم:
  1. MySQL
  2. أنت
انت اتهمت MySQL. (باتكلم بالنيابة عن MySQL و ما عندي فكرة شاملة عنه). يمكن، إذا سمحت تجاوب على الأسئلة التالية؟
  • ممكن تشرحلي كيف معلوماتك مخزنة؟
  • هل انت اللي قمت بتصميم قاعدة البيانات؟
  • إذا نعم، ايش كان منهجك في التصميم؟ هل اتبعت قواعد الـ normalization؟
  • ما هي مواصفات السيرفر اللي عليه القاعدة؟
  • هل فكرت تستخدم MySQL Cluster؟
بصراحة قعدت أقرأ، و خاصة فيه منتدى نقاش MySQL . فيه ناس قاعدة تشتكي زيك بس الردود توضح مشاكل السائل ما كان منتبهلها.

مثلا، إذا سيرفر الـ MySQL مشترك، فأكيد مو لحالك اللي بتضغطه.
و إذا قاعد تستخدم سيرفر منفصل للـ MySQL، هل امكانياته تسمح تتعامل مع اللي انت تطلبه؟ يعني، الـ MySQL تقدر تحمله على سيرفر مواصفاته عادية، بس أداءه بيكون عالي إذا استعلاماتك عادية. متى ما بديت تستعلم زيادة، بتكون وقتها محدود بقدرة السيرفر و ليس الـ MySQL.
طيب إذا سيرفرك مواصفاته عالية بس بطئ بسبب كثرة الاستعلامات، تقدر تستخدم MySQL Cluster لأنه المعلومات بتكون موزعة (إذا ما كنت غلطان) و كل سيرفر بيجاول على جزء من الاستعلام، و وقتها في سيرفر يدمج الاستعلامات الصغيرة و يرسلها لبرنامجك. (أتذكر مرة كنت باجرب الـ MySQL Cluster، و كل سيرفر استعمل أكثر من 400 ميغا بس من الذاكرو، بدون أي استعلام. فاتخيل كيف مع الاستعلامات -لو سيرفرك رامه 512 ميغا مثلا)

هذه من ناحية السيرفر، فيه مشاكل من ناحية البرنامج اللي يستعلم. كيف نوعية استعلاماته؟ هل استعلاماته مكررة؟ هل انت مرتب معلوماتك بشكل صح؟ هل مسوي indexing و من الكلام هذا للخانات اللي من جد تستفيد منها؟

بس في حالة إنك مرة ما تبغى تتعامل مع MySQL، تقدر تستعمل (زي ما قال Arabcoders) الـ NoSQL، و بالتحديد mongodb. مواصفاتها مرة ممتازة و سهلة التحميل و تشتغل بسرعة و خفيفة.
و فيه حالة تبغى تشطح ، استعمل Apache Cassandra. مكتوب في الموقع إنه أكبر cluster يستعمل cassandra مكون من 400 سيرفر و يخدم 300 تيرا بايت.

و ما أحبذ تروح للـ Oracle لأنه بصراحة بفلوس. و الشركات تستخدمه على فكرة مو عشان الأداء العالي، بالعكس يستخدموه عشان الخدمات اللي يحصلوا عليها بعد الشراء، زي الـ support و دورات تدريبية و من الكلام هذا.
الأداء تقدر توصله إذا احسنت استخدام أي شئ. و أكبر مثال إنه الشركات الكبيرة في الانترنت اللي من جد استعلاماتها كثيرة، تستعمل قواعد بيانات غير الأوراكل. و أحد الأسباب كمان إنه كل شئ opensource و يقدروا يعدلوا على التقنية بالشكل اللي يبغوا.

كتبت الرد على السريع و مالي نفس أرجع أقراه و أراجعه. بس أتمنى الفكرة وصلت

رائد






__________________
"اقْــرَأ "
اللهم ارزقنا حسن الختام
Cenrak is offline   قديم 27-01-2012, 02:04 PM
الرد مع إقتباس
عضو نشيط
#11  

Andreno: بعدما ذكر اخونا hilaby ان facebook يعتمد على mysql بحاول اشوف حلول mysql لقواعد البيانات الكبيرة بالنسبة لأوراكل هناك مشكلة انها لاتعمل على linux

بشير شكري: بحاول اطلع فى الايم القادمة على قواعد بيانات ibm ربما تكون مناسبة فى الاعمال الكبير

Cenrak: مشاء الله عليك اخى رائد معلوماتك ثرية عن قواعد البيانات, نعم انا من قمت بتصميم قاعدة البيانات, واتبعت قواعد normalization, ارى قاعدة بيانات mogodb محدودة فى الحجم والأداء مقارنة بالقواعد الاخرى, يوجد سيرفر خاص وليس استضافة, لم استخدم MySQL Cluster لاكن بقوم بتجربت هذة الطريقة ان شاء الله تكون هى الحل. استخدم فهرسة للبيانات لاكن لم تفلح معى هذة الطريقة والسبب انى ابحث فى جدول فى حقل الأسماء المشكلة ان جملة البحث تختلف فى كل مرة والسجلات اكثر من 3مليون بقليل, Apache Cassandra تخدم 300 تيرابايت اكيد دة شىء جميل جدآ






tech is offline   قديم 31-01-2012, 03:13 AM
الرد مع إقتباس
عضو نشيط
#12  

إقتباس:
المشاركة الأصلية بواسطة tech مشاهدة مشاركة
Andreno: بعدما ذكر اخونا hilaby ان facebook يعتمد على mysql بحاول اشوف حلول mysql لقواعد البيانات الكبيرة بالنسبة لأوراكل هناك مشكلة انها لاتعمل على linux

بشير شكري: بحاول اطلع فى الايم القادمة على قواعد بيانات ibm ربما تكون مناسبة فى الاعمال الكبير

Cenrak: مشاء الله عليك اخى رائد معلوماتك ثرية عن قواعد البيانات, نعم انا من قمت بتصميم قاعدة البيانات, واتبعت قواعد normalization, ارى قاعدة بيانات mogodb محدودة فى الحجم والأداء مقارنة بالقواعد الاخرى, يوجد سيرفر خاص وليس استضافة, لم استخدم MySQL Cluster لاكن بقوم بتجربت هذة الطريقة ان شاء الله تكون هى الحل. استخدم فهرسة للبيانات لاكن لم تفلح معى هذة الطريقة والسبب انى ابحث فى جدول فى حقل الأسماء المشكلة ان جملة البحث تختلف فى كل مرة والسجلات اكثر من 3مليون بقليل, Apache Cassandra تخدم 300 تيرابايت اكيد دة شىء جميل جدآ
أهلين ...
انت قلت إنه معلوماتي "ثرية". الحمد لله أعرف الخفيف لأني اقرا من فترة لفترة
شوف، بصراحة من ردك شكلك لسه جديد في عالم قواعد البيانات (لا تقولي ليا كم سنة على الـ MySQL )

1. أوراكل ما تشتغل على اللينكس؟؟؟؟؟؟
مين قال؟ و ايش مصدرك؟
بالعكس، أداء الأوراكل على اللينكس أحسن من الوندوز
http://orainvicta.com/?p=177

2. الـ DB2 Express مو مناسبة. ليه؟
ادخل على صفحتها في ويكي: http://en.wikipedia.org/wiki/IBM_DB2_Express-C
بتلاقي إنه لها عيوب:
* في حالة الترقية (إذا سيرفرك لينكس) لازم تحذف النسخة القديمة و تحمل الجديدة.
* في حال رغبتك بالقديمة، فإن الشركة توقف الدعم متى ما نزّلت نسخة أحدث
* النسخة المجانية محدودة باستخدام فقط 2 جيجا رام
يعني بعّد

3. تشوف إنه mongodb ضعيفة و مو قد المستوى و انت ما جربتها؟
على فكرة موقع craigslist مستخدمها و مأرشف أكثر من 2 مليار "ملف" فيها.
هذه قائمة فيها اللي يستخدموا mongodb، http://www.mongodb.org/display/DOCS/...on Deployments
أتمنى تجربها قبل ما تحكم ...

4. Cassandra تخدم أكثر من 300 تيرا بس على 400 سيرفر ...

5. MySQL Cluster يبغالها مجموعة سيرفرات. سيرفر إدارة و سيرفر يستقبل طلبات الاستعلامات و سيرفر فيه المعلومات. تقدر تخلي الإدارة لحال و مستقبل الطلبات و اللي عليه المعلومات واحد (كمجموع 2 سيرفر) بس ما بتطبق منجية الـ Clustering صح.

6. ممكن تورينا الجدول (مش الجدول الحقيقي، بس كنوع المدخلات) و ايش اللي تدور عليه. يمكن نساعدك و نسرع العملية

7. أتمنى ما تزعل مني بس أبغاك تحط مصادر لمعلوماتك و تقنعني






__________________
"اقْــرَأ "
اللهم ارزقنا حسن الختام
Cenrak is offline   قديم 31-01-2012, 05:16 AM
الرد مع إقتباس
عضو نشيط
#13  

مرحبا اخى رائد نعم انا ليس لدى معرفة فى قواعد غير mysql كما ذكرت فى اول الموضوع , والصراحة استفد معلومات من حديثك على القواعد التى ذكرتها انت والاخوة, بالنسبة لـ mongodb بعد اطلاعى اليوم على عدة مقالات اوضحت امكانيات اكثر فيها http://search.cpan.org/~kristina/MongoDB/ اظن انى ظلمتها ولاكن تبقى التجربة على احجام قواعد بيانات كبيرة, وايضآ بجرب عمل Mysql cluster.

هذا هو الاستعلام الخاص بالجدول كبير الحجم
كود PHP:
select
`data_region_id`,
`
full_name`
from
`data_region`
where
like 
'%text for search%' order by `date_addeddesc limit 010 
الجدول يوجد به حقول اكثر لاكن يتم تحديد data_region_id, full_name فقط اثناء البحث ومن ضمن خيارات البحث المستخدمة لهذا الاستعلام احيانآ عند عدم الوصول للأسم بسبب التنوين والهمزة استعين بـ REGEXP احيانآ الاسماء تكون مدخلة بكتابة مختلفة "أحمد" - "احمد" - "عبد الرحمن" - "عبد ألرحمن"

قمت بعمل الحقل `full_name` indexing ولا فائدة لان تعليمة البحث بتكون مختلفة فى كل مرة !







آخر تعديل بواسطة tech في 31-01-2012 الساعة 11:42 AM.
tech is offline   قديم 31-01-2012, 11:36 AM
الرد مع إقتباس
عضو سوبر نشيط
#14  

آسف على التأخير بالرد، عزيزي قواعد البيانات جميعها تعمل بشكل جيد، لنأخذ مثال SQLite، فبعتقاد الكثير انها لا تنفع لعمل المواقع الكبيره، وفي الحقيقة انها تشغل مواقع sourceforge كمثال ويوجد ايضا CouchDB تبع Apache وعي تعمل على اكبر المواقع وهي بتقنيه RESTful، و 3 ملأين تسجيل ليس بالكثير، فانا اعمل على قواعد بيانات يوجد فيها مايقل عن 800 مليون مدخل، الحل الامثل هو عمل ارشفه بطريقه صحيحه، وأيضاً يوجد حلول آخرى للبحث مثل Sphinx، فمحرك البحث هذا جميل جداً ويصلح لكثير من امور البحث، وايضاً عزيز عمل بحث بإستخدام LIKE غير مستحب، فهو يهلك قواعد البيانات والاسباب عده.






__________________
متى استعبدتم الناس وقد ولدتهم أمهاتهم أحرار........
-----------------------------------
شبكة الشعر الادبيه
ArabCoders is offline   قديم 10-02-2012, 11:11 AM
الرد مع إقتباس
عضو نشيط
#15  

طيب عطوها بعض الوقت فمثل مانعرف mysql تابعه لشركة اوركل ..ورأينا في الاصدار الجديد تصميم جديد وسهل






فهد علي is offline   قديم 10-02-2012, 05:11 PM
الرد مع إقتباس
عضو سوبر نشيط
#16  

بصراحة ,,, ابدعتم في هذا الموضوع ,, جدا مفيد

ملاحظة اخي ,, الا يوجد cluster على مستوى القواعد _ او الجداول ؟ ( ولو برمجيا )
وفي حالة وجودها ,, الا تحل لك المشكله ولو قليلا






__________________
أهلا و سهلا بكم في :-
موقع دار الأوائل
تفضل معنا خدمات الاستضافة
موقع العبقري لخدمات الاستضافة
عبقري العرب is offline   قديم 10-02-2012, 08:45 PM
الرد مع إقتباس
عضو نشيط
#17  

ArabCoders : الحل Sphinx جربت علية قاعدة بيانات كبيرة وعند عمل البحث النتيجة سريع جدآ ولله الحمد تبقى طريقة عمل تزامن مع Mysql لتحديث البيانات أول بأول.
أى نوع قاعدة بيانات تستخدم فى القاعدة زو 800 مليون مدخل هل mysql مع الحل الرائع الذى ذكرتوا Sphinx أو نوع أخر من قواعد البيانات, أشكرك على المشاركة






tech is offline   قديم 11-02-2012, 01:55 AM
الرد مع إقتباس
عضو نشيط
#18  

فهد علي: mysql مع الحل الى ذكروا أخونا ArabCoders جزاة الله خير اعتقد ما بيكون فيها مشكلة Vbulletin اصبح يعتمد على sphinx

http://www.vbulletin.org/forum/showp...&postcount=387







آخر تعديل بواسطة tech في 11-02-2012 الساعة 03:48 AM.
tech is offline   قديم 11-02-2012, 02:00 AM
الرد مع إقتباس
عضو نشيط
#19  

عبقري العرب: فعلآ موضوع هام جدآ يهم كثير من المبرمجين






tech is offline   قديم 11-02-2012, 02:03 AM
الرد مع إقتباس
عضو نشيط
#20  

صراحة موضوع ثري بالمعلومات استفدت منه كثير
اشكر كل من شارك فيه بصراحة شي مثمر

عندي طلب زغنطوط بس

اذا ممكن احد يشرح طريقة استخدام
Sphinx
وماهي فكرت عمله






محمد عقيلي is offline   قديم 17-02-2012, 08:58 PM
الرد مع إقتباس
عضو نشيط
#21  

mysql من اقوى قواعد البانات الموجودة والدليل كما قال الاخوة ان موقع مثل الفيس بوك يستخدمها , و Google AdWords الذي يعرض ملايين الاعلانات في الثانية لواحدة
http://www.mysql.com/customers/view/?id=555
علما انه كان يستخدم اوراكل وقام بتغييرها

The AdWords system was initially implemented on top of the MySQL database engine. After the system had been launched, management decided to use Oracle instead. The system became much slower, so eventually it was returned to MySQL [3]. The interface has also been revamped to offer better work flow with additional new features, such as Spreadsheet Editing, Search Query Reports, and better conversion metrics.






hazem-t is offline   قديم 18-02-2012, 06:01 PM
الرد مع إقتباس
عضو نشيط
#22  

إقتباس:
المشاركة الأصلية بواسطة tech مشاهدة مشاركة
هذا هو الاستعلام الخاص بالجدول كبير الحجم
كود PHP:
select
`data_region_id`,
`
full_name`
from
`data_region`
where
like 
'%text for search%' order by `date_addeddesc limit 010 
السلام عليكم ..

اخي هل هذا الجدول هو الذي يحتوي على 3 مليون سجل .؟

أظن أن الإستعلام هذا يحتاج إلى تحسين .. والإندكس اللي أنت عامله على full_name ماراح ينفعك في هذا الإستعلام .. يجب عليك إستخدام حلول أخرى لتحسين الإستعلام لا سيما أنك تستخدم "order by" .. وأظن كذلك أن الإستعلام سيكرر مع كل 10 نتائج إن كنت لم تستخدم نظام كاش ليحفظ نتيجة الإستعلام .. وهذا يعني تكراره مع كل طلب للنتيجة التالية .!!

بعض الحلول التي يمكن إتبعاها :-

عمل إندكس على حقل date_added .. ويكون الإستعلام كالتالي :-

كود PHP:
select
`data_region_id`,
`
full_name`
from
`data_region`
where
like 
'%text for search%' AND `date_added` < '$last_date' order by `date_addeddesc limit 10 

على فكرة "LIMIT 10" أسرع بكثير من "LIMIT n,10"






shoqi is offline   قديم 18-03-2012, 10:11 AM
الرد مع إقتباس
الرد على الموضوع



أدوات الموضوع

قوانين المشاركات
لا يمكنك كتابة مواضيع جديدة
لا يمكنك إضافة ردود
لا يمكنك إرسال مرفقات
لا يمكنك تعديل مشاركاتك

كود vB متاح
كود [IMG] متاح
كود HTML غير متاح
Trackbacks are متاح
Pingbacks are متاح
Refbacks are متاح


المواضيع المشابهه
الموضوع كاتب الموضوع القسم الردود آخر مشاركة
تحويل قاعدة بيانات من MySQL 4.1.0 إلى MySQL 4.0.X !!! BIANTEX PHP 3 06-01-2007 05:17 PM
مشكلة مع قاعدة بيانات MySQL YaRo7i PHP 2 19-08-2006 08:48 AM
التحويل من قاعدة بيانات Access إلى MYSQL xainoo PHP 0 20-08-2005 05:32 PM
كيف اربط بين قاعدة بيانات mysql و ملف htaccess . ابو مشعل الويب والويب 2.0 والـ Semantic Web 1 30-10-2002 12:57 AM
احجز قاعدة بيانات MySQL مجاناً محمد_يوسف111 الويب والويب 2.0 والـ Semantic Web 24 20-05-2001 12:28 PM


جميع الأوقات بتوقيت غرينتش +3. الوقت الآن هو 08:22 PM.