RSS

weekly harvest | الحصاد الاسبوعي

weekly harvest | الحصاد الاسبوعي

 

الحصاد الاسبوعي!| weekly harvest

 
 

 

CATaZineLive cassandra java zk search series alzahed omar marwa ahmed catazine

 
 
 
 
 
 
 
 
 

 

 
 

Tags:

! طوّر طريقة بحثك

! طوّر طريقة بحثك

أغلب الناس عندما يقومون بالبحث علي النت يختارون أول نتيجه او لا يبحثون كثيرا نظرا لكميه النتائج الهائله التي تظهر لهم

وأكثرهم يستخدمون جوجل لسهولته ولكن هناك انواع لمحركات البحث

فيجب أن  تستخدم النوع  الذي يساعدك في عملية البحث وليس محرك واحد فقط وعند البحث عن شئ ولم تجده او وجدته غير مجاني فيجب ان تجرب محرك بحث اخر لان مفيش حاجه اسمها مش موجود.

أنواع محركات البحث

1)      محركات تقوم بالبحث علي حسب الموضوع (directory)

هذا النوع يقوم بالبحث بحسب الموضوع يعني مثلا ببحث عن مجال معين أو فئه معينه مثل الطيارات او السيارات .

ومن أشهر المحركات من هذا النوع  www.yahoo.com فهو يقوم بفهرسه المواقع و تصنيفها لفئات.

2)       محركات البحث (Search engine)

 وتعتبر الاكثر استخداما فهي تقوم بجمع كل كلمه موجوده في الموقع او اجزاء معينه مثل الموجود في الميتا تاج وتقوم بفهرستها بعد ذلك ومن اشهرها www.google.com

ولكن من اكبر عيوب هذا النوع انه يكون هناك الكثير من النتائج الغير مهمة تظهر عند البحث ويفضل استخدام هذا النوع عند البحث علي موضوعات صعبه او موضوعات تقع في فئه غير محدده

3)      محركات المحركات (Meta search)

وهذا النوع يعتبر خليط بين النوعين السابقين ولكن يميل أكثر للنوع الثاني ومن أشهر المحركات من هذا النوع www.dogpile.com فبجانب انه بيستخدم امكانياته في البحث فهو يستخدم امكانات عدد من المحركات الاخري ليعطي نتائج افضل ، وهو يستخدم إمكانيات ( www.yahoo.com     www.google.com     www.bing.com ) والفرق بين كل هذه الأنواع هو ترتيب النتائج فباختلاف الانواع المحركات تختلف طريقه ترتيب النتائج.

بعض الكلمات المساعده عند البحث

1)      “+” and” or

عند وضعهم مابين كلمتين البحث يجب أن يكون البحث عن كلتا الكلمتين وليسه أي منهما فقط مثلا   “New + search”   or  ” New and search”

يجب ان يتم البحث عن كلمه ” New ” بالاضافه لكلمه “search”.

يجب ان تحتوي النتائج علي الكلمتين وليس كلمه واحده فقط

2)      ” – ” not  ” or

عند وضعهم مابين كلمتين البحث يجب أن يكون البحث عن الكلمه الأولى وأن تثتثنياي الكلمه الثانيه (ما بعد العلامه مثلا)

“New – search” or ” New not search “ يجب ان يكون البحث علي كلمه “New” ولا يتضمن البحث كلمه  “search”.

3)      ” * “

توضع داخل جمله لتحل محل كلمه مفقوده  مثلا عند البحث عن “القوات * المصريه “ فانه يبحث عن ( قوات الصاعقة المصرية ، القوات المسلحة المصرية ) ، وهكذا

4)      “link  “

متبوعه بعنوان الموقع تعرض جميع اللينكات التابعه للموقع مثلا Linkwww.php.net

فانه يعرض الصفحه الرئيسيه للموقع وجميع الصفحات الموجوده في الموقع زي صفحه Register –about او المواضيع المختلفه التي توجد في الموقع.

5)      “Related “

قبل أسم الموقع لاظهار أي نتائج يراها محرك البحث ذات صله بالموقع المبحوث عنه

Related: www.php.net فانه يبحث عن نتائج يراها محرك البحث ذات صله بالموقع المبحوث عنه

6)      ” ~ “

للحصول علي مرادفات للكلمه فيبحث على الكلمه ومعناها مثلا ~ Car  فانه يبحث عنها والكلمات المرادفه لها ككلمه Automobile

7)      ” define  “

للحصول علي تعريف الكلمه التي تليها  مثلا  Define: wifi فانه يبحث عن تعريف Wifi

8)      “author  “

للحصول علي معلومات عن صفحه قام بتأليفها مؤلف معين مثلا Author: Alan Dix فانها تبحث عن معلومات عن الصفحات والكتب التي قام بتاليفها Alan Dix فانه يظهر كتاب

Human-computer interaction الذي قام بتأليفه Alan Dix

9)      ” cache   “

تحدد مواضع ذكر الكلمه التي تليها بموقع ما وبلون  مختلف Cache: www.php.net include

Include هي الكلمة المطلوب إيجادها داخل أحد صفحات موقع  الــ Php  فتأتي النتيجة مشارا فيها وبلون مختلف لكلمة  Include داخل الصفحة المتواجدة به

10)  “Intitle  “

للبحث عن كلمه داخل ” URL ” الخاص بالصفحه مثلا “Intitle: Php” ان يبحث عن المواقع التي تحوي الكلمة “Php”

www.php.net/

www. en.wikipedia.org/wiki/PHP

www.w3schools.com/php

  وهكذا.

11)  ” allintitle  “

للبحث عن عده كلمات داخل  ال” URL ”  الخاص بالصفحه بدلا من كلمه واحده Allintitle: Php develop أن يبحث عن المواقع التي تحوي الكلمة ” Php ” بالاضافه الي ” develop”

www.zend.com/en/solutions/develop-in-php/

http://www.developphp.com/list_php.php

 وهكذا .

12)  ” info  “

للحصول عن معلومات عن  الموقع الذي يتم البحث عنه Info: www.php.net فانه ييبحث عن معلومات عن موقع www.php.net .

محركات البحث العربيه

هناك العديد من محركات البحث العربيه ،  ولكن معظمها يتعتمد علي المحركات الاجنبيه والمحركات التي تعتمد علي نفسها في البحث والفهرسه ليست علي درجه قويه من البحث لانها تقلد المحركات الاخرى حيث انها تطابق الكلمه العربية التي نبحث عنها بالكلمات المخزنة في محرك البحث وهذا يتسبب في حجب الكثير من المعلومات التي تتوافق مع الكلمات المراد البحث عنها وهذا عيب كبير جدا لان اللغه العربيه لغه صرفيه واللغه الانجليزيه لغه لصقيه .

لكن ظهرت بعض المحركات العربيه التي تعتمد علي تقنيات متقدمة لمعالجه اللغه العربيه ومن أشهرها :

1)      Arab vista

2)      و الادريسي الذي اصدرته شركه صخر

وتتميز هذه المحركات بامكانيات مثل البحث باللواصق والبحث بالمشتقات .

وقد تميز محرك الادريسي بالبحث بالمرادفات والبحث بالمعاني والترجمات للبحث عن نصوص انجليزيه عن طريق كلمه عربيه يجهل المستخدم معناها .

مساعدات في البحث

كل هذه  كلمات مساعده في البحث يمكن لو اردت البحث عن موضوع معين وانت تعلم انها موجودة  في موقع معين لكنك غير قادر على الوصول اليها ،قم بكتابة اسم الموضوع الذي تريد واكتب الى جانبه  اسم الموقع الذي تتوقع الحصول على موضوعك فيه ، كما يمكن البحث عن طريق اضافة اسماء السيرفرات المخصصة لحفظ الملفات على الشبكة العنكبوتية مثل :

Mediafire, Rapidshare, 4shared

وغيرهم الكثير.

 لكن في البحث علي السيرفر يجب معرفة اسم الملف المرفوع  كاملا او اول جزء من الاسم علي الاقل .

بعد كتابة اسم الملف اكتب الى  جانبه اسم السيرفر الذي تتوقع انه موجود عليه فمثلا معظم الكتب ترفع علي 4shared

و Mediafire  ولكن الاكثر يكون علي 4shared ،اذا  لو اردت البحث عن كتاب ولم تعثر عليه ، ابحث عنه في السيرفر مثل :

Mybook.pdf 4shared

لانه هكذا سيبحث  على الكتاب Mybook ، بامتداد Pdf ،على موقع او سيرفر  4shared ، ان لم تعثر عليه حاول البحث في مواقع او سيرفرات اخرى .

كم يمكنك البحث عن ملف بامتداد معين،  مثلا:    File.rar 4shared ، هذا سيجعل محرك البحث يبحث عن الملف المسمى file  بامتداد  rar ،علي موقع او سيرفر  4shared ،وهنا نستخدم النوع الثاني من انواع محركات البحث وهو  Search engine لانه يبحث عن كل كلمه في المواقع المخزن عليها الملف .

اهم امر  في البحث علي الانترنت اختيار الكلمات المناسبه للبحث بحيث لا تكون عامه  لان هذا يجعل محرك البحث يأتي بنتائج كثيرة جدا ومعظمهم غير مهم او غير متعلق بالموضوع  او ان تكون الكلمة المراد البحث عنها كلمة غامضه بحيث ان لا يكون ليها اكثر من معني .

من الامور المهمة ايضا ان يمتلك الشخص قوة ملاحظه بحيث لو بحث عن موضوع معين وظهر في النتائج نتائج متكررة لا يقوم بفتح كل النتائج المكررة  ،مثلا لو بحثت عن كتاب لتعليم  Php وظهرلي اكتر من نتيجه منهم :

كتاب تعليم” Php & MySQL “من الالف الى الياء وبالعرررررررررربي

و

كتاب تعليم”Php & MySQL” من الالف الى الياء وبالعرررررررررربي

فمن المؤكد ان النتيجتين مكررتين .

في حالة عدم معرفة افضل كلمة توصلك للنتيجة المثلى ، قم بالبحث عن كلمة قريبة منها وهكذ الى ان تصل الى النتيجة المطلوبة .

كل دي مهارات المفروض اللي عايز يبحث علي النت يكون عارفها او يكون عارف معظمهما واهمهم ان يكون الباحث عنده صبر لانه لو يعرف كل الحاجات اللي فاتت بس معندوش صبر علي البحث يبقي مش هيعرف يبحث كويس لان في حاجات ممكن ماتكونش منتشرة كثيرة علي النت او تكون اتحذفت بسبب حقوق الملكيه يعني يكون عنده استعداد يقعد بالساعات يبحث ومايزهقش بسرعه.

 
1 Comment

Posted by on March 27, 2012 in Featured

 

Tags: , , ,

your first step with ZK

your first step with ZK

peace be upon all

 

ZK in a glance

ZK is a highly productive open source Java web framework for building amazing enterprise web and mobile applications. Its unique Sever+client Fusion architecture enable developers to write applications using pure Java, design UI in XML while having optional control to the client side. ZK’s true event-driven model reflects desktop programming shielding developers from JavaScript programming, cross-browser issues, complex Ajax communication and the danger of exposing business logic.

ZK  also have alot of other products along with the framework

ZK  : web framework 

ZK mobile : extends the reach of Web applications to billions mobile devices supporting Java Mobile and Android.

ZK studio and ZTL tools :  visual IDE plugin for Eclipse and testing suite

ZK spreadsheet , ZK calendar : ajax application component

ZK Pivottable : Ajax web component for summarizing raw data

 

Why ZK ?

1- ZK is the leading enterprise Ajax framework and the easiest way to build great modern Java web applications.

2- Enterprise. Trusted. Established.

3- End to End Productivity Boost

4- Industry Leading Architecture

5- Transparent Ajax with Jav6- Rich Modular UI

7-  Fortune 500 Approved Security

 

Getting Started !

  • ** installation
    – u can  download and run on any IDE , but assume using netbeans , u need to download the REM plugin from here
    – start netbeans , on main menu bar select Tools >> plugins
    – click on downloaded tab >> add plugin , then navigate to where REM is downloaded and select it
    –  click install
  • ** create Netbeans demo ZK project
    – new project >> samples >> java web >> zk509 Demo application >> write the project name and click Finish
    – this is a demo project to explore the different component of the framework
    – click run and Enjoy 😀

>> <<  To can create a new project and use the palette to explore the different tools

>><<  more on   http://www.zkoss.org/

 

 
Leave a comment

Posted by on March 27, 2012 in Back-end, Featured, Programming

 

Tags:

Java Programming: Let's master (8/i)

Java Programming: Let's master (8/i)

Chapter 8 – Strings & Text I-O

8.1. Introduction

النهاردة معادنا في شابتر سهل أول وممتع ومهم،، هنتكلم فيه عن كل ما يخص الـ Strings والـCharacters  وهنغطي كمان جزء الـ Text I/O أو ما يسمى بقراءة وإدخال النصوص إن صحّت الترجمة، حيث لا أميل لترجمة المصطلحات دي بالعربية.. المهم

في البداية طبعا عاوزين نعرف يعني ايه string ؟؟

هو عبارة عن تسلسل من الحروف. في معظم لغات البرمجة بيعامل الـ string معاملة الarray of chars ولكن في الجافا بنعامل الـ string معاملة ال object . فيه عندنا تلات كلاسات بيتعاملوا مع الـ string وهما :

String, StringBuilder, and StringBuffer

لو التعامل هيبقي فقط لتخزين والتعامل مع الـ string في الحالة دي كلاس الـ String اختيار موفق ولكنه مش بيسمح بالتعديل علي الـ string . في حالة استخدامنا للكلاسين التانيين StringBuilder & StringBuffer نقدر نعمل strings ونقدر نعدلهم والتعامل هيبقي مرن .

8.2. The String Class

كلاس java.lang.String بيكون string من تسلسل مجموعة من الحروف. احنا اتعاملنا قبل كده مع المتغير اللي من نوع String زي مثلا ميثود println(String s) والـ compiler بياخد الـ string variable وبيقوم محوله لـ string object وبيتعامل معاه علي الأساس ده.

كلاس الـ String بيحتوي علي 11 constructor واكتر من اربعين ميثود بيعملوا وظائف متعددة زي مقارنة محتويات الـ strings والبحث عن string معين داخل string ووالتعامل مع الناتج الجديد وتحويل الحروف من حالة ال capital لحالة الـ small او من الـ uppercase للـ lowercase .

8.2.1. Constructing a String

طيب ازاي اعمل   String object؟

عندنا اربع طرق كلهم بيعملوا string جديد

1-    اول طريقة هتعامل مع الـ string علي انه object وبخلقه زي اي object :

2-    تاني طريقة اني اديله الـ stringLiteral علطول :

3-    تالت طريقة اني اعامل الـ string عادي كأنه متغير عادي (ودي الطريقة الشائعة):

4-    اخر طريقة اني اعرفه علي انه array زي كده

ملحوظة ::

فيه فرق بين String variable , String object , String value ولكن لأن الفروق بسيطة جدا فحاليا هنتعامل معاهم علي انهم واحد ونتجاهل الفروق دي مؤقتا وهنستخدم كلمة string بدل منهم.

8.2.2. Immutable Strings and Interned Strings

كلمة immutable string معناها انه لا يمكن تغييره او تعديله مثلا لو كتبنا الكود ده ياتري قيمة الString هتتغير؟؟

الإجابة هي لأ القيمة مش هتتغير. الجملة الأولي هتخلق String object وتحط فيه قيمة “java” وتدي الـ Reference بتاعه للمتغير s وفي الجملة التانية هييجي يحط القيمة الجديدة في نفس المتغير مش هينفع زي مااحنا شايفين:

لأن الـ String قيمته مش بتتغير الجافا بتوفر طريقة لتوفير استهلاك الـ memory  عن طريق استخدام ميثود اسمها intern() زي كده :

النتيجة هتبقي كده:

هنلاقي ان s, s2, s3 كلهم عبارة عن interned string فكلهم ساووا بعض لكن s1 لما قارناها بـ s طلعت مش بتساويها لأنهم اتنين objects مختلفين مع انهم بيحملوا نفس القيمة.

8.2.3. String Comparisons

احيانا بنحتاج نقارن قيمة اتنين string ببعض بإستخدام (==) :

ولكن الطريق دي بتشوف هل string1 و string2 بيشاوروا علي نفس الـ object ولا لأ. علشان نقارن بين القيم اللي بداخل string1 و string2 بنستخدم ميثود اسمها equals زي كده

ملحوظة::

مش معني ان اتنين strings بيحملوا نفس القيمة انهم يبقوا بيشوروا علي نفس الـ object ممكن يبقوا بيحملوا نفس القيمة ولكن كل واحد بيحمل reference لـ object مختلف عن التاني زي كده

في اول جملة هيبقي الناتج false لأنهم بيحملوا reference لأتنين object مختلفين ولكن في الجملة التانية هترجع true لأنهم بيحملوا فعلا نفس القيمة وهي “Welcome to Java” .

فيه برده ميثود اسمها compareTo ودي بتقارن بين اتنين string وبتبقي زي كده :

الميثود دي بترجع 0 لو s1 بيساوي s2 وبترجع قيمة اقل من 0 لو s1 اقل من s2 وبترجع قيمة اكبر من 0 لو s1 اكبر من s2  .

ونلاحظ برده ان نتيجة المقارنة بتعتمد علي ترتيب الحروف الأبجدي نفسه يعني بفرض ان عندنا s1 فيه “abc” وعندنا s2 فيه “abg” نتيجة المقارنة هتبقي -4 . هنيجي نقارن اول حرف من s1 واول حرف من s2 اللي هو “a” هيطلع متساويين فيه وبالمثل في التاني ولكن في الحرف التالت هنلاحظ  ان في ترتيب الحروف ال”c” بتقل عن ال”g” بـ 4 حروف فالنتيجة هتطلع -4 .

تنبيه:: يرجي عدم استخدام علامات المقارنة العادية (<,>,<=,>=) في حالة الـ String ولكن يتم استخدام ميثود compareTo فقط.

برده فيه ميثودس كتير ممكن نحتاجها زي equalsIgnoreCase بتقارن ولكن بتتجاهل حالة الحروف من حيث انهم uppercase او lowercase وميثود regionMatches بتقارن جزء فقط من الـ string وليس الstring كله وفيه برده ميثود str.startsWith(prefix) بتختبر هل الـ string ده بيبتدي بالقيمة الفلانية ولا لأ وميثود str.endsWith(suffix) بتختبر هل الـ string ده بينتهي بالقيمة الفلانية ولا لأ.

8.2.4. String Length and Retrieving Individual Characters

من الممكن معرفة طول الـ string عن طريق استخدام ميثود length() زي message.length() ودي بترجع طول الـ string .

ميثود تانية s.charAt(index) بترجع حرف معين من الـ String والـ index بيكون رقم بين الـ 0 وبين s.length() – 1 يعني message.charAt(0) هترجع “w” زي كده :

تنبيه :: لازم نراعي ان الـ index بيبقي اقصي قيمة ليه هي s.length()-1 وده لأن الـ index في حالة الـ string بيبدأ من 0 ومش من 1ولو كتبناها s.length() بس هيطلع StringIndexOutOfBoundsException  .

ملحوظة :: ميثود length موجودة اصلا في الـ array  وبنستخدمها هنا لنفس السبب ولكن هنا بنقول s.length()  وبترجع عدد الحروف في الـ string وفي حالة الـ array بنقول a.length وبترجع عدد العناصر في الـ array.

8.2.5. String Concatenation

ممكن نستخدم ميثود concat لدمج اتنين string زي كده:

وممكن برده الطريقة دي:

String myString = message + ” and ” + “HTML” ;

ونقدر نستخدم + لنفس الغرض لدمج اكتر من string مع بعض والأرقام كمان وفي حالة الأرقام بيتحول الرقم لـ string وبعد كده يندمج مع الـ string الأصلي ولازم نراعي ان في المعادلة دي لازم اي طرف يكون نوعه string وإلا الدمج مش هيتم.

8.2.6. Obtaining Substrings

احنا استخدمنا ميثود charAt() لإسترجاع حرف من string ولكن لو عاوزين نرجع اكتر من حرف بنستخدم ميثود substring وبيبقي ليها شكلين :

–         public String substring(int beginIndex, int endIndex

بترجع string جديد عبارة عن جزء مقتطع من الـ string الأصلي وبحددله بداية التقطيع beginIndex ونهايته endIndex زي المثال ده :

–         التقطيع والنهاية بتبقي لنهاية الـ string زي كده :


 

والنتيجة هتكون كده:    “Welcome to HTML”

8.2.7. String Conversions

صحيح ان بمجرد عمل الـ string مش بقدر اعدل في قيمته لكن اقدر اعمل string جديد بإستخدام toLowerCase, toUpperCase, trim, and replace كلهم بيرجعوا String جديد  :

–         toLowerCase, toUpperCase بيرجعوا String جديد بتتبدل فيه حروف الأصلي سواء من الupper لل lower او العكس.

–         trim بتشيل اي مساحات بين الحروف .

–         replace بتبدل اي حرف في كل مرة وجوده بحرف تاني

8.2.8. Finding a Character or a Substring in a String

ممكن نستخدم ميثودس زي indexOf  و  lastIndexOfللبحث عن حرف او مجموعة حروف بداخل اي string .فيه عندنا اربع صور لميثود indexOf() وميثود lastIndexOf():

بترجع الـ index بتاع الحرف ch لو ظهر مرة واحدة بس والindex بتاع اخر ظهور للحرف في حالة تكراره وبترجع -1 في حالة عدم وجود الحرف نهائي وبنستخدمها كده مثلا indexOf(‘a’) .

بترجع الـ index بتاع الحرف من اول الـ fromIndex

بترجع الـ index بتاع اول حرف في str في حالة وجوده مرة واحدة فقط واخر index لأول حرف في حالة تكرار الstr كله وبيرجع -1 في حالة عدم وجود Str
/p>

بترجع الـ index بتاع اول حرف في str من اول fromIndex .

امثلة :

8.2.9. Conversion Between Strings and Arrays

الـ string  مش array ولكن ممكن احوله لـ array والعكس صحيح. علشان احول من String لـ array بنستخدم ميثود toCharArray زي كده :

هيبقي عندنا chars[0]=”J” , chars[1]=”a”, chars[2]=”v”, chars[3]=”a”

لو عاوزين نحول من array لـ string هنستخدم الـ constructor ده String(char[]) :

أو

8.2.10. Converting Characters and Numeric Values to Strings

علشان نقدر نحول اي قيمة عددية لـ string بنستخدم الميثود المناسبة لنوع القيمة العددية يعني مثلا Double.parseDouble(str) بنستخدمها في حالة المتغير اللي من نوع Double وميثود Integer.parseInt(str) في حالة المتغير اللي من نوع int .

8.2.11. Example: Checking Palindromes

مثال عندنا ده برنامج بيختبر اي string هل هو palindrome ولا لأ؟

الـ string بيكون palindrome لو اتقري من اليمين زي الشمال زي مثلا “mom” او “dad” او “noon”

لو جينا نفكر في فكرة للبرنامج اول حاجة عمل متغيرين low و high عبارة عن index اول واخر حرف في الـ string ومبدئيا low قيمته 0 والـ high قيمته s.length()-1 وبيقارن الـ low مع الـ high لو هما نفس الحرف بيزود الـ low بواحد ويقلل الـ high بواحد ويقارنهم تاني وهكذا لحد اخر الString وبنطلع من اللووب لو الـlow بقي اكبر من الـ high او في حالة ان الحرفين مختلفين.

احنا لحد هنا نكون اتعرفنا على كلاس String و StringBuilder وعرفنا أهم عمليات المعالجة اللي ممكن تتم على String أو charArray

في النهاية عايز أوضح ان الجافا بتتعامل مع الString على انه أوبجكت وبتعتبره reference dataType ..

ومعادنا المرة الجاية ان شاء الله نتكلم عن كلاس Character والجزء الخاص بـ Text I/O..

It’s totally free to share

Thanks, CATReloaded

Thanks, CATaZine

Om4rezz

 
Leave a comment

Posted by on March 26, 2012 in Featured, Programming, Software

 

Tags: , , ,

Introduction to Cassandra

Introduction to Cassandra

Welcome back ! to NoSQL DB  most of Software engineers know what is MongoDB – CouchDB

What is Cassandra ?

Cassandra is Apache project working in large platforms such as facebook

you can download it from here

1- Edit Configuration file from here

conf/cassandra.yaml

The distribution’s sample configuration conf/cassandra.yaml contains reasonable defaults for single node operation, but you will need to make sure that the paths exist fordata_file_directoriescommitlog_directory, and saved_caches_directory.

Verify storage_port and rpc_port are not conflict with other service on your computer. By default, Cassandra uses 7000 for storage_port, and 9160 for rpc_port. The storage_port must be identical between Cassandra nodes in a cluster. Cassandra client applications will use rpc_port to connect to Cassandra.

It will be a good idea to change cluster_name to avoid unnecessary conflict with existing clusters.

initial_token. You can leave it blank, but I recommend you to set it to 0 if you are configuring your first node.

 2- Edit log4j-server.properties
# Edit the next line to point to your logs directory
log4j.appender.R.File=/var/log/cassandra/system.log

 3- Edit cassandra-env.sh

Cassandra has JMX (Java Management Extensions) interface, and the JMX_PORT is defined in conf/cassandra-env.sh. Edit following line if you need.

# Specifies the default port over which Cassandra will be available for
# JMX connections.
JMX_PORT="7199"

By default, Cassandra will allocate memory based on physical memory your system has. For example it will allocate 1GB heap on 2GB system, and 2GB heap on 8GB system. If you want to specify Cassandra heap size, remove leading pound sign(#) on the following lines and specify memory size for them.

#MAX_HEAP_SIZE="4G"
#HEAP_NEWSIZE="800M"

If you are not familiar with Java GC, 1/4 of MAX_HEAP_SIZE may be a good start point for HEAP_NEWSIZE.

Cassandra will need more than few GB heap for production use, but you can run it with smaller footprint for test drive. If you want to assign 128MB as max, edit the lines as following.

MAX_HEAP_SIZE="128M"
HEAP_NEWSIZE="32M"
 Start up cassandra

And now for the moment of truth, start up Cassandra by invoking bin/cassandra -f from the command line1. The service should start in the foreground and log gratuitously to standard-out. Assuming you don’t see messages with scary words like “error”, or “fatal”, or anything that looks like a Java stack trace, then chances are you’ve succeeded.

Press “Control-C” to stop Cassandra.

If you start up Cassandra without “-f” option, it will run in background, so you need to kill the process to stop.

 

bin/cassandra-cli is a interactive command line interface for Cassandra. You can define schema, store and fetch data with the tool. Run following command to connect to your Cassandra instance.

bin/cassandra-cli -h host -p rpc_port

example:
% bin/cassandra-cli -h 127.0.0.1 -p 9160

 

 
Leave a comment

Posted by on March 25, 2012 in Featured, New Technology, Programming